00001 #ifndef DTDataBuffer_H 00002 #define DTDataBuffer_H 00003 00014 //---------------------- 00015 // Base Class Headers -- 00016 //---------------------- 00017 00018 00019 //------------------------------------ 00020 // Collaborating Class Declarations -- 00021 //------------------------------------ 00022 #include "CondFormats/DTObjects/interface/DTBufferTree.h" 00023 00024 //--------------- 00025 // C++ Headers -- 00026 //--------------- 00027 #include <string> 00028 #include <map> 00029 00030 // --------------------- 00031 // -- Class Interface -- 00032 // --------------------- 00033 00034 template <class Key, class Content> 00035 class DTDataBuffer { 00036 00037 public: 00038 00041 DTDataBuffer(); 00042 00045 ~DTDataBuffer(); 00046 00049 00050 static DTBufferTree<Key,Content>* openBuffer( const std::string& name ); 00051 static DTBufferTree<Key,Content>* findBuffer( const std::string& name ); 00052 static void dropBuffer( const std::string& name ); 00053 00054 private: 00055 00056 static std::map<std::string,DTBufferTree<Key,Content>*> bufferMap; 00057 00058 }; 00059 00060 #include "DTDataBuffer.icc" 00061 00062 #endif // DTDataBuffer_H 00063