CbmRoot
|
Setup provider with local (svn) repository functionality. More...
#include <CbmGeoSetupRepoProvider.h>
Public Member Functions | |
virtual std::vector< std::string > | GetSetupTags () |
Abstract method to get the list of setup tags. More... | |
virtual std::vector< std::string > | GetFieldTags () |
Abstract method to get the list of field tags. More... | |
virtual std::vector< std::string > | GetMediaTags () |
Abstract method to get the list of media tags. More... | |
virtual CbmGeoSetup | GetSetupByTag (std::string setupTag, std::string revision) |
virtual CbmGeoSetupModule | GetModuleByTag (ECbmModuleId moduleId, std::string tag) |
Abstract method for constructing the module by id and tag. More... | |
virtual CbmGeoSetupField | GetFieldByTag (std::string tag) |
Abstract method for constructing the field by tag. More... | |
virtual CbmGeoSetupMedia | GetMediaByTag (std::string tag) |
Abstract method for constructing the media by tag. More... | |
virtual void | LoadSetup (std::string setupTag, std::string revision="") |
void | SetModuleTag (ECbmModuleId moduleId, std::string tag, Bool_t active) |
Loads the detector with a tag into setup, will invoke GetModuleByTag. More... | |
void | RemoveModule (ECbmModuleId moduleId) |
Removes the module from setup. More... | |
void | SetFieldTag (std::string tag) |
Loads the field with a tag and adds it to the setup. More... | |
void | RegisterSetup () |
Registers the previously loaded setup with FairRoot. Replaces the registerSetup.C macro. More... | |
void | Reset () |
Resets the setup to default (empty) More... | |
CbmGeoSetup & | GetSetup () |
Direct access to underlying geometry setup representation. Allows for fine-tuning of parameters, for exmaple, transformation matrices. More... | |
Protected Member Functions | |
CbmGeoSetupModule | GetDefaultCaveModule () |
Gets defauk cave if none was provided by the other means. More... | |
Protected Attributes | |
CbmGeoSetup | fSetup {} |
Private Member Functions | |
ClassDef (CbmGeoSetupRepoProvider, 1) | |
Setup provider with local (svn) repository functionality.
This class implements the CbmGeoSetupProvider interface to fetch available setups, fields and media definitions from filesystem. This class works with the svn repository and local filesystem. Revisions, dates and authors of changes are fetched directly from svn. Setup definition is parsed from setup files like setup_sis100_electron.C with regular expressions and follows the established scheme of setup loading.
Definition at line 21 of file CbmGeoSetupRepoProvider.h.
|
private |
|
protectedinherited |
Gets defauk cave if none was provided by the other means.
Definition at line 175 of file CbmGeoSetupProvider.cxx.
References kCave, CbmGeoSetupModule::SetFilePath(), CbmGeoSetupModule::SetModuleId(), CbmGeoSetupModule::SetName(), and CbmGeoSetupModule::SetTag().
Referenced by GetSetupByTag(), and CbmGeoSetupDbProvider::LoadSetup().
|
virtual |
Abstract method for constructing the field by tag.
Implements CbmGeoSetupProvider.
Definition at line 286 of file CbmGeoSetupRepoProvider.cxx.
References CbmGeoSetupProvider::fSetup, CbmGeoSetup::GetField(), CbmGeoSetupField::SetFilePath(), and CbmGeoSetupField::SetTag().
Referenced by GetSetupByTag().
|
virtual |
Abstract method to get the list of field tags.
Implements CbmGeoSetupProvider.
Definition at line 100 of file CbmGeoSetupRepoProvider.cxx.
|
virtual |
Abstract method for constructing the media by tag.
Implements CbmGeoSetupProvider.
Definition at line 309 of file CbmGeoSetupRepoProvider.cxx.
References CbmGeoSetupProvider::fSetup, CbmGeoSetup::GetMedia(), CbmGeoSetupMedia::SetFilePath(), and CbmGeoSetupMedia::SetTag().
Referenced by GetSetupByTag().
|
virtual |
Abstract method to get the list of media tags.
Implements CbmGeoSetupProvider.
Definition at line 106 of file CbmGeoSetupRepoProvider.cxx.
|
virtual |
Abstract method for constructing the module by id and tag.
Implements CbmGeoSetupProvider.
Definition at line 236 of file CbmGeoSetupRepoProvider.cxx.
References CbmGeoSetupModule::SetActive(), CbmGeoSetupModule::SetFilePath(), CbmGeoSetupModule::SetModuleId(), CbmGeoSetupModule::SetName(), CbmGeoSetupModule::SetTag(), and split().
Referenced by GetSetupByTag().
|
inlineinherited |
Direct access to underlying geometry setup representation. Allows for fine-tuning of parameters, for exmaple, transformation matrices.
Definition at line 62 of file CbmGeoSetupProvider.h.
References CbmGeoSetupProvider::fSetup.
Referenced by CbmSetup::CreateFieldMap(), CbmSetup::GetGeoFileName(), CbmSetup::GetGeoTag(), CbmSetup::GetMediaFilePath(), CbmSetup::GetNofModules(), CbmSetup::IsActive(), CbmSetup::SetActive(), CbmSetup::SetField(), CbmSetup::SetFieldScale(), CbmSetup::SetMediaFilePath(), CbmSetup::SetModule(), and CbmSetup::ToString().
|
virtual |
Gets setup from local repository by tag. A file like setup_sis100_electron.C will be parsed for its content with regular expressions and information about modules, media and field will be extracted. revision is ignored
Implements CbmGeoSetupProvider.
Definition at line 116 of file CbmGeoSetupRepoProvider.cxx.
References CbmGeoSetupProvider::fSetup, CbmGeoSetupProvider::GetDefaultCaveModule(), GetFieldByTag(), CbmGeoSetupField::GetMatrix(), GetMediaByTag(), GetModuleByTag(), CbmGeoSetup::GetModuleMap(), CbmGeoSetup::GetTag(), kCave, CbmGeoSetup::SetField(), CbmGeoSetup::SetMedia(), CbmGeoSetup::SetModuleMap(), CbmGeoSetup::SetName(), CbmGeoSetupField::SetScale(), and CbmGeoSetup::SetTag().
Referenced by LoadSetup().
|
virtual |
Abstract method to get the list of setup tags.
Implements CbmGeoSetupProvider.
Definition at line 94 of file CbmGeoSetupRepoProvider.cxx.
|
virtual |
Loads setup from local repository by tag. See GetSetupByTag for actual implementation. revision is ignored
Implements CbmGeoSetupProvider.
Definition at line 343 of file CbmGeoSetupRepoProvider.cxx.
References CbmGeoSetupProvider::fSetup, and GetSetupByTag().
|
inherited |
Registers the previously loaded setup with FairRoot. Replaces the registerSetup.C macro.
Definition at line 78 of file CbmGeoSetupProvider.cxx.
References counter, CbmGeoSetupProvider::fSetup, CbmGeoSetupMedia::GetFilePath(), CbmGeoSetup::GetMedia(), CbmGeoSetup::GetModuleMap(), CbmGeoSetup::GetName(), kCave, kHodo, kMagnet, kMuch, kMvd, kPipe, kPlatform, kPsd, kRich, kSts, kTarget, kTof, kTrd, and split().
Referenced by CbmSetup::RegisterSetup().
|
inherited |
Removes the module from setup.
Definition at line 65 of file CbmGeoSetupProvider.cxx.
References CbmGeoSetupProvider::fSetup, and CbmGeoSetup::GetModuleMap().
Referenced by CbmSetup::RemoveModule().
|
inherited |
Resets the setup to default (empty)
Definition at line 173 of file CbmGeoSetupProvider.cxx.
References CbmGeoSetupProvider::fSetup.
Referenced by CbmSetup::Clear().
|
inherited |
Loads the field with a tag and adds it to the setup.
tag | field tag to load |
Definition at line 69 of file CbmGeoSetupProvider.cxx.
References CbmGeoSetupProvider::fSetup, CbmGeoSetup::GetField(), CbmGeoSetupProvider::GetFieldByTag(), CbmGeoSetupField::GetMatrix(), CbmGeoSetupField::GetScale(), CbmGeoSetup::SetField(), CbmGeoSetupField::SetMatrix(), and CbmGeoSetupField::SetScale().
|
inherited |
Loads the detector with a tag into setup, will invoke GetModuleByTag.
moduleId | ECbmModuleId @patam tag module tag to load |
active | indicates if the module will be treated as active in Monte-Carlo, exact treatment depends on actual implementation of a FairModule |
Definition at line 57 of file CbmGeoSetupProvider.cxx.
References CbmGeoSetupProvider::fSetup, CbmGeoSetupProvider::GetModuleByTag(), CbmGeoSetup::GetModuleMap(), and CbmGeoSetupModule::SetActive().
Referenced by CbmSetup::SetModule().
|
protectedinherited |
Definition at line 90 of file CbmGeoSetupProvider.h.
Referenced by GetFieldByTag(), GetMediaByTag(), CbmGeoSetupProvider::GetSetup(), GetSetupByTag(), LoadSetup(), CbmGeoSetupDbProvider::LoadSetup(), CbmGeoSetupProvider::RegisterSetup(), CbmGeoSetupProvider::RemoveModule(), CbmGeoSetupProvider::Reset(), CbmGeoSetupProvider::SetFieldTag(), and CbmGeoSetupProvider::SetModuleTag().