Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033 #ifndef BESDefinitionStorageVolatile_h_
00034 #define BESDefinitionStorageVolatile_h_ 1
00035
00036 #include <string>
00037 #include <map>
00038
00039 using std::string ;
00040 using std::map ;
00041
00042 #include "BESDefinitionStorage.h"
00043
00044 class BESDefine ;
00045 class BESInfo ;
00046
00058 class BESDefinitionStorageVolatile : public BESDefinitionStorage
00059 {
00060 private:
00061 map< string, BESDefine * > _def_list ;
00062 typedef map< string, BESDefine * >::const_iterator Define_citer ;
00063 typedef map< string, BESDefine * >::iterator Define_iter ;
00064 public:
00070 BESDefinitionStorageVolatile( const string &name )
00071 : BESDefinitionStorage( name ) {}
00072
00073 virtual ~BESDefinitionStorageVolatile() ;
00074
00075 virtual BESDefine * look_for( const string &def_name ) ;
00076
00077 virtual bool add_definition( const string &def_name,
00078 BESDefine *d ) ;
00079
00080 virtual bool del_definition( const string &def_name ) ;
00081 virtual bool del_definitions( ) ;
00082
00083 virtual void show_definitions( BESInfo &info ) ;
00084
00085 virtual void dump( ostream &strm ) const ;
00086 };
00087
00088 #endif // BESDefinitionStorageVolatile_h_
00089