50 std::map< unsigned int, SG::auxid_set_t >
53 static const std::string hyphenStr{
"-"};
54 static const std::string asteriskStr{
"*"};
57 std::map< unsigned int, SG::auxid_set_t > result;
63 const unsigned int nmantissa = val.first;
64 const std::set< std::string> &
names = val.second;
76 bool sub =
false,
add =
false;
77 auto name_itr =
names.begin();
78 auto name_end =
names.end();
79 for( ; name_itr != name_end; ++name_itr ) {
80 if( ( *name_itr )[ 0 ] ==
'-' ) {
89 std::cerr <<
"xAOD::AuxCompression ERROR Mixing + and - options for "
90 <<
"compression attributes" << std::endl;
102 if( cType ==
"float" || cType ==
"std::vector<float>" ) {
103 fauxids.insert( auxid );
108 if(
names.find(asteriskStr) !=
names.end() ) {
109 auxids = std::move(fauxids);
114 name_itr =
names.begin();
115 name_end =
names.end();
116 for( ; name_itr != name_end; ++name_itr ) {
121 if( fauxids.test( auxid ) ) {
122 auxids.insert( auxid );
135 auxids.erase( auxid );
141 result[ nmantissa ] = std::move(auxids);
Handle mappings between names and auxid_t.
SG::auxid_t findAuxID(const std::string &name, const std::string &clsname="") const
Look up a name -> auxid_t mapping.
std::string getName(SG::auxid_t auxid) const
Return the name of an aux data item.
std::string getTypeName(SG::auxid_t auxid) const
Return the type name of an aux data item.
static AuxTypeRegistry & instance()
Return the singleton registry instance.
A set of aux data identifiers.
AuxCompression()
Default constructor.
virtual std::map< unsigned int, SG::auxid_set_t > getCompressedAuxIDs(const SG::auxid_set_t &fullset) const
Return those variables that are selected to be compressed per compression setting.
virtual void setCompressedAuxIDs(const std::map< unsigned int, std::set< std::string > > &attributes)
Set which variables should be compressed per compression setting.
std::map< unsigned int, std::set< std::string > > m_compression_map
Properties following the variable selection convention.
bool add(const std::string &hname, TKey *tobj)
static const auxid_t null_auxid
To signal no aux data item.
size_t auxid_t
Identifier for a particular aux data item.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
static const EventInfo_v1::Accessor< std::vector< std::string > > names("streamTagNames")