Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

HardwareType.cxx

Go to the documentation of this file.
00001 #include "HardwareType.h"
00002 #include <string.h>
00003 
00004 typedef struct HardwareString_s {
00005   HardwareType::Hardware_t type;
00006   const char*              string;
00007 } HardwareString;
00008 
00009 static HardwareString strings[] = {
00010   { HardwareType::kCrate,    "Crate"    },
00011   { HardwareType::kChannel,  "Channel"  },
00012   { HardwareType::kVarc,     "VARC"  },
00013   { HardwareType::kVmm,      "VMM"  },
00014   { HardwareType::kVfb,      "Vfb"  },
00015   { HardwareType::kVaChip,   "VaChip"  },
00016   { HardwareType::kMaster,   "MASTER"  },
00017   { HardwareType:: kMinder,  "MINDER"  },
00018   { HardwareType::kMenu,     "MENU"  },
00019   { HardwareType::kPmt,      "PMT"  },
00020   { HardwareType::kPmtBase,  "PMTBase"  },
00021   { HardwareType::kPixel,    "Pixel"  },
00022   { HardwareType::kPixelSpot,"PixelSpot"  },
00023   { HardwareType::kStripEnd, "StripEnd"  },
00024   { HardwareType::kStrip,    "Strip"  },
00025   { HardwareType::kPinDiode, "PinDiode"  },
00026   { HardwareType::kPlane, "PinDiode"  },
00027   { HardwareType::kSupermodule, "Supermodule"  },
00028   { HardwareType::kVetoShield, "Supermodule"  },
00029   { HardwareType::kSpectrometer,"Spectrometer"  },
00030   { HardwareType::kCalorimeter, "Calorimeter"  },
00031   { HardwareType::kDetector   , "Detector"  },
00032   { HardwareType::kUnknown,  "Unknown"  }
00033 };
00034 
00035 const char* HardwareType::AsString(Hardware_t t)
00036 {
00037   for(int i=0; strings[i].type!=kUnknown; i++) {
00038     if(strings[i].type==t) return strings[i].string;
00039   }
00040   return "Unknown";
00041 }
00042 
00043 
00044 HardwareType::Hardware_t HardwareType::FromString(const char* s)
00045 {
00046   for(int i=0; strings[i].type!=kUnknown; i++) {
00047     if(strncasecmp(s,strings[i].string,10)==0) return strings[i].type;
00048   }
00049   return kUnknown;
00050 }

Generated on Fri Mar 28 15:32:59 2008 for loon by  doxygen 1.3.9.1