|  | ATLAS Offline Software
    | 
 
 
 
Go to the documentation of this file.
   10 #include "GaudiKernel/MsgStream.h" 
   18         std::string inner_region(region, 1, region.size() - 2);
 
   27         std::istringstream region_stream(inner_region);
 
   29         for (
int i = 0; 
i < 4; 
i++) {
 
   30             getline(region_stream, 
item, 
',');
 
   31             if (region_stream.fail()) 
break;
 
   34             std::istringstream item_stream(
item);
 
   35             while (!item_stream.eof()) {
 
   37                 if (item2.size() == 0) 
continue;
 
   50                         if (m_ml < 0 || m_ml > 2) 
return false;
 
   73             if (!
match) 
return false;
 
   84             if (!
match) 
return false;
 
   94         if (substr.size() > 3) {
 
   96             log << MSG::WARNING << 
"Syntax Error '" << substr << 
"'" << 
endmsg;
 
   99         std::string name_template(
"???");
 
  100         for (
unsigned int i = 0; 
i < substr.size(); 
i++) { name_template[
i] = substr[
i]; }
 
  104         for (
int i = 1; 
true; 
i++) {
 
  108             for (
int j = 0; j < 3; j++) {
 
  109                 if (name_template[j] == 
'?') 
continue;
 
  120         std::string begin_range[2];
 
  122         bool begin_number(
true);
 
  123         for (
unsigned int i = 0; 
i < substr.size(); 
i++) {
 
  135                     begin_range[n_substrings] += substr[
i];
 
  136                     begin_number = 
false;
 
  140                         begin_range[n_substrings] += substr[
i];
 
  141                         begin_number = 
false;
 
  144                     if (n_substrings > 0) {
 
  146                         log << MSG::WARNING << 
"Surplus '-' in " << substr << 
endmsg;
 
  154                     log << MSG::WARNING << 
"Syntax error in " << substr << 
endmsg;
 
  158         if (begin_range[0].
size() == 0) { 
return true; }
 
  159         target_start.push_back(
atoi(begin_range[0].c_str()));
 
  160         if (n_substrings == 0)
 
  161             target_end.push_back(
atoi(begin_range[0].c_str()));
 
  163             target_end.push_back(
atoi(begin_range[1].c_str()));
 
  
bool Result(const MuonFixedId ®ion) const
return true if in region
void Print(std::ostream &os) const
print region
Scalar phi() const
phi method
singleton-like access to IMessageSvc via open function and helper
std::vector< int > m_phi_start
Scalar eta() const
pseudorapidity method
bool Initialize(const std::string ®ion)
Initialize functions.
IMessageSvc * getMessageSvc(bool quiet=false)
std::vector< int > m_eta_start
std::vector< int > m_eta_end
CscCalcPed - algorithm that finds the Cathode Strip Chamber pedestals from an RDO.
bool process_int_range(std::string &range, std::vector< int > &target_start, std::vector< int > &target_end)
process a numerical id
bool process_station_name(std::string &name)
process a astation name string
std::vector< int > m_phi_end
std::set< int > m_stations
regions
int atoi(std::string_view str)
Helper functions to unpack numbers decoded in string into integers and doubles The strings are requir...
string station_name
Simple script to generate a BIS78 cabling map as used for the Monte Carlo processing.
bool match(std::string s1, std::string s2)
match the individual directories of two strings