Anaphe Home Page Reference Documentation

Main Page     Namespaces     Classes     Source Code    

INtupleManager.h

Go to the documentation of this file.
00001 
00009 #ifndef INTERFACES_INTUPLEMANAGER_H
00010 #define INTERFACES_INTUPLEMANAGER_H 1
00011 
00012 #include <iostream>
00013 
00014 #ifndef ANAPHE_NO_NAMESPACE
00015 namespace Anaphe {
00016 #endif
00017 
00018   class INtuple;
00019   class INtupleFactory;
00020   class INtupleParameters;
00021 
00022   class INtupleManager  
00023   { 
00024   public: // Interface
00025 
00026     // Construct/destruct/copy
00027     virtual ~INtupleManager            ()  { /* EMPTY */; }
00028     // Methods
00029     virtual void     setFactory        ( const INtupleFactory* aFactory )     = 0;
00030     virtual INtuple* retrieve          ( const unsigned int aIndex )          = 0;
00031     virtual void     erase             ( const unsigned int aIndex )          = 0;
00032 
00033 #ifdef AIDA_DONT_USE_STD
00034     virtual void     review            (      ostream& aOs =      cout )      = 0;
00035     virtual void     listNtuples       (      ostream& aOs =      cout )      = 0;
00036     virtual void     listNtuples       ( const char* aStoreName,
00037                                          ostream& aOs =      cout )      = 0;
00038 #else   // #ifdef AIDA_DONT_USE_STD
00039     virtual void     review            ( std::ostream& aOs = std::cout )      = 0;
00040     virtual void     listNtuples       ( std::ostream& aOs = std::cout )      = 0;
00041     virtual void     listNtuples       ( const char* aStoreName,
00042                                          std::ostream& aOs = std::cout )      = 0;
00043 #endif   // #ifdef AIDA_DONT_USE_STD
00044     // Ntuple creation
00045     virtual INtuple* findNtuple        ( const char* aName )                  = 0;
00046     // NtupleParameter creation
00047     virtual INtupleParameters* 
00048     createParameters  ()                                     = 0;
00049     // Store selection
00050     virtual void     selectStore       ( const char* aName )                  = 0;
00051   }; 
00052 
00053 #ifndef ANAPHE_NO_NAMESPACE
00054 }; // end namespace Anaphe
00055 #endif
00056 
00057 // for access from dynamic loading
00058 extern "C" {
00059   Anaphe::INtupleManager* createINtupleManager();
00060 }
00061 
00062 #endif // #ifndef INTERFACES_INTUPLEMANAGER_H


Anaphe documentation generated by Doxygen (www.doxygen.org)