| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

Site Namespace Reference

Defines an enum for a specific site: DayaBay, LingAo, Mid, or Far. More...


Enumerations

enum  Site_t {
  kUnknown = 0x00, kDayaBay = 0x01, kLingAo = 0x02, kFar = 0x04,
  kMid = 0x08, kAberdeen = 0x10, kSAB = 0x20, kPMTBenchTest = 0x40,
  kAll = kDayaBay | kLingAo | kFar | kMid | kAberdeen | kSAB | kPMTBenchTest
}

Functions

const char * AsString (Site_t site)
const char * StringFromMask (int mask)
Site_t FromString (const char *str)
int MaskFromString (const char *)
int FullMask ()

Detailed Description

Defines an enum for a specific site: DayaBay, LingAo, Mid, or Far.

Author:
Nathaniel Tagg
Version:
Revision
1.7
Date:
Date
2007/05/09 20:47:36
Created 2006.10.12


Enumeration Type Documentation

enum Site::Site_t

Enumerator:
kUnknown 
kDayaBay 
kLingAo 
kFar 
kMid 
kAberdeen 
kSAB 
kPMTBenchTest 
kAll 

Definition at line 18 of file Site.h.

00018                 {
00019         kUnknown      = 0x00, 
00020         kDayaBay      = 0x01,
00021         kLingAo       = 0x02,
00022         kFar          = 0x04,
00023         kMid          = 0x08,
00024         kAberdeen     = 0x10,
00025         kSAB          = 0x20,
00026         kPMTBenchTest = 0x40,
00027         kAll          = kDayaBay | kLingAo | kFar | kMid | kAberdeen | kSAB | kPMTBenchTest
00028     };


Function Documentation

const char * Site::AsString ( Site_t  site  ) 

Definition at line 8 of file Site.cc.

00009 {
00010   switch(site) {
00011   case kUnknown:      return "Unknown"; break;
00012   case kDayaBay:      return "DayaBay"; break;
00013   case kLingAo:       return "LingAo"; break;
00014   case kMid:          return "Mid"; break;
00015   case kFar:          return "Far"; break;
00016   case kAberdeen:     return "Aberdeen"; break;
00017   case kSAB:          return "SAB"; break;
00018   case kPMTBenchTest: return "PMTBenchTest"; break;
00019   case kAll:          return "All"; break;
00020   default:            return "?Unknown?"; break;
00021   }
00022 }

const char * Site::StringFromMask ( int  mask  ) 

Definition at line 24 of file Site.cc.

00025 {
00026   if(mask==0) return Site::AsString(Site::kUnknown);
00027   static std::string out;
00028   out="";
00029   int nout = 0;
00030 
00031   for (int i=0; i<32; i++) {
00032      Site::Site_t asite = (Site::Site_t)(1<<i);
00033      if (mask & asite) {
00034        if(nout > 0) out += ",";
00035        out += Site::AsString(asite);
00036        nout++;
00037      }
00038   }
00039   return out.c_str();
00040 }

Site_t Site::FromString ( const char *  str  ) 

Definition at line 42 of file Site.cc.

00043 {
00044   if(strncasecmp("Unknown",str,7)==0) return kUnknown;
00045   if(strncasecmp("DayaBay",str,7)==0) return kDayaBay;
00046   if(strncasecmp("LingAo",str,6)==0) return kLingAo;
00047   if(strncasecmp("Mid",str,3)==0) return kMid;
00048   if(strncasecmp("Far",str,3)==0) return kFar;
00049   if(strncasecmp("Aberdeen",str,8)==0) return kAberdeen;
00050   if(strncasecmp("SAB",str,3)==0) return kSAB;
00051   if(strncasecmp("PMTBenchTest",str,12)==0) return kPMTBenchTest;
00052   if(strncasecmp("All",str,3)==0) return kAll;
00053   return kUnknown;
00054 }

int Site::MaskFromString ( const char *  str  ) 

Definition at line 56 of file Site.cc.

00057 {
00058   assert(0); // Not implimented!
00059 }

int Site::FullMask (  ) 

Definition at line 61 of file Site.cc.

00062 {
00063   return kDayaBay+kLingAo+kMid+kFar+kAberdeen+kSAB+kPMTBenchTest;
00064 }

| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:14:49 2011 for Conventions by doxygen 1.4.7