namespace creaImageIO
{
- class __declspec(dllexport) SimpleView
+ class CREAIMAGEIO_EXPORT SimpleView
{
public:
/// Ctor
SimpleView(){}
-
///Dtor
~SimpleView(){}
-
/// read file(s) and return a vector of vtkImageData
- bool readFile( std::vector<std::string> i_filenames, std::vector< vtkImageData *> &i_img){
- bool bresult, bfinal = true;
- ImageReader *mReader = new ImageReader();
- std::vector<std::string>::iterator it = i_filenames.begin();
- for (; it != i_filenames.end(); it++)
- {
- bresult = mReader->CanRead((*it).c_str());
- if(bresult)
- {
- i_img.push_back(mReader->ReadImage((*it).c_str()));
- }
- else
- {
- bfinal = false;
- }
- }
- delete mReader;
- return bfinal;
- }
-
+ bool readFile( std::vector<std::string> i_filenames, // in information names
+ std::vector<std::string> i_attr, // in information attributes names
+ std::vector<std::map <std::string,std::string> > &i_imgAttr, // out information attributes names-values
+ std::vector< vtkImageData *> &i_img); // out information vtkImageData
/// read a directory and return a vector of vtkImageData
- bool readDirectory(const std::string i_pathname, std::vector< vtkImageData *> &i_imgs)
- {bool bresult = true;
- ImageReader *mReader = new ImageReader();
- std::vector<std::string> names;
- bresult = boost::filesystem::exists( i_pathname );
- if (bresult)
- {
- boost::filesystem::directory_iterator itr(i_pathname);
- boost::filesystem::directory_iterator end_itr;
- for(;itr != end_itr; ++itr)
- {
- if (!boost::filesystem::is_directory(itr->status()))
- {
- if( mReader->CanRead(itr->string()) )
- {
- names.push_back(itr->string());
- }
- }
- }
- std::sort (names.begin(), names.end()); // make sure names are in lexicographical order
- int lgr = names.size();
-
- for(int i=0; i<lgr; i++)
- {
- std::cout << names[i] << std::endl;
- i_imgs.push_back( mReader->ReadImage(names[i]) );
- }
- }
- return bresult;
- }
-
- };
-
-
-
-} // namespace creaImageIO
-#endif //__creaImageIOSimpleView_h_INCLUDED__
\ No newline at end of file
+ bool readDirectory( const std::string i_pathname, // in information names
+ std::vector<std::string> i_attr, // in information attributes names
+ std::vector<std::map <std::string , std::string> > &i_imgAttr, // out information attributes names-values
+ std::vector<vtkImageData *> &i_imgs); // out information vtkImageData
+ vtkImageData* getVolumeSelected( std::vector<vtkImageData*> images);
+ };
+}
+#endif