Go to the documentation of this file.00001 #ifndef CondFormats_L1TObjects_L1TriggerKeyList_h
00002 #define CondFormats_L1TObjects_L1TriggerKeyList_h
00003
00004
00005
00006
00007
00016
00017
00018
00019
00020
00021
00022
00023 #include <string>
00024 #include <map>
00025
00026
00027
00028
00029
00030 class L1TriggerKeyList
00031 {
00032
00033 public:
00034 L1TriggerKeyList();
00035 virtual ~L1TriggerKeyList();
00036
00037 typedef std::map< std::string, std::string > KeyToToken ;
00038 typedef std::map< std::string, KeyToToken > RecordToKeyToToken ;
00039
00040
00041
00042
00043 std::string token( const std::string& tscKey ) const ;
00044
00045
00046 std::string token( const std::string& recordName,
00047 const std::string& dataType,
00048 const std::string& key ) const ;
00049
00050
00051 std::string token( const std::string& recordType,
00052 const std::string& key ) const ;
00053
00054 const KeyToToken& tscKeyToTokenMap() const
00055 { return m_tscKeyToToken ; }
00056
00057 const RecordToKeyToToken& recordTypeToKeyToTokenMap() const
00058 { return m_recordKeyToken ; }
00059
00060
00061
00062
00063 std::string objectKey( const std::string& recordName,
00064 const std::string& payloadToken ) const ;
00065
00066
00067 std::string tscKey( const std::string& triggerKeyPayloadToken ) const ;
00068
00069
00070
00071
00072
00073
00074 bool addKey( const std::string& tscKey,
00075 const std::string& payloadToken,
00076 bool overwriteKey = false ) ;
00077
00078
00079 bool addKey( const std::string& recordType,
00080 const std::string& key,
00081 const std::string& payloadToken,
00082 bool overwriteKey = false ) ;
00083
00084 private:
00085
00086
00087
00088
00089
00090
00091
00092 KeyToToken m_tscKeyToToken ;
00093
00094
00095
00096 RecordToKeyToToken m_recordKeyToken ;
00097 };
00098
00099
00100 #endif