37 #ifndef AIMS_IO_AIMSGRAPHR_D_H 
   38 #define AIMS_IO_AIMSGRAPHR_D_H 
   59     loadGlobalObjects( std::map<std::string, aims::AimsGraphReader::Wrapper*> 
 
   61                        const std::map<std::string, 
 
   62                        std::map<std::string, std::string> > & globals, 
 
   63                        const std::string & basepath, 
 
   65                        std::map<std::string, GraphElementCode> > & objmap, 
 
   69     std::set<std::string>               readfilter;
 
   70     std::set<std::string>               excludefilter;
 
   81     typename T::const_iterator  io;
 
   82     io = data->find( index );
 
   84     if( io != data->end() )
 
   85       (*obj)[0] = io->second;
 
   87     return( 
new ObjectWrapper<T>( obj ) );
 
   91   template<
typename T> std::string 
 
   98   template<
typename T> std::string 
 
  105   template<
class T> 
bool  
  114     catch( std::exception & e )
 
  116       std::cerr << e.what() << std::endl;
 
  126     const std::map<std::string, std::map<std::string, ProcFunc> > & pcs 
 
  128     std::map<std::string, std::map<std::string, ProcFunc> >::const_iterator 
 
  130     if( ipcs == pcs.end() 
 
  131         || ipcs->second.find( f.
dataType() ) == ipcs->second.end() )
 
  134           &AimsGraphReader::defaultInsertFunction<T> );
 
  141       if( ipcs == pcs.end()
 
  143             == ipcs->second.end() )
 
  147           &AimsGraphReader::defaultInsertFunction<T> );
 
  155   template<
class T> 
bool 
  156   AimsGraphReader::defaultInsertFunction( 
Process & p, 
const std::string &, 
 
  159     PostProcessor       & pp = (PostProcessor &) p;
 
  160     const ElementInfo   & info = pp.elementInfo();
 
  161     T                   * obj = ((
const ObjectWrapper<T> *) info.object)->data;
 
Reader / postprocessor for graph reading.
static bool read(Process &, const std::string &, Finder &)
Aims object reading function - called by the Process mechanism.
Generic finder / checker for all data objects and file formats This will replace the old AimsFinder.
std::string dataType() const
std::string objectType() const
Link mechanism between the Finder and a process operating on arbitrary data types.
const std::map< std::string, std::map< std::string, ProcFunc > > & processTypes() const
Query registered process types.
void registerProcessType(const std::string &objType, const std::string &dataType, ProcFunc procFunc)
Registers the process to call on a given (object type, data type) couple (just fills the map)
Generic reader for every format of Aims object.
virtual bool read(T &obj, int border=0, const std::string *format=0, int frame=-1)
Finds the correct format and reads the object. if format is specified, this format is tried first,...
void adjustVoxelSize(T &, const T &)
utility function to copy voxel sizes from an object to another (if applicable)
The class for EcatSino data write operation.
virtual std::string objectType() const
virtual std::string dataType() const