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

ReleaseType.h File Reference

#include <string>
#include <utility>
#include "Rtypes.h"

Go to the source code of this file.

Namespaces

namespace  ReleaseType

Typedefs

typedef enum ReleaseType::EDataMCRelease DataMC_t
typedef enum ReleaseType::ERecoRelease Reco_t
typedef enum ReleaseType::ESubMCRelease SubMC_t
typedef enum ReleaseType::ESubRecoRelease SubReco_t
typedef enum ReleaseType::ETestFlag RecoTest_t
typedef Int_t Release_t
typedef enum ReleaseType::EFieldMaskRelease FieldMask_t

Enumerations

enum  EDataMCRelease {
  kData = 0x00, kAvocado = 0x01, kBeet = 0x02, kCarrot = 0x03,
  kDaikon = 0x04, kEggplant = 0x05, kFava = 0x06, kGarlic = 0x07,
  kHops = 0x08, kIceberg = 0x09, kJicama = 0x0A
}
enum  ERecoRelease {
  kAsh = 0x10, kBirch = 0x20, kCedar = 0x30, kDogwood = 0x40,
  kElm = 0x50, kFir = 0x60, kGinkgo = 0x70, kHickory = 0x80,
  kIvy = 0x90, kJuniper = 0xA0
}
enum  ESubMCRelease {
  k00 = 0x0000, k01 = 0x0100, k02 = 0x0200, k03 = 0x0300,
  k04 = 0x0400, k05 = 0x0500, k06 = 0x0600, k07 = 0x0700,
  k08 = 0x0800, k09 = 0x0900, k10 = 0x0A00
}
enum  ESubRecoRelease {
  kR00 = 0x0000, kR01 = 0x1000, kR02 = 0x2000, kR03 = 0x3000,
  kR04 = 0x4000, kR05 = 0x5000, kR06 = 0x6000, kR07 = 0x7000,
  kR08 = 0x8000, kR09 = 0x9000, kR10 = 0xA000
}
enum  ETestFlag { kStandard = 0x00000, kTest = 0x10000 }
enum  EFieldMaskRelease {
  kUnknown = -1, DataMCMask = 0x0000F, RecoMask = 0x000F0, SubMCMask = 0x00F00,
  SubRecoMask = 0x0F000, RecoTestMask = 0xF0000
}

Functions

Release_t GetRecoInfo (int type)
Release_t GetMCInfo (int type)
bool IsData (int type)
bool IsMC (int type)
bool IsTest (int type)
bool IsAvocado (int type)
bool IsBeet (int type)
bool IsCarrot (int type)
bool IsDaikon (int type)
bool IsEggplant (int type)
bool IsFava (int type)
bool IsGarlic (int type)
bool IsHops (int type)
bool IsIceberg (int type)
bool IsJicama (int type)
bool IsAsh (int type)
bool IsBirch (int type)
bool IsCedar (int type)
bool IsDogwood (int type)
bool IsElm (int type)
bool IsFir (int type)
bool IsGinkgo (int type)
bool IsHickory (int type)
bool IsIvy (int type)
bool IsJuniper (int type)
int GetMCSubVersion (int type)
int GetRecoSubVersion (int type)
Release_t GetRecoRelease (const char *recoreleasename)
Release_t GetSubRecoRelease (const char *subrecoreleasename)
Release_t GetDataMCRelease (const char *mcreleasename)
Release_t GetSubMCRelease (const char *submcreleasename)
Release_t GetTestFlag (const char *testflagname)
Release_t GetProductionRelease (const char *prodreleasename)
const char * AsString (ERecoRelease recorelease)
const char * AsString (ESubRecoRelease subrecorelease)
const char * AsString (EDataMCRelease datamcrelease)
const char * AsString (ESubMCRelease submcrelease)
const char * AsString (ReleaseType::ETestFlag testflag)
std::string AsString (int type)
std::string GetVersionString (int val)
Release_t StringToType (const char *nameChar)
Release_t MakeReleaseType (std::string fTitle, std::string mcinfo="")
const std::pair< std::string,
std::string > 
AsBatchString (int type)

Variables

const Release_t kBirchData = kBirch | kData
const Release_t kBirchCarrot = kBirch | kCarrot
const Release_t kCedarData = kCedar | kData
const Release_t kCedarCarrot = kCedar | kCarrot
const Release_t kCedarDaikon = kCedar | kDaikon
const Release_t kR1_24_0 = kCedar | kR00
const Release_t kR1_24_1 = kCedar | kR01
const Release_t kR1_24_2 = kCedar | kR02
const Release_t kR1_24_Cal = kCedar | kR08
const Release_t kR1_24_CalB = kCedar | kR09
const Release_t kR1_24_3 = kCedar | kR03
const Release_t kCedar_Phy = kCedar | kR02
const Release_t kCedarPhy = kCedar | kR02
const Release_t kCedarPhyData = kCedar | kR02 | kData
const Release_t kCedar_PhyData = kCedar | kR02 | kData
const Release_t kCedarPhyDaikon = kCedarPhy | kDaikon
const Release_t kR2_0_0 = kDogwood | kR00
const Release_t kR2_0_1 = kDogwood | kR01
const Release_t kR2_0_2 = kDogwood | kR02
const Release_t kR2_0_3 = kDogwood | kR03
const Release_t kDogwood0 = kDogwood | kR00
const Release_t kDogwood1 = kDogwood | kR01
const Release_t kDogwood2 = kDogwood | kR02
const Release_t kDogwood3 = kDogwood | kR03
const Release_t kDogwood0Data = kDogwood | kR00 | kData
const Release_t kDogwood0Daikon = kDogwood | kR00 | kDaikon
const Release_t kDogwood0Garlic = kDogwood | kR00 | kGarlic
const Release_t kDogwood0Hops = kDogwood | kR00 | kHops
const Release_t kDogwood1Data = kDogwood | kR01 | kData
const Release_t kDogwood1Daikon = kDogwood | kR01 | kDaikon
const Release_t kDogwood1Garlic = kDogwood | kR01 | kGarlic
const Release_t kDogwood1Hops = kDogwood | kR01 | kHops
const Release_t kDogwood2Data = kDogwood | kR02 | kData
const Release_t kDogwood2Daikon = kDogwood | kR02 | kDaikon
const Release_t kDogwood2Garlic = kDogwood | kR02 | kGarlic
const Release_t kDogwood2Hops = kDogwood | kR02 | kHops
const Release_t kDogwood3Data = kDogwood | kR03 | kData
const Release_t kDogwood3Daikon = kDogwood | kR03 | kDaikon
const Release_t kDogwood3Garlic = kDogwood | kR03 | kGarlic
const Release_t kDogwood3Hops = kDogwood | kR03 | kHops


Typedef Documentation

typedef enum ReleaseType::EDataMCRelease ReleaseType::DataMC_t
 

typedef enum ReleaseType::EFieldMaskRelease ReleaseType::FieldMask_t
 

typedef enum ReleaseType::ERecoRelease ReleaseType::Reco_t
 

typedef enum ReleaseType::ETestFlag ReleaseType::RecoTest_t
 

typedef Int_t ReleaseType::Release_t
 

Definition at line 200 of file ReleaseType.h.

Referenced by ReleaseType::StringToType().

typedef enum ReleaseType::ESubMCRelease ReleaseType::SubMC_t
 

typedef enum ReleaseType::ESubRecoRelease ReleaseType::SubReco_t
 


Enumeration Type Documentation

enum EDataMCRelease
 

Enumeration values:
kData 
kAvocado 
kBeet 
kCarrot 
kDaikon 
kEggplant 
kFava 
kGarlic 
kHops 
kIceberg 
kJicama 

Definition at line 140 of file ReleaseType.h.

00140                                 {
00141       kData     = 0x00,
00142       kAvocado  = 0x01,
00143       kBeet     = 0x02,
00144       kCarrot   = 0x03,
00145       kDaikon   = 0x04,    //Production began December 2006
00146       kEggplant = 0x05,
00147       kFava     = 0x06,
00148       kGarlic   = 0x07,
00149       kHops     = 0x08,
00150       kIceberg  = 0x09,
00151       kJicama   = 0x0A
00152     } DataMC_t;

enum EFieldMaskRelease
 

Enumeration values:
kUnknown 
DataMCMask 
RecoMask 
SubMCMask 
SubRecoMask 
RecoTestMask 

Definition at line 202 of file ReleaseType.h.

00202                                    {
00203       kUnknown     = -1,
00204       DataMCMask   = 0x0000F,
00205       RecoMask     = 0x000F0,
00206       SubMCMask    = 0x00F00,
00207       SubRecoMask  = 0x0F000,
00208       RecoTestMask = 0xF0000
00209     } FieldMask_t;

enum ERecoRelease
 

Enumeration values:
kAsh 
kBirch 
kCedar 
kDogwood 
kElm 
kFir 
kGinkgo 
kHickory 
kIvy 
kJuniper 

Definition at line 154 of file ReleaseType.h.

00154                               {    
00155       kAsh     = 0x10,   // R1.18
00156       kBirch   = 0x20,   // R1.18.{2/4}
00157       kCedar   = 0x30,   // Fall 2006 (R1.24.{0/1}
00158       kDogwood = 0x40,   // Winter 2009 (R2.0)
00159       kElm     = 0x50,
00160       kFir     = 0x60,
00161       kGinkgo  = 0x70,
00162       kHickory = 0x80,
00163       kIvy     = 0x90,
00164       kJuniper = 0xA0   
00165     } Reco_t;

enum ESubMCRelease
 

Enumeration values:
k00 
k01 
k02 
k03 
k04 
k05 
k06 
k07 
k08 
k09 
k10 

Definition at line 167 of file ReleaseType.h.

00167                                {
00168       k00 = 0x0000,  // first order release and backwards comp
00169       k01 = 0x0100,  //
00170       k02 = 0x0200,  //
00171       k03 = 0x0300,  //
00172       k04 = 0x0400,  //
00173       k05 = 0x0500,
00174       k06 = 0x0600,
00175       k07 = 0x0700,
00176       k08 = 0x0800,
00177       k09 = 0x0900,
00178       k10 = 0x0A00
00179     } SubMC_t;

enum ESubRecoRelease
 

Enumeration values:
kR00 
kR01 
kR02 
kR03 
kR04 
kR05 
kR06 
kR07 
kR08 
kR09 
kR10 

Definition at line 181 of file ReleaseType.h.

00181                                  {
00182       kR00 = 0x0000,  // first order release and backwards comp
00183       kR01 = 0x1000,  // 
00184       kR02 = 0x2000,  // 
00185       kR03 = 0x3000,  // 
00186       kR04 = 0x4000,  //
00187       kR05 = 0x5000,
00188       kR06 = 0x6000,  
00189       kR07 = 0x7000,  
00190       kR08 = 0x8000,  
00191       kR09 = 0x9000,
00192       kR10 = 0xA000
00193     } SubReco_t;

enum ETestFlag
 

Enumeration values:
kStandard 
kTest 

Definition at line 195 of file ReleaseType.h.

00195                            {
00196       kStandard = 0x00000,
00197       kTest     = 0x10000
00198     } RecoTest_t;


Function Documentation

const std::pair< std::string, std::string > ReleaseType::AsBatchString int  type  ) 
 

Definition at line 368 of file ReleaseType.cxx.

References ReleaseType::GetMCSubVersion(), ReleaseType::GetRecoSubVersion(), ReleaseType::IsAsh(), ReleaseType::IsAvocado(), ReleaseType::IsBeet(), ReleaseType::IsBirch(), ReleaseType::IsCarrot(), ReleaseType::IsCedar(), ReleaseType::IsDaikon(), ReleaseType::IsDogwood(), ReleaseType::IsEggplant(), ReleaseType::IsElm(), ReleaseType::IsFava(), ReleaseType::IsFir(), ReleaseType::IsGarlic(), ReleaseType::IsGinkgo(), ReleaseType::IsHickory(), ReleaseType::IsHops(), ReleaseType::IsIceberg(), ReleaseType::IsIvy(), ReleaseType::IsJicama(), ReleaseType::IsJuniper(), ReleaseType::IsMC(), and ReleaseType::IsTest().

00369 {
00370    //
00371    // Return pair of strings: 
00372    //    1st element is reconstruction release name as used for pnfs file storage
00373    //    2nd element is Monte-Carlo release name as used for pnfs file storage
00374    //
00375 
00376   string dmc = "unknown_mc";
00377   string reco = "unknown_reco";
00378 
00379   if(ReleaseType::IsMC(type))
00380   {
00381      if(ReleaseType::IsAvocado(type))       dmc = "avocado";
00382      else if(ReleaseType::IsBeet(type))     dmc = "beet";
00383      else if(ReleaseType::IsCarrot(type))   dmc = "carrot";
00384      else if(ReleaseType::IsDaikon(type))   dmc = "daikon";
00385      else if(ReleaseType::IsEggplant(type)) dmc = "eggplant";
00386      else if(ReleaseType::IsFava(type))     dmc = "fava";  
00387      else if(ReleaseType::IsGarlic(type))   dmc = "garlic";
00388      else if(ReleaseType::IsHops(type))     dmc = "hops";
00389      else if(ReleaseType::IsIceberg(type))  dmc = "iceberg";
00390      else if(ReleaseType::IsJicama(type))   dmc = "jicama";
00391 
00392      if(ReleaseType::GetMCSubVersion(type) < 0 || ReleaseType::GetMCSubVersion(type) > 99)
00393      {
00394         std::cerr << "ReleaseType::AsBatchString - bad Monte-Carlo version: " 
00395                   << ReleaseType::GetMCSubVersion(type) << std::endl;
00396      }
00397      else
00398      {
00399         std::stringstream mver;
00400         mver << std::setw(2) << std::setfill('0') << ReleaseType::GetMCSubVersion(type);
00401         dmc = dmc + "_" + mver.str();
00402      }     
00403   }
00404   else
00405   {
00406      dmc = "data";
00407   }
00408   
00409   if(ReleaseType::IsAsh(type)) reco = "ash";
00410   if(ReleaseType::IsBirch(type)) reco = "birch";
00411   if(ReleaseType::IsCedar(type))
00412   {
00413      if(ReleaseType::GetRecoSubVersion(type) == 0)
00414      {
00415         reco = "cedar";
00416      }
00417      else if(ReleaseType::GetRecoSubVersion(type) == 1)
00418      {
00419         reco = "cedar";
00420      }
00421      else if(ReleaseType::GetRecoSubVersion(type) == 2)
00422      {
00423         reco = "cedar_phy";
00424      }
00425      else if(ReleaseType::GetRecoSubVersion(type) == 3)
00426      {
00427         reco = "cedar_phy_bhcurv";
00428      }
00429      else
00430      {
00431         std::cerr << "ReleaseType::AsBatchString - bad cedar reconstuction version: "
00432                   << ReleaseType::GetRecoSubVersion(type) << std::endl; 
00433      }
00434   }
00435   if(ReleaseType::IsDogwood(type))
00436   {
00437     if(ReleaseType::GetRecoSubVersion(type) == 0)
00438       {
00439         reco = "dogwood0";
00440       }
00441     else if(ReleaseType::GetRecoSubVersion(type) == 1)
00442       {
00443         reco = "dogwood1";
00444       }
00445     else if(ReleaseType::GetRecoSubVersion(type) == 2)
00446       {
00447         reco = "dogwood2";
00448       }
00449     else if(ReleaseType::GetRecoSubVersion(type) == 3)
00450       {
00451         reco = "dogwood3";
00452       }
00453     else
00454       {
00455         std::cerr << "ReleaseType::AsBatchString - bad dogwood reconstuction version: "
00456                   << ReleaseType::GetRecoSubVersion(type) << std::endl; 
00457       }
00458   }
00459   if(ReleaseType::IsElm(type)) reco = "elm";
00460   if(ReleaseType::IsFir(type)) reco = "fir";
00461   if(ReleaseType::IsGinkgo(type)) reco = "ginkgo";
00462   if(ReleaseType::IsHickory(type)) reco = "hickory";
00463   if(ReleaseType::IsIvy(type)) reco = "ivy";
00464   if(ReleaseType::IsJuniper(type)) reco = "juniper";
00465  
00466   if(ReleaseType::IsTest(type)) reco += "test";
00467 
00468   return std::pair<std::string, std::string>(dmc, reco);
00469 }

string ReleaseType::AsString int  type  ) 
 

Definition at line 148 of file ReleaseType.cxx.

References ReleaseType::GetRecoInfo(), ReleaseType::GetVersionString(), ReleaseType::IsAsh(), ReleaseType::IsAvocado(), ReleaseType::IsBeet(), ReleaseType::IsBirch(), ReleaseType::IsCarrot(), ReleaseType::IsCedar(), ReleaseType::IsDaikon(), ReleaseType::IsDogwood(), ReleaseType::IsEggplant(), ReleaseType::IsElm(), ReleaseType::IsFava(), ReleaseType::IsFir(), ReleaseType::IsGarlic(), ReleaseType::IsGinkgo(), ReleaseType::IsHickory(), ReleaseType::IsHops(), ReleaseType::IsIceberg(), ReleaseType::IsIvy(), ReleaseType::IsJicama(), ReleaseType::IsJuniper(), ReleaseType::IsMC(), and ReleaseType::IsTest().

00149 {
00150   string dmc = "unknown";
00151   string reco = "unknownRel";
00152 
00153   if(ReleaseType::IsMC(type)){
00154     if(ReleaseType::IsAvocado(type)) dmc = "Avocado";
00155     else if(ReleaseType::IsBeet(type)) dmc = "Beet";
00156     else if(ReleaseType::IsCarrot(type)) dmc = "Carrot";
00157     else if(ReleaseType::IsDaikon(type)) dmc = "Daikon";
00158     else if(ReleaseType::IsEggplant(type)) dmc = "Eggplant";
00159     else if(ReleaseType::IsFava(type)) dmc = "Fava";  
00160     else if(ReleaseType::IsGarlic(type)) dmc = "Garlic";
00161     else if(ReleaseType::IsHops(type)) dmc = "Hops";
00162     else if(ReleaseType::IsIceberg(type)) dmc = "Iceberg";
00163     else if(ReleaseType::IsJicama(type)) dmc = "Jicama";
00164     else dmc = "unknown MC";
00165    
00166     dmc += GetVersionString(ReleaseType::GetMCSubVersion(type));
00167   }else{
00168     dmc = "Data";
00169   }
00170 
00171   if(ReleaseType::IsAsh(type)) reco = "Ash";
00172   if(ReleaseType::IsBirch(type)) reco = "Birch";
00173   if(ReleaseType::IsCedar(type)){
00174      if(ReleaseType::GetRecoInfo(type) == ReleaseType::kCedarPhy ||
00175          ReleaseType::GetRecoInfo(type) == ReleaseType::kR1_24_3 )
00176         reco = "CedarPhy";
00177      else  reco = "Cedar";
00178   }
00179   if(ReleaseType::IsDogwood(type)) {
00180     if(ReleaseType::GetRecoInfo(type) == ReleaseType::kDogwood1 ||
00181        ReleaseType::GetRecoInfo(type) == ReleaseType::kR2_0_1 )
00182       reco = "Dogwood";
00183     else if(ReleaseType::GetRecoInfo(type) == ReleaseType::kDogwood2 ||
00184             ReleaseType::GetRecoInfo(type) == ReleaseType::kR2_0_2 )
00185       reco = "Dogwood";
00186     else if(ReleaseType::GetRecoInfo(type) == ReleaseType::kDogwood3 ||
00187             ReleaseType::GetRecoInfo(type) == ReleaseType::kR2_0_3 )
00188       reco = "Dogwood";
00189     else reco = "Dogwood";    
00190   }
00191   if(ReleaseType::IsElm(type)) reco = "Elm";
00192   if(ReleaseType::IsFir(type)) reco = "Fir";
00193   if(ReleaseType::IsGinkgo(type)) reco = "Ginkgo";
00194   if(ReleaseType::IsHickory(type)) reco = "Hickory";
00195   if(ReleaseType::IsIvy(type)) reco = "Ivy";
00196   if(ReleaseType::IsJuniper(type)) reco = "Juniper";
00197 
00198   if(ReleaseType::IsTest(type)) reco += "Test";
00199   reco += GetVersionString(ReleaseType::GetRecoSubVersion(type));
00200 
00201   string name = reco + " " + dmc;
00202 
00203   return name;
00204 }                             

const char * ReleaseType::AsString ReleaseType::ETestFlag  testflag  ) 
 

Definition at line 688 of file ReleaseType.cxx.

References ReleaseType::kStandard, ReleaseType::kTest, and MSG.

00689 {
00690   switch ( testflag) {
00691   case kStandard:    return "";
00692   case kTest:        return "test";
00693   default:
00694     MSG("Conv",Msg::kError) << "ReleaseType::AsString for unknown "
00695                             << "ETestFlag " << testflag
00696                             << ". Fix method. Abort." << endl;
00697     abort();
00698   }
00699 }

const char * ReleaseType::AsString ESubMCRelease  submcrelease  ) 
 

Definition at line 648 of file ReleaseType.cxx.

References ReleaseType::k00, ReleaseType::k01, ReleaseType::k02, ReleaseType::k03, ReleaseType::k04, ReleaseType::k05, ReleaseType::k06, ReleaseType::k07, ReleaseType::k08, ReleaseType::k09, ReleaseType::k10, and MSG.

00648                                                                        {
00649   // Purpose: Convert enumerated submcrelease to string
00650   
00651   switch ( submcrelease ) {
00652 
00653   case k00:    return "00";
00654   case k01:    return "01";
00655   case k02:    return "02";
00656   case k03:    return "03";
00657   case k04:    return "04";
00658   case k05:    return "05";
00659   case k06:    return "06";
00660   case k07:    return "07";
00661   case k08:    return "08";
00662   case k09:    return "09";
00663   case k10:    return "10";
00664   default:
00665     MSG("Conv",Msg::kError) << "ReleaseType::AsString for unknown "
00666                             << "ESubMCRelease " << submcrelease 
00667                             << ". Fix method. Abort." << endl;
00668     abort();
00669   }
00670   
00671 }

const char * ReleaseType::AsString EDataMCRelease  datamcrelease  ) 
 

Definition at line 598 of file ReleaseType.cxx.

References ReleaseType::kAvocado, ReleaseType::kBeet, ReleaseType::kCarrot, ReleaseType::kDaikon, ReleaseType::kEggplant, ReleaseType::kFava, ReleaseType::kGarlic, ReleaseType::kHops, ReleaseType::kIceberg, ReleaseType::kJicama, and MSG.

00598                                                                          {
00599   // Purpose: Convert enumerated datamcrelease to string
00600   
00601   switch ( datamcrelease ) {
00602 
00603   case kData:       return "Data";
00604   case kAvocado:    return "Avocado";
00605   case kBeet:       return "Beet";
00606   case kCarrot:     return "Carrot";
00607   case kDaikon:     return "Daikon";
00608   case kEggplant:   return "Eggplant";
00609   case kFava:       return "Fava";
00610   case kGarlic:     return "Garlic";
00611   case kHops:       return "Hops";
00612   case kIceberg:    return "Iceberg";
00613   case kJicama:     return "Jicama";
00614   default:
00615     MSG("Conv",Msg::kError) << "ReleaseType::AsString for unknown "
00616                             << "EDataMCRelease " << datamcrelease 
00617                             << ". Fix method. Abort." << endl;
00618     abort();
00619   }
00620   
00621 }

const char * ReleaseType::AsString ESubRecoRelease  subrecorelease  ) 
 

Definition at line 547 of file ReleaseType.cxx.

References ReleaseType::kR00, ReleaseType::kR01, ReleaseType::kR02, ReleaseType::kR03, ReleaseType::kR04, ReleaseType::kR05, ReleaseType::kR06, ReleaseType::kR07, ReleaseType::kR08, ReleaseType::kR09, ReleaseType::kR10, and MSG.

00547                                                                           {
00548   // Purpose: Convert enumerated subrecorelease to string
00549   
00550   switch ( subrecorelease ) {
00551 
00552   case kR00:    return "00";
00553   case kR01:    return "01";
00554   case kR02:    return "02";
00555   case kR03:    return "03";
00556   case kR04:    return "04";
00557   case kR05:    return "05";
00558   case kR06:    return "06";
00559   case kR07:    return "07";
00560   case kR08:    return "08";
00561   case kR09:    return "09";
00562   case kR10:    return "10";
00563   default:
00564     MSG("Conv",Msg::kError) << "ReleaseType::AsString for unknown "
00565                             << "ESubRecoRelease " << subrecorelease 
00566                             << ". Fix method. Abort." << endl;
00567     abort();
00568   }
00569   
00570 }

const char * ReleaseType::AsString ERecoRelease  recorelease  ) 
 

Definition at line 499 of file ReleaseType.cxx.

References ReleaseType::kAsh, ReleaseType::kBirch, ReleaseType::kCedar, ReleaseType::kDogwood, ReleaseType::kElm, ReleaseType::kFir, ReleaseType::kGinkgo, ReleaseType::kHickory, ReleaseType::kIvy, ReleaseType::kJuniper, and MSG.

Referenced by ANtpInfoObjectFillerMRCC::ABPID(), MNtpModule::Ana(), MuonRemovalInfoAna::Analyze(), AnalysisInfoAna::Analyze(), ANtpRecoNtpManipulator::ANtpRecoNtpManipulator(), EnergyCorrections::CalibrationGroupEnergyCorrections(), MadTVAnalysis::CreatePAN(), NuAnalysis::EnergySpect(), NuUtilities::PrintRelease(), and NueModule::Reco().

00499                                                                     {
00500   // Purpose: Convert enumerated recorelease to string
00501   
00502   switch ( recorelease ) {
00503 
00504   case kAsh:      return "Ash";
00505   case kBirch:    return "Birch";
00506   case kCedar:    return "Cedar";
00507   case kDogwood:  return "Dogwood";
00508   case kElm:      return "Elm";
00509   case kFir:      return "Fir";
00510   case kGinkgo:   return "Ginkgo";
00511   case kHickory:  return "Hickory";
00512   case kIvy:      return "Ivy";
00513   case kJuniper:  return "Juniper";
00514   default:
00515     MSG("Conv",Msg::kError) << "ReleaseType::AsString for unknown "
00516                             << "ERecoRelease " << recorelease 
00517                             << ". Fix method. Abort." << endl;
00518     abort();
00519   }
00520   
00521 }

ReleaseType::Release_t ReleaseType::GetDataMCRelease const char *  mcreleasename  ) 
 

Definition at line 573 of file ReleaseType.cxx.

Referenced by ReleaseType::GetProductionRelease().

00574                                                                           {
00575   // Purpose: Search for substring in datamcreleasename corresponding to
00576   //          an EDataMCRelease.  Returns EDataMCRelease if found, else
00577   //          kUnknown.
00578 
00579   TString tmpstr(datamcreleasename);
00580   tmpstr.ToLower();
00581   if ( strstr(tmpstr.Data(),"data") != 0 ) return kData;
00582   else if ( strstr(tmpstr.Data(),"avocado") != 0 ) return kAvocado;
00583   else if ( strstr(tmpstr.Data(),"beet") != 0 ) return kBeet;
00584   else if ( strstr(tmpstr.Data(),"carrot") != 0 ) return kCarrot;
00585   else if ( strstr(tmpstr.Data(),"daikon") != 0 ) return kDaikon;
00586   else if ( strstr(tmpstr.Data(),"eggplant") != 0 ) return kEggplant;
00587   else if ( strstr(tmpstr.Data(),"fava") != 0 ) return kFava;
00588   else if ( strstr(tmpstr.Data(),"garlic") != 0 ) return kGarlic;
00589   else if ( strstr(tmpstr.Data(),"hops") != 0 ) return kHops;
00590   else if ( strstr(tmpstr.Data(),"iceberg") != 0 ) return kIceberg;
00591   else if ( strstr(tmpstr.Data(),"jicama") != 0 ) return kJicama;
00592   return kUnknown;
00593   
00594 }

ReleaseType::Release_t ReleaseType::GetMCInfo int  type  ) 
 

Definition at line 126 of file ReleaseType.cxx.

Referenced by NuAnalysis::ExtractConfig().

00126                                                     {
00127   return (type & (ReleaseType::DataMCMask + ReleaseType::SubMCMask));
00128 }

int ReleaseType::GetMCSubVersion int  type  ) 
 

Definition at line 134 of file ReleaseType.cxx.

References ReleaseType::SubMCMask.

Referenced by ReleaseType::AsBatchString(), Anp::Header::GetMCRLTYPE(), NuZBeamReweight::GetWeightHelium(), NuDSTAna::MakeMicroDstHe(), NuOutputWriter::OpenFile(), SetKNNModule::Reco(), and NuAnalysis::SetAnaFlags().

00135 {
00136    int temp = type & SubMCMask;
00137    return temp/(SubMCMask/0xF);
00138 }

ReleaseType::Release_t ReleaseType::GetProductionRelease const char *  prodreleasename  ) 
 

Definition at line 702 of file ReleaseType.cxx.

References ReleaseType::GetDataMCRelease(), ReleaseType::GetRecoRelease(), ReleaseType::GetSubMCRelease(), ReleaseType::GetSubRecoRelease(), and ReleaseType::GetTestFlag().

Referenced by RecJobRecord::GetProdReleaseType(), and reroot_configure().

00703                                                                        {
00704   // Purpose: Convert text string prodreleasename to release type.
00705   // Returns kUnknown if unknown.
00706   // If prodreleasename is from reco batch production, 
00707   // e.g. "dogwood2" or "dogwoodtest0", returns ReleaseType as combination of 
00708   // ERecoRelease, ESubReco, and ETestFlag.
00709   // If prodreleasename is from MC production, e.g. Daikon_00, returns
00710   // ReleaseType as combination of EDataMCRelease and ESubMCRelease.
00711 
00712   ReleaseType::Release_t result = kUnknown;
00713                                                             
00714   result = ReleaseType::GetRecoRelease(prodreleasename);
00715   
00716   if ( result != kUnknown ) {
00717     // Batch production. Add test flag.
00718     result |= ReleaseType::GetTestFlag(prodreleasename);
00719     // Add version
00720     std::string tmpstr = std::string(prodreleasename);
00721     //  char version = tmpstr[tmpstr.size()-1];
00722     char ver[2];  sprintf(ver, "0%c", tmpstr[tmpstr.size()-1]);
00723     ReleaseType::Release_t subver = ReleaseType::GetSubRecoRelease(ver);
00724     if ( subver != kUnknown ) result |= subver;
00725   }
00726   else {
00727     result = ReleaseType::GetDataMCRelease(prodreleasename);
00728     if ( result != kUnknown ) {
00729       // MC production.  Add version.
00730       ReleaseType::Release_t subver 
00731                               = ReleaseType::GetSubMCRelease(prodreleasename);
00732       if ( subver != kUnknown ) result |= subver;
00733     }
00734   }
00735   
00736   return result;
00737 }

ReleaseType::Release_t ReleaseType::GetRecoInfo int  type  ) 
 

Definition at line 122 of file ReleaseType.cxx.

Referenced by ReleaseType::AsString(), EnergyCorrections::CalibrationGroupEnergyCorrections(), NuAnalysis::ExtractConfig(), EnergyCorrections::FullyCorrectShowerEnergy(), and NuPIDInterface::InitialiseDpID().

00122                                                       {
00123   return (type & (ReleaseType::RecoMask + ReleaseType::SubRecoMask));
00124 }

ReleaseType::Release_t ReleaseType::GetRecoRelease const char *  recoreleasename  ) 
 

Definition at line 472 of file ReleaseType.cxx.

Referenced by ReleaseType::GetProductionRelease().

00473                                                                        {
00474   // Purpose: Convert text string recoreleasename to an ERecoRelease.
00475   // Returns kUnknown if unknown.
00476   ReleaseType::Release_t result = kUnknown;
00477 
00478   TString tmpstr(recoreleasename);
00479   tmpstr.ToLower();
00480   if ( strstr(tmpstr.Data(),"ash") != 0 )  result = kAsh;
00481   else if ( strstr(tmpstr.Data(),"birch") != 0 ) result = kBirch;
00482   else if ( strstr(tmpstr.Data(),"cedar") != 0 ) result = kCedar;
00483   else if ( strstr(tmpstr.Data(),"dogwood") != 0 ) result = kDogwood;
00484   else if ( strstr(tmpstr.Data(),"elm") != 0 ) result = kElm;
00485   else if ( strstr(tmpstr.Data(),"fir") != 0 ) result = kFir;
00486   else if ( strstr(tmpstr.Data(),"ginkgo") != 0 ) result = kGinkgo;
00487   else if ( strstr(tmpstr.Data(),"hickory") != 0 ) result = kHickory;
00488   else if ( strstr(tmpstr.Data(),"ivy") != 0 ) result = kIvy;
00489   else if ( strstr(tmpstr.Data(),"juniper") != 0 ) result = kJuniper;
00490 
00491   if(result == kUnknown) return result;
00492   
00493   if(strstr(tmpstr.Data(),"test") != 0) result |= kTest;
00494 
00495   return result;
00496 }

int ReleaseType::GetRecoSubVersion int  type  ) 
 

Definition at line 140 of file ReleaseType.cxx.

References ReleaseType::SubRecoMask.

Referenced by ReleaseType::AsBatchString(), Anp::Header::GetRECOTYPE(), NueConvention::NueEnergyCorrection(), NueConvention::NueEnergyCorrectionNeverUseThisFunction(), and NuOutputWriter::OpenFile().

00141 {
00142    int temp = type & SubRecoMask;
00143    return temp/(SubRecoMask/0xF);
00144 }

ReleaseType::Release_t ReleaseType::GetSubMCRelease const char *  submcreleasename  ) 
 

Definition at line 624 of file ReleaseType.cxx.

Referenced by ReleaseType::GetProductionRelease().

00625                                                                         {
00626   // Purpose: Search for substring in submcreleasename corresponding to
00627   //          an ESubMCRelease.  Returns matching ESubMCRelease if found,
00628   //          else kUnknown if no match.
00629 
00630   TString tmpstr(submcreleasename);
00631   tmpstr.ToLower();
00632   if ( strstr(tmpstr.Data(),"00") != 0 ) return k00;
00633   else if ( strstr(tmpstr.Data(),"01") != 0 ) return k01;
00634   else if ( strstr(tmpstr.Data(),"02") != 0 ) return k02;
00635   else if ( strstr(tmpstr.Data(),"03") != 0 ) return k03;
00636   else if ( strstr(tmpstr.Data(),"04") != 0 ) return k04;
00637   else if ( strstr(tmpstr.Data(),"05") != 0 ) return k05;
00638   else if ( strstr(tmpstr.Data(),"06") != 0 ) return k06;
00639   else if ( strstr(tmpstr.Data(),"07") != 0 ) return k07;
00640   else if ( strstr(tmpstr.Data(),"08") != 0 ) return k08;
00641   else if ( strstr(tmpstr.Data(),"09") != 0 ) return k09;
00642   else if ( strstr(tmpstr.Data(),"10") != 0 ) return k10;
00643   return kUnknown;
00644   
00645 }

ReleaseType::Release_t ReleaseType::GetSubRecoRelease const char *  subrecoreleasename  ) 
 

Definition at line 524 of file ReleaseType.cxx.

Referenced by ReleaseType::GetProductionRelease().

00525                                                                         {
00526   // Purpose: Search for substring in subrecoreleasename corresponding to
00527   //          an ESubRecoRelease code.  Returns kUnknown if no match.
00528 
00529   TString tmpstr(subrecoreleasename);
00530   tmpstr.ToLower();
00531   if ( strstr(tmpstr.Data(),"00") != 0 ) return kR00;
00532   else if ( strstr(tmpstr.Data(),"01") != 0 ) return kR01;
00533   else if ( strstr(tmpstr.Data(),"02") != 0 ) return kR02;
00534   else if ( strstr(tmpstr.Data(),"03") != 0 ) return kR03;
00535   else if ( strstr(tmpstr.Data(),"04") != 0 ) return kR04;
00536   else if ( strstr(tmpstr.Data(),"05") != 0 ) return kR05;
00537   else if ( strstr(tmpstr.Data(),"06") != 0 ) return kR06;
00538   else if ( strstr(tmpstr.Data(),"07") != 0 ) return kR07;
00539   else if ( strstr(tmpstr.Data(),"08") != 0 ) return kR08;
00540   else if ( strstr(tmpstr.Data(),"09") != 0 ) return kR09;
00541   else if ( strstr(tmpstr.Data(),"10") != 0 ) return kR10;
00542   return kUnknown;
00543   
00544 }

ReleaseType::Release_t ReleaseType::GetTestFlag const char *  testflagname  ) 
 

Definition at line 674 of file ReleaseType.cxx.

Referenced by ReleaseType::GetProductionRelease().

00675 {
00676   // Purpose: Search for substring in testflagname corresponding to
00677   //          an ETestFlag.  Returns matching ETestFlag if found, else
00678   //          ETestFlag::kStandard.
00679 
00680   TString tmpstr(testflagname);
00681   tmpstr.ToLower();
00682   if ( strstr(tmpstr.Data(),"test") != 0 ) return kTest;
00683   return kStandard; // default
00684 
00685 }

std::string ReleaseType::GetVersionString int  val  ) 
 

Definition at line 206 of file ReleaseType.cxx.

Referenced by ReleaseType::AsString().

00207 {
00208    char dum[4];
00209    sprintf(dum, "V%02d", val);
00210    std::string temp = dum;
00211    return temp;
00212 }

bool ReleaseType::IsAsh int  type  ) 
 

Definition at line 79 of file ReleaseType.cxx.

Referenced by ReleaseType::AsBatchString(), and ReleaseType::AsString().

00079                                  {
00080   return  ((type & ReleaseType::RecoMask) == ReleaseType::kAsh);
00081 }

bool ReleaseType::IsAvocado int  type  ) 
 

Definition at line 34 of file ReleaseType.cxx.

Referenced by ReleaseType::AsBatchString(), and ReleaseType::AsString().

00034                                     {
00035   return ((type & ReleaseType::DataMCMask) == ReleaseType::kAvocado);
00036 }

bool ReleaseType::IsBeet int  type  ) 
 

Definition at line 38 of file ReleaseType.cxx.

Referenced by ReleaseType::AsBatchString(), and ReleaseType::AsString().

00038                                  {
00039   return ((type & ReleaseType::DataMCMask) == ReleaseType::kBeet);
00040 }

bool ReleaseType::IsBirch int  type  ) 
 

Definition at line 83 of file ReleaseType.cxx.

Referenced by NueDisplayModule::Ana(), MNtpModule::Ana(), MuonRemovalInfoAna::Analyze(), ANtpTrackInfoAna::Analyze(), ANtpShowerInfoAna::Analyze(), ReleaseType::AsBatchString(), ReleaseType::AsString(), EnergyCorrections::CalibrationGroupEnergyCorrections(), NuAnalysis::ExtractConfig(), EnergyCorrections::FullyCorrectEnergyFromRange(), EnergyCorrections::FullyCorrectMomentumFromRange(), EnergyCorrections::FullyCorrectShowerEnergy(), EnergyCorrections::FullyCorrectSignedMomentumFromCurvature(), NuReco::GetContainmentFlag(), NCAnalysisCutsNC::IsFibreNoiseInSpillOx(), NuCuts::IsInFidVol(), ParticleFinder::Reco(), and NueModule::Reco().

00083                                    { 
00084   return  ((type & ReleaseType::RecoMask) == ReleaseType::kBirch);
00085 }

bool ReleaseType::IsCarrot int  type  ) 
 

Definition at line 42 of file ReleaseType.cxx.

Referenced by NueXsecWeightAna::Analyze(), NueModule::Analyze(), MuonRemovalInfoAna::Analyze(), AnalysisInfoAna::Analyze(), ReleaseType::AsBatchString(), ReleaseType::AsString(), NCEventInfo::FindMEGAFitWeight(), NCEventInfo::FindNeugenWeight(), MCInfo::GetMCPoT(), MCInfo::GetNoSnarlPerFile(), ANtpTruthInfoBeamAna::GetNueWeight(), and NueConvention::NueEnergyCorrection().

00042                                    { 
00043   return ((type & ReleaseType::DataMCMask) == ReleaseType::kCarrot);
00044 }

bool ReleaseType::IsCedar int  type  ) 
 

Definition at line 87 of file ReleaseType.cxx.

Referenced by ANtpInfoObjectFillerMRCC::ABPID(), NueDisplayModule::Ana(), MNtpModule::Ana(), TimingVarsAna::Analyze(), ShwfitAna::Analyze(), ShieldRejVarAna::Analyze(), NueModule::Analyze(), MuonRemovalInfoAna::Analyze(), ANtpTrackInfoAna::Analyze(), ANtpShowerInfoAna::Analyze(), ANtpEventInfoAna::Analyze(), AnalysisInfoAna::Analyze(), ReleaseType::AsBatchString(), ReleaseType::AsString(), AnalysisInfoAna::BuildABPIDFile(), AnalysisInfoAna::BuildROPIDFile(), EnergyCorrections::CalibrationGroupEnergyCorrections(), HitCalcAna::ComputeHits(), MadTVAnalysis::CreatePAN(), EnergyCorrections::FullyCorrectEnergyFromRange(), EnergyCorrections::FullyCorrectMomentumFromRange(), EnergyCorrections::FullyCorrectShowerEnergy(), EnergyCorrections::FullyCorrectSignedMomentumFromCurvature(), NuPIDInterface::GetFileNameAbID(), NuPIDInterface::GetFileNameJeID(), Anp::Header::GetRECOTYPE(), NCEventInfo::GetShowerEnergy(), NCEventInfo::GetSKZPCalc(), NCAnalysisCutsNC::IsFibreNoiseInSpillOx(), NCAnalysisCutsNC::IsLIInSpillOx(), NCEventInfo::MasakiStyleCorrectionCedarPhyLinfix(), NueConvention::NueEnergyCorrection(), NueConvention::NueEnergyCorrectionNeverUseThisFunction(), and AngClusterAna::WeightedEnergy().

00087                                    { 
00088   return  ((type & ReleaseType::RecoMask) == ReleaseType::kCedar);
00089 }

bool ReleaseType::IsDaikon int  type  ) 
 

Definition at line 46 of file ReleaseType.cxx.

Referenced by ReleaseType::AsBatchString(), ReleaseType::AsString(), AnalysisInfoAna::BuildABPIDFile(), AnalysisInfoAna::BuildROPIDFile(), NuZBeamReweight::CalcGeneratorReweight(), EnergyCorrections::CalibrationGroupEnergyCorrections(), ParticleConventions::EnergyCorrection(), NCEventInfo::FindNeugenWeight(), NuPIDInterface::GetFileNameAbID(), NuPIDInterface::GetFileNameJeID(), NuPIDInterface::GetFileNamekNNID(), MCInfo::GetMCPoT(), Anp::Header::GetMCRLTYPE(), MCInfo::GetNoSnarlPerFile(), ANtpTruthInfoBeamAna::GetNueWeight(), NuZBeamReweight::GetWeightHelium(), NuDSTAna::MakeMicroDstHe(), NuSystematic::NeugenXSecShift(), NueConvention::NueEnergyCorrection(), NueConvention::NueEnergyCorrectionNeverUseThisFunction(), NuOutputWriter::OpenFile(), SetKNNModule::Reco(), NuAnalysis::SetAnaFlags(), NCExtractionCuts::WhichCCPIDFiles(), and NCExtractionMDA::WhichMdaCoeffHistDef().

00046                                    { 
00047   return ((type & ReleaseType::DataMCMask) == ReleaseType::kDaikon);
00048 }

bool ReleaseType::IsData int  type  ) 
 

Definition at line 20 of file ReleaseType.cxx.

Referenced by NueModule::Analyze(), AnalysisInfoAna::BuildABPIDFile(), AnalysisInfoAna::BuildROPIDFile(), ParticleConventions::EnergyCorrection(), NueData::IsData(), NueConvention::NueEnergyCorrection(), and NueConvention::NueEnergyCorrectionNeverUseThisFunction().

00020                                    { 
00021   return ((type & ReleaseType::DataMCMask) == ReleaseType::kData);
00022 }

bool ReleaseType::IsDogwood int  type  ) 
 

Definition at line 91 of file ReleaseType.cxx.

Referenced by NueDisplayModule::Ana(), TimingVarsAna::Analyze(), MuonRemovalInfoAna::Analyze(), ANtpTrackInfoAna::Analyze(), ANtpShowerInfoAna::Analyze(), AnalysisInfoAna::Analyze(), ReleaseType::AsBatchString(), ReleaseType::AsString(), ParticleConventions::EnergyCorrection(), NuUtilities::FixDogwoodQP(), EnergyCorrections::FullyCorrectShowerEnergy(), NuPIDInterface::GetFileNamekNNID(), Anp::Header::GetRECOTYPE(), NCEventInfo::GetSKZPCalc(), NCEventInfo::MasakiStyleCorrectionCedarPhyLinfix(), NueConvention::NueEnergyCorrection(), NuOutputWriter::OpenFile(), and NCExtractionCuts::WhichCCPIDFiles().

00091                                      {
00092   return  ((type & ReleaseType::RecoMask) == ReleaseType::kDogwood);
00093 }

bool ReleaseType::IsEggplant int  type  ) 
 

Definition at line 50 of file ReleaseType.cxx.

Referenced by ReleaseType::AsBatchString(), and ReleaseType::AsString().

00050                                      {
00051   return ((type & ReleaseType::DataMCMask) == ReleaseType::kEggplant);
00052 }

bool ReleaseType::IsElm int  type  ) 
 

Definition at line 95 of file ReleaseType.cxx.

Referenced by ReleaseType::AsBatchString(), and ReleaseType::AsString().

00095                                  {
00096   return  ((type & ReleaseType::RecoMask) == ReleaseType::kElm);
00097 }

bool ReleaseType::IsFava int  type  ) 
 

Definition at line 54 of file ReleaseType.cxx.

Referenced by ReleaseType::AsBatchString(), and ReleaseType::AsString().

00054                                  {
00055   return ((type & ReleaseType::DataMCMask) == ReleaseType::kFava);
00056 }

bool ReleaseType::IsFir int  type  ) 
 

Definition at line 99 of file ReleaseType.cxx.

Referenced by ReleaseType::AsBatchString(), and ReleaseType::AsString().

00099                                  {
00100   return  ((type & ReleaseType::RecoMask) == ReleaseType::kFir);
00101 }

bool ReleaseType::IsGarlic int  type  ) 
 

Definition at line 58 of file ReleaseType.cxx.

Referenced by ReleaseType::AsBatchString(), and ReleaseType::AsString().

00058                                    {
00059   return ((type & ReleaseType::DataMCMask) == ReleaseType::kGarlic);
00060 }

bool ReleaseType::IsGinkgo int  type  ) 
 

Definition at line 103 of file ReleaseType.cxx.

Referenced by ReleaseType::AsBatchString(), and ReleaseType::AsString().

00103                                     {
00104   return  ((type & ReleaseType::RecoMask) == ReleaseType::kGinkgo);
00105 }

bool ReleaseType::IsHickory int  type  ) 
 

Definition at line 107 of file ReleaseType.cxx.

Referenced by ReleaseType::AsBatchString(), and ReleaseType::AsString().

00107                                      {
00108   return  ((type & ReleaseType::RecoMask) == ReleaseType::kHickory);
00109 }

bool ReleaseType::IsHops int  type  ) 
 

Definition at line 62 of file ReleaseType.cxx.

Referenced by ReleaseType::AsBatchString(), and ReleaseType::AsString().

00062                                  {
00063   return ((type & ReleaseType::DataMCMask) == ReleaseType::kHops);
00064 }

bool ReleaseType::IsIceberg int  type  ) 
 

Definition at line 66 of file ReleaseType.cxx.

Referenced by ReleaseType::AsBatchString(), and ReleaseType::AsString().

00066                                     {
00067   return ((type & ReleaseType::DataMCMask) == ReleaseType::kIceberg);
00068 }

bool ReleaseType::IsIvy int  type  ) 
 

Definition at line 111 of file ReleaseType.cxx.

Referenced by ReleaseType::AsBatchString(), and ReleaseType::AsString().

00111                                  {
00112   return  ((type & ReleaseType::RecoMask) == ReleaseType::kIvy);
00113 }

bool ReleaseType::IsJicama int  type  ) 
 

Definition at line 70 of file ReleaseType.cxx.

Referenced by ReleaseType::AsBatchString(), and ReleaseType::AsString().

00070                                    {
00071   return ((type & ReleaseType::DataMCMask) == ReleaseType::kJicama);
00072 }

bool ReleaseType::IsJuniper int  type  ) 
 

Definition at line 115 of file ReleaseType.cxx.

Referenced by ReleaseType::AsBatchString(), and ReleaseType::AsString().

00115                                      {
00116   return  ((type & ReleaseType::RecoMask) == ReleaseType::kJuniper);
00117 }

bool ReleaseType::IsMC int  type  ) 
 

Definition at line 24 of file ReleaseType.cxx.

Referenced by ReleaseType::AsBatchString(), ReleaseType::AsString(), NCEventInfo::GetSKZPCalc(), and NCEventInfo::MasakiStyleCorrectionCedarPhyLinfix().

00024                                    { 
00025   return  ((type & ReleaseType::DataMCMask) > 0);
00026 }

bool ReleaseType::IsTest int  type  ) 
 

Definition at line 28 of file ReleaseType.cxx.

Referenced by ReleaseType::AsBatchString(), and ReleaseType::AsString().

00028                                      {
00029   return  ((type & ReleaseType::RecoTestMask) > 0);
00030 }

ReleaseType::Release_t ReleaseType::MakeReleaseType std::string  fTitle,
std::string  mcinfo = ""
 

Definition at line 293 of file ReleaseType.cxx.

Referenced by MNtpModule::Ana(), MadTVAnalysis::CreatePAN(), and NtpStRecord::GetRelease().

00294          : Deprecated from R1.28 on, meaning should not be used for
00295 //Dogwood and more modern releases.
00296 
00297 //  string relName = NtpStRecord->GetTitle();
00298 //  string mcinfo =  NtpStRecord->mchdr.geninfo.codename;
00299 /*
00300     Suggested Usage with NtpStRecord str;
00301 
00302     string relName = str->GetTitle();
00303     string mcinfo = "";
00304     if(vc.GetSimFlag() == SimFlag::kMC){
00305        mcinfo = "Carrot";
00306        string temp = str->mchdr.geninfo.codename;
00307        if(temp.size() != 0){   mcinfo = temp;  }
00308     }
00309     release = ReleaseType::MakeReleaseType(relName, mcinfo);
00310 */
00311 {
00312    string relName = fTitle;
00313    string reco = relName.substr(0,relName.find_first_of("("));
00314    ReleaseType::Release_t release = ReleaseType::kUnknown;
00315 
00316    //Setting for dealing with Cedar and Cedar Variants
00317    if(strstr(reco.c_str(), "CEDAR") != 0 || 
00318        strstr(reco.c_str(), "CHERRY") != 0 ){
00319 
00320       if(reco == "CEDAR"){
00321          release = ReleaseType::kCedar;   //Fine for Data or Carrot
00322          string temp = relName.substr(22,1);
00323          if(temp == "1") release = ReleaseType::kR1_24_1;
00324       }
00325 
00326       if(reco == "CEDAR_PHY"){
00327          release = ReleaseType::kCedarPhy;
00328          if(strstr(fTitle.c_str(), "Daikon") != 0)   release = ReleaseType::kR1_24_2;
00329 
00330          std::string software = relName.substr(relName.find_first_of(":")+1,
00331                relName.find_first_of(",") - relName.find_first_of(":") - 1);
00332 
00333          if(software == "R1.24.2") release = ReleaseType::kR1_24_2;
00334          if(software == "R1.24.3") release = ReleaseType::kR1_24_3;
00335 
00336       }
00337 
00338       if(reco == "CHERRY") release = ReleaseType::kR1_24_Cal;
00339    }
00340    else release = ReleaseType::kBirch;
00341 
00342 
00343    //Setting Data/MC version
00344    if(mcinfo.size() > 0){
00345      if(strstr(mcinfo.c_str(), "daikon") != 0)
00346         release += ReleaseType::kDaikon;
00347      else
00348         release += ReleaseType::kCarrot;
00349                                                                                 
00350      if(strstr(mcinfo.c_str(), "00") != 0) release += ReleaseType::k00;
00351      if(strstr(mcinfo.c_str(), "01") != 0) release += ReleaseType::k01;
00352      if(strstr(mcinfo.c_str(), "02") != 0) release += ReleaseType::k02;
00353      if(strstr(mcinfo.c_str(), "03") != 0) release += ReleaseType::k03;
00354      if(strstr(mcinfo.c_str(), "04") != 0) release += ReleaseType::k04;
00355      if(strstr(mcinfo.c_str(), "05") != 0) release += ReleaseType::k05;
00356      if(strstr(mcinfo.c_str(), "06") != 0) release += ReleaseType::k06;
00357      if(strstr(mcinfo.c_str(), "07") != 0) release += ReleaseType::k07;
00358      if(strstr(mcinfo.c_str(), "08") != 0) release += ReleaseType::k08;
00359      if(strstr(mcinfo.c_str(), "09") != 0) release += ReleaseType::k09;
00360    }
00361    else
00362      release += ReleaseType::kData;
00363  
00364   return release;
00365 }

ReleaseType::Release_t ReleaseType::StringToType const char *  nameChar  ) 
 

Definition at line 215 of file ReleaseType.cxx.

References ReleaseType::Release_t.

Referenced by MicroDSTMaker::ExtractNCCC(), NCEventInfo::FindMEGAFitWeight(), NCEventInfo::FindNeugenWeight(), NCAnalysisCuts::GetReleaseType(), NCEventInfo::GetShowerEnergy(), NCEventInfo::GetSKZPCalc(), NCEventInfo::GetTrackEnergy(), and NCEventInfo::MasakiStyleCorrectionCedarPhyLinfix().

00215                                                                   {
00216   string name(nameChar);
00217   Release_t type = 0x00;
00218 
00219   string dmc = name.substr(1+name.find(" "));
00220   if(dmc.find("Data") != string::npos) type += kData;
00221 
00222   // Now could just check the first letter if speed is an issue.
00223   else if(dmc.find("Avocado") != string::npos ) type += kAvocado;
00224   else if(dmc.find("Beet") != string::npos) type += kBeet;
00225   else if(dmc.find("Carrot") != string::npos) type += kCarrot;
00226   else if(dmc.find("Daikon") != string::npos) type += kDaikon;
00227   else if(dmc.find("Eggplant") != string::npos) type += kEggplant;
00228   else if(dmc.find("Fava") != string::npos) type += kFava;
00229   else if(dmc.find("Garlic") != string::npos) type += kGarlic;
00230   else if(dmc.find("Hops") != string::npos) type += kHops;
00231   else if(dmc.find("Iceberg") != string::npos) type += kIceberg;
00232   else if(dmc.find("Jicama") != string::npos) type += kJicama;
00233   // No good way to treat "unknown MC"; leave it as "kUnknown"
00234   else type = kUnknown;
00235 
00236   string dmcver = dmc.substr(1 + dmc.find_last_of("V"));
00237   if(dmcver.find("00") != string::npos) type += k00;  
00238   else if(dmcver.find("01") != string::npos) type += k01;
00239   else if(dmcver.find("02") != string::npos) type += k02;
00240   else if(dmcver.find("03") != string::npos) type += k03;
00241   else if(dmcver.find("04") != string::npos) type += k04; 
00242   else if(dmcver.find("05") != string::npos) type += k05;
00243   else if(dmcver.find("06") != string::npos) type += k06;
00244   else if(dmcver.find("07") != string::npos) type += k07;
00245   else if(dmcver.find("08") != string::npos) type += k08;
00246   else if(dmcver.find("09") != string::npos) type += k09;
00247   else if(dmcver.find("10") != string::npos) type += k10;
00248   else type += k00;
00249 
00250   string reco = name.substr(0, name.find(" "));
00251   if( type != kUnknown ){
00252     if (reco.find("Ash") != string::npos) type += kAsh;
00253     else if (reco.find("Birch") != string::npos) type += kBirch;
00254     else if (reco.find("Cedar") != string::npos){
00255       if(reco.find("CedarPhy") != string::npos) type += kCedar;
00256       else if(reco.find("Cedar_Phy") != string::npos) type += kCedar;
00257       else type += kCedar;
00258     }else if (reco.find("Dogwood") != string::npos){ 
00259       if(reco.find("Dogwood0") != string::npos) type += kDogwood;
00260       else if(reco.find("Dogwood1") != string::npos) type += kDogwood;
00261       else if(reco.find("Dogwood2") != string::npos) type += kDogwood;
00262       else if(reco.find("Dogwood3") != string::npos) type += kDogwood;
00263       type += kDogwood;
00264     }else if (reco.find("Elm") != string::npos) type += kElm;
00265     else if (reco.find("Fir") != string::npos) type += kFir;
00266     else if (reco.find("Ginkgo") != string::npos) type += kGinkgo;
00267     else if (reco.find("Hickory") != string::npos) type += kHickory;
00268     else if (reco.find("Ivy") != string::npos) type += kIvy;
00269     else if (reco.find("Juniper") != string::npos) type += kJuniper;
00270 
00271     if(name.find("Test")  != string::npos) type += kTest;
00272 
00273     // Unknown reconstruction is possible; just leave that bit 0.
00274 
00275     string rver = reco.substr(1 + reco.find_last_of("V"));
00276     if(rver.find("00") != string::npos) type += kR00;
00277     else if(rver.find("01") != string::npos) type += kR01;
00278     else if(rver.find("02") != string::npos) type += kR02;
00279     else if(rver.find("03") != string::npos) type += kR03;
00280     else if(rver.find("04") != string::npos) type += kR04;
00281     else if(rver.find("05") != string::npos) type += kR05;
00282     else if(rver.find("06") != string::npos) type += kR06;
00283     else if(rver.find("07") != string::npos) type += kR07;
00284     else if(rver.find("08") != string::npos) type += kR08;
00285     else if(rver.find("09") != string::npos) type += kR09;
00286     else if(rver.find("10") != string::npos) type += kR10;
00287     else type += kR00;
00288   }  // if (a known dmc type)
00289   
00290   return type;
00291 }


Variable Documentation

const Release_t ReleaseType::kBirchCarrot = kBirch | kCarrot [static]
 

Definition at line 217 of file ReleaseType.h.

const Release_t ReleaseType::kBirchData = kBirch | kData [static]
 

Definition at line 216 of file ReleaseType.h.

const Release_t ReleaseType::kCedar_Phy = kCedar | kR02 [static]
 

Definition at line 228 of file ReleaseType.h.

const Release_t ReleaseType::kCedar_PhyData = kCedar | kR02 | kData [static]
 

Definition at line 232 of file ReleaseType.h.

const Release_t ReleaseType::kCedarCarrot = kCedar | kCarrot [static]
 

Definition at line 219 of file ReleaseType.h.

const Release_t ReleaseType::kCedarDaikon = kCedar | kDaikon [static]
 

Definition at line 220 of file ReleaseType.h.

const Release_t ReleaseType::kCedarData = kCedar | kData [static]
 

Definition at line 218 of file ReleaseType.h.

const Release_t ReleaseType::kCedarPhy = kCedar | kR02 [static]
 

Definition at line 229 of file ReleaseType.h.

const Release_t ReleaseType::kCedarPhyDaikon = kCedarPhy | kDaikon [static]
 

Definition at line 233 of file ReleaseType.h.

const Release_t ReleaseType::kCedarPhyData = kCedar | kR02 | kData [static]
 

Definition at line 231 of file ReleaseType.h.

const Release_t ReleaseType::kDogwood0 = kDogwood | kR00 [static]
 

Definition at line 240 of file ReleaseType.h.

const Release_t ReleaseType::kDogwood0Daikon = kDogwood | kR00 | kDaikon [static]
 

Definition at line 246 of file ReleaseType.h.

const Release_t ReleaseType::kDogwood0Data = kDogwood | kR00 | kData [static]
 

Definition at line 245 of file ReleaseType.h.

const Release_t ReleaseType::kDogwood0Garlic = kDogwood | kR00 | kGarlic [static]
 

Definition at line 247 of file ReleaseType.h.

const Release_t ReleaseType::kDogwood0Hops = kDogwood | kR00 | kHops [static]
 

Definition at line 248 of file ReleaseType.h.

const Release_t ReleaseType::kDogwood1 = kDogwood | kR01 [static]
 

Definition at line 241 of file ReleaseType.h.

const Release_t ReleaseType::kDogwood1Daikon = kDogwood | kR01 | kDaikon [static]
 

Definition at line 251 of file ReleaseType.h.

const Release_t ReleaseType::kDogwood1Data = kDogwood | kR01 | kData [static]
 

Definition at line 250 of file ReleaseType.h.

const Release_t ReleaseType::kDogwood1Garlic = kDogwood | kR01 | kGarlic [static]
 

Definition at line 252 of file ReleaseType.h.

const Release_t ReleaseType::kDogwood1Hops = kDogwood | kR01 | kHops [static]
 

Definition at line 253 of file ReleaseType.h.

const Release_t ReleaseType::kDogwood2 = kDogwood | kR02 [static]
 

Definition at line 242 of file ReleaseType.h.

const Release_t ReleaseType::kDogwood2Daikon = kDogwood | kR02 | kDaikon [static]
 

Definition at line 256 of file ReleaseType.h.

const Release_t ReleaseType::kDogwood2Data = kDogwood | kR02 | kData [static]
 

Definition at line 255 of file ReleaseType.h.

const Release_t ReleaseType::kDogwood2Garlic = kDogwood | kR02 | kGarlic [static]
 

Definition at line 257 of file ReleaseType.h.

const Release_t ReleaseType::kDogwood2Hops = kDogwood | kR02 | kHops [static]
 

Definition at line 258 of file ReleaseType.h.

const Release_t ReleaseType::kDogwood3 = kDogwood | kR03 [static]
 

Definition at line 243 of file ReleaseType.h.

const Release_t ReleaseType::kDogwood3Daikon = kDogwood | kR03 | kDaikon [static]
 

Definition at line 261 of file ReleaseType.h.

const Release_t ReleaseType::kDogwood3Data = kDogwood | kR03 | kData [static]
 

Definition at line 260 of file ReleaseType.h.

const Release_t ReleaseType::kDogwood3Garlic = kDogwood | kR03 | kGarlic [static]
 

Definition at line 262 of file ReleaseType.h.

const Release_t ReleaseType::kDogwood3Hops = kDogwood | kR03 | kHops [static]
 

Definition at line 263 of file ReleaseType.h.

const Release_t ReleaseType::kR1_24_0 = kCedar | kR00 [static]
 

Definition at line 222 of file ReleaseType.h.

const Release_t ReleaseType::kR1_24_1 = kCedar | kR01 [static]
 

Definition at line 223 of file ReleaseType.h.

const Release_t ReleaseType::kR1_24_2 = kCedar | kR02 [static]
 

Definition at line 224 of file ReleaseType.h.

const Release_t ReleaseType::kR1_24_3 = kCedar | kR03 [static]
 

Definition at line 227 of file ReleaseType.h.

const Release_t ReleaseType::kR1_24_Cal = kCedar | kR08 [static]
 

Definition at line 225 of file ReleaseType.h.

const Release_t ReleaseType::kR1_24_CalB = kCedar | kR09 [static]
 

Definition at line 226 of file ReleaseType.h.

const Release_t ReleaseType::kR2_0_0 = kDogwood | kR00 [static]
 

Definition at line 235 of file ReleaseType.h.

const Release_t ReleaseType::kR2_0_1 = kDogwood | kR01 [static]
 

Definition at line 236 of file ReleaseType.h.

const Release_t ReleaseType::kR2_0_2 = kDogwood | kR02 [static]
 

Definition at line 237 of file ReleaseType.h.

const Release_t ReleaseType::kR2_0_3 = kDogwood | kR03 [static]
 

Definition at line 238 of file ReleaseType.h.


Generated on Mon Feb 15 11:08:10 2010 for loon by  doxygen 1.3.9.1