13 log << MSG::DEBUG <<
"TrigCompositeCnv_p1::transToPers" <<
endmsg;
15 if ( (!trans) || (!pers) ) {
16 log << MSG::ERROR <<
"TrigCompositeCnv_p1::transToPers with trans or pers == 0" <<
endmsg;
22 for (
const std::pair<const std::string, TrigFeatureLink>& p :
26 pers->
m_clids.push_back( (uint32_t)p.second.clid() );
27 pers->
m_stypes.push_back( p.second.subTypeIndex() );
28 pers->
m_indexes.push_back( p.second.index() );
31 for (
const std::pair<const std::string, float>& p :
38 for (
const std::pair<const std::string, int>& p :
41 pers->
m_ints.push_back(p.second);
45 for (
const std::pair<const std::string, std::string>& p :
52 for (
const std::pair<
const std::string, std::vector<float> >& p :
59 for (
const std::pair<
const std::string, std::vector<int> >& p :
66 for (
const std::pair<
const std::string, std::vector<std::string> >& p :
67 trans->
allDetails<std::vector<std::string> >())
80 if (values.size() != keys.size() ) {
81 log << MSG::ERROR <<
"TrigCompositeCnv_p1::persToTrans: The number of values and names for do not match, problem with the stored data, while" << __PRETTY_FUNCTION__ <<
endmsg;
84 typename std::vector<T>::const_iterator vi = values.begin();
85 std::vector<std::string>::const_iterator ki = keys.begin();
87 for ( ; vi != values.end() and ki != keys.end(); ++ki, ++vi )
95 log << MSG::DEBUG <<
"TrigCompositeCnv_p1::persToTrans" <<
endmsg;
97 if ( (!trans) || (!pers) ) {
98 log << MSG::ERROR <<
"TrigCompositeCnv_p1::persToTrans with trans or pers == 0" <<
endmsg;
114 std::vector<std::string>::const_iterator labelIt = pers->
m_labels.begin();
115 std::vector<uint32_t>::const_iterator clidIt = pers->
m_clids.begin();
116 std::vector<uint16_t>::const_iterator colIt = pers->
m_stypes.begin();
117 std::vector<uint32_t>::const_iterator indexIt = pers->
m_indexes.begin();
120 for ( ; labelIt != pers->
m_labels.end(); ++clidIt, ++indexIt, ++colIt, ++labelIt ){
124 log << MSG::ERROR <<
"TrigCompositeCnv_p1::persToTrans: The number of TrigFeatureLink labels, CLIDs, types and indexes does not match, problem with the stored data" <<
endmsg;
void copyDetails2Trans(const std::vector< std::string > &keys, const std::vector< T > &values, TrigComposite *trans, MsgStream &log)
virtual void persToTrans(const TrigComposite_p1 *persObj, TrigComposite *transObj, MsgStream &log)
virtual void transToPers(const TrigComposite *transObj, TrigComposite_p1 *persObj, MsgStream &log)
std::vector< int > m_ints
std::vector< std::string > m_inames
std::vector< std::string > m_labels
std::vector< std::vector< int > > m_v_ints
std::vector< std::string > m_v_fnames
std::vector< std::vector< float > > m_v_floats
std::vector< std::string > m_v_snames
std::vector< std::string > m_snames
std::vector< std::string > m_strings
std::vector< std::vector< std::string > > m_v_strings
std::vector< uint16_t > m_stypes
std::vector< float > m_floats
std::vector< std::string > m_fnames
std::vector< uint32_t > m_clids
std::vector< std::string > m_v_inames
std::vector< uint32_t > m_indexes
The class is meant to store links (of type TrigFeatureLink) to trigger objects and arbitrary details ...
const std::map< std::string, T > & allDetails() const
return the map of all the details Notie that the non-const version is not provided because it would a...
void addDetail(const std::string &key, const T &value=T())
adds the value user the key, if they detail under that key already exists the exception is thrown If ...
const std::string & name() const
void addObject(const std::string &key, TrigFeatureLink link)
adds the link