Detector description interface for MARTA Station-related data. More...
#include <cdet/Station.h>
Public Member Functions | |
const utl::TimeStamp & | GetCommissionTime () const |
Station commission time. More... | |
const utl::TimeRange & | GetCommissionTimeRange () const |
Station commission time range. More... | |
double | GetDeadTime () const |
const utl::TimeStamp & | GetDecommissionTime () const |
Station decommission time. More... | |
int | GetId () const |
Station ID. More... | |
std::vector< unsigned int > | GetListPadIds () const |
RPC readout parameters. More... | |
const std::string & | GetName () const |
Station name. More... | |
int | GetNumberPadsX () const |
RPC readout parameters. More... | |
int | GetNumberPadsY () const |
int | GetNumberRPCChambers () const |
Number of RPC Chambers. More... | |
double | GetPadArea () const |
unsigned int | GetPadId (const utl::Point &position) const |
utl::Point | GetPadPosition (const cevt::Pad &pad) const |
Pad position relative to center of the tank. More... | |
utl::Point | GetPadPosition (const unsigned int &padId) const |
double | GetPadSizeX () const |
double | GetPadSizeY () const |
utl::Point | GetPosition () const |
Station position in Site Cartesian Coordinates. More... | |
utl::CoordinateSystemPtr | GetRPCCoordinateSystem (unsigned int id) const |
std::vector< double > | GetRPCHousingInnerDimensions () const |
Size of the RPC aluminum housing. More... | |
std::vector< double > | GetRPCHousingThickness () const |
Thickness of walls of the RPC aluminum housing. More... | |
unsigned int | GetRPCId (const unsigned int &padId) const |
const utl::Point & | GetRPCPosition (const unsigned int id) const |
RPC position. More... | |
double | GetRPCRotation (const unsigned int id) const |
RPC rotation around its Z axis (axis perpendicular to RPC plane. More... | |
double | GetRPCSizeX () const |
Dimensions of the RPC chamber. More... | |
double | GetRPCSizeY () const |
double | GetSpacerThickness () const |
std::vector< double > | GetTankSupportCentralFootBaseDimensions () const |
std::vector< double > | GetTankSupportCentralFootDimensions () const |
std::vector< double > | GetTankSupportOuterFootBaseDimensions () const |
std::vector< double > | GetTankSupportOuterFootDimensions () const |
double | GetTankSupportOuterFootDistanceToCenter () const |
std::vector< double > | GetTankSupportTopSlabDimensions () const |
bool | IsDense () const |
Tells whether the station belongs to set of hypothetical "dense" stations. More... | |
bool | IsInEngineeringArray () const |
bool | IsInGrid (const cdet::CDetectorConstants::GridIndex index=cdet::CDetectorConstants::eStandard) const |
Tells whether the station is in the regular triangular grid. More... | |
Static Public Member Functions | |
static double | GetTimeBinning () |
Private Types | |
typedef std::bitset < CDetectorConstants::kGridIndexSize > | InGridType |
Private Member Functions | |
template<typename T > | |
det::VManager::Status | GetRPCData (const std::string &id, T &requestedData, const std::string &property, const std::string &component, const std::string &errorMsg, const bool throwOnFailure=true) const |
template<typename T > | |
det::VManager::Status | GetStationData (T &requestedData, const std::string &property, const std::string &component, const std::string &errorMsg, const bool throwOnFailure=true) const |
void | NotFoundAndThrow (const std::string &msg) const |
Station | operator= (const Station &) |
Station (const int id) | |
Station (const Station &) | |
void | Update () const |
~Station () | |
Static Private Attributes | |
static const double | kTimeBinSize = 1.0*utl::nanosecond |
Friends | |
class | CDetector |
Detector description interface for MARTA Station-related data.
Definition at line 46 of file CDetector/Station.h.
|
private |
Definition at line 235 of file CDetector/Station.h.
|
private |
Definition at line 35 of file CDetector/Station.cc.
References fRPCCoordinateSystems, fRPCPositions, and fRPCRotations.
|
private |
Definition at line 65 of file CDetector/Station.cc.
References fRPCCoordinateSystems, fRPCPositions, and fRPCRotations.
|
private |
|
inline |
Station commission time.
Definition at line 64 of file CDetector/Station.h.
References GetCommissionTimeRange(), and utl::TimeRange::GetStartTime().
const TimeRange & Station::GetCommissionTimeRange | ( | ) | const |
Station commission time range.
Definition at line 86 of file CDetector/Station.cc.
References fCommissionTimeRange, fDense, fId, utl::Validated< T >::Get(), GetStationData(), and utl::Validated< T >::IsValid().
Referenced by GetCommissionTime(), GetDecommissionTime(), cdet::CDetector::GetStation(), and cdet::CDetector::Update().
double Station::GetDeadTime | ( | ) | const |
Definition at line 510 of file CDetector/Station.cc.
References fDeadTime, utl::Validated< T >::Get(), GetStationData(), utl::Validated< T >::IsValid(), and utl::Validated< T >::SetValid().
Referenced by RPCElectronicsSimulatorLX::RPCElectronicsSimulator::Run().
|
inline |
Station decommission time.
Definition at line 68 of file CDetector/Station.h.
References GetCommissionTimeRange(), and utl::TimeRange::GetStopTime().
|
inline |
vector< unsigned int > Station::GetListPadIds | ( | ) | const |
RPC readout parameters.
Definition at line 347 of file CDetector/Station.cc.
References fListPadIds, utl::Validated< T >::Get(), GetNumberPadsX(), GetNumberPadsY(), GetNumberRPCChambers(), utl::Validated< T >::IsValid(), and utl::Validated< T >::SetValid().
const string & Station::GetName | ( | ) | const |
Station name.
Definition at line 74 of file CDetector/Station.cc.
References fName, utl::Validated< T >::Get(), GetStationData(), utl::Validated< T >::IsValid(), and utl::Validated< T >::SetValid().
int Station::GetNumberPadsX | ( | ) | const |
RPC readout parameters.
Definition at line 363 of file CDetector/Station.cc.
References fNumberPadsX, utl::Validated< T >::Get(), GetStationData(), utl::Validated< T >::IsValid(), and utl::Validated< T >::SetValid().
Referenced by GetListPadIds(), GetPadId(), GetPadPosition(), and GetPadSizeX().
int Station::GetNumberPadsY | ( | ) | const |
Definition at line 375 of file CDetector/Station.cc.
References fNumberPadsY, utl::Validated< T >::Get(), GetStationData(), utl::Validated< T >::IsValid(), and utl::Validated< T >::SetValid().
Referenced by GetListPadIds(), and GetPadSizeY().
int Station::GetNumberRPCChambers | ( | ) | const |
Number of RPC Chambers.
Definition at line 146 of file CDetector/Station.cc.
References fNumberRPCChambers, utl::Validated< T >::Get(), GetStationData(), utl::Validated< T >::IsValid(), and utl::Validated< T >::SetValid().
Referenced by GetListPadIds(), GetPadId(), and G4StationSimulatorOG::G4StationConstruction::SetMARTAParameters().
double Station::GetPadArea | ( | ) | const |
Definition at line 411 of file CDetector/Station.cc.
References fPadArea, utl::Validated< T >::Get(), GetPadSizeX(), GetPadSizeY(), utl::Validated< T >::IsValid(), and utl::Validated< T >::SetValid().
unsigned int Station::GetPadId | ( | const utl::Point & | position | ) | const |
Definition at line 459 of file CDetector/Station.cc.
References utl::abs(), GetNumberPadsX(), GetNumberRPCChambers(), GetPadSizeX(), GetPadSizeY(), GetRPCCoordinateSystem(), GetRPCHousingInnerDimensions(), GetRPCSizeX(), GetRPCSizeY(), utl::BasicVector< HepVector >::GetX(), utl::BasicVector< HepVector >::GetY(), utl::BasicVector< HepVector >::GetZ(), and max.
Referenced by RPCSimulatorLX::RPCSimulator::Run().
Pad position relative to center of the tank.
Definition at line 423 of file CDetector/Station.cc.
References cevt::Pad::GetId().
Point Station::GetPadPosition | ( | const unsigned int & | padId | ) | const |
Definition at line 431 of file CDetector/Station.cc.
References GetNumberPadsX(), GetPadSizeX(), GetPadSizeY(), GetRPCCoordinateSystem(), GetRPCSizeX(), GetRPCSizeY(), and galactic::meter.
double Station::GetPadSizeX | ( | ) | const |
Definition at line 387 of file CDetector/Station.cc.
References fPadSizeX, utl::Validated< T >::Get(), GetNumberPadsX(), GetRPCSizeX(), utl::Validated< T >::IsValid(), and utl::Validated< T >::SetValid().
Referenced by GetPadArea(), GetPadId(), and GetPadPosition().
double Station::GetPadSizeY | ( | ) | const |
Definition at line 399 of file CDetector/Station.cc.
References fPadSizeY, utl::Validated< T >::Get(), GetNumberPadsY(), GetRPCSizeY(), utl::Validated< T >::IsValid(), and utl::Validated< T >::SetValid().
Referenced by GetPadArea(), GetPadId(), and GetPadPosition().
Point Station::GetPosition | ( | ) | const |
Station position in Site Cartesian Coordinates.
Definition at line 110 of file CDetector/Station.cc.
References fDense, fEllipsoid, fId, fPosition, utl::Validated< T >::Get(), utl::UTMPoint::GetPoint(), GetStationData(), and utl::Validated< T >::IsValid().
CoordinateSystemPtr Station::GetRPCCoordinateSystem | ( | unsigned int | id | ) | const |
Definition at line 203 of file CDetector/Station.cc.
References fwk::LocalCoordinateSystemConstructor< Policy >::Create(), fId, fRPCCoordinateSystems, GetRPCHousingInnerDimensions(), GetRPCHousingThickness(), GetRPCPosition(), and GetRPCRotation().
Referenced by GetPadId(), and GetPadPosition().
|
inlineprivate |
Definition at line 199 of file CDetector/Station.h.
References det::VManager::eNotFound, fStationIdString, det::VManager::GetData(), and NotFoundAndThrow().
Referenced by GetRPCPosition(), and GetRPCRotation().
vector< double > Station::GetRPCHousingInnerDimensions | ( | ) | const |
Size of the RPC aluminum housing.
Definition at line 297 of file CDetector/Station.cc.
References fRPCHousingInnerDimensions, utl::Validated< T >::Get(), GetStationData(), utl::Validated< T >::IsValid(), and utl::Validated< T >::SetValid().
Referenced by GetPadId(), GetRPCCoordinateSystem(), and G4StationSimulatorOG::G4StationConstruction::SetMARTAParameters().
vector< double > Station::GetRPCHousingThickness | ( | ) | const |
Thickness of walls of the RPC aluminum housing.
Definition at line 309 of file CDetector/Station.cc.
References fRPCHousingThickness, utl::Validated< T >::Get(), GetStationData(), utl::Validated< T >::IsValid(), and utl::Validated< T >::SetValid().
Referenced by GetRPCCoordinateSystem(), and G4StationSimulatorOG::G4StationConstruction::SetMARTAParameters().
|
inline |
Definition at line 80 of file CDetector/Station.h.
const Point & Station::GetRPCPosition | ( | const unsigned int | id | ) | const |
RPC position.
Definition at line 159 of file CDetector/Station.cc.
References fId, fRPCPositions, sdet::Station::GetHeight(), sdet::Station::GetLocalCoordinateSystem(), GetRPCData(), sdet::Station::GetThickness(), and galactic::second.
Referenced by GetRPCCoordinateSystem(), and G4StationSimulatorOG::G4StationConstruction::SetMARTAParameters().
double Station::GetRPCRotation | ( | const unsigned int | id | ) | const |
RPC rotation around its Z axis (axis perpendicular to RPC plane.
Definition at line 185 of file CDetector/Station.cc.
References fRPCRotations, and GetRPCData().
Referenced by GetRPCCoordinateSystem(), and G4StationSimulatorOG::G4StationConstruction::SetMARTAParameters().
double Station::GetRPCSizeX | ( | ) | const |
Dimensions of the RPC chamber.
RPC chamber parameters.
Simulations use this to set the radius of the RPC chamber.
Definition at line 322 of file CDetector/Station.cc.
References fRPCSizeX, utl::Validated< T >::Get(), GetStationData(), utl::Validated< T >::IsValid(), and utl::Validated< T >::SetValid().
Referenced by GetPadId(), GetPadPosition(), GetPadSizeX(), and G4StationSimulatorOG::G4StationConstruction::SetMARTAParameters().
double Station::GetRPCSizeY | ( | ) | const |
Definition at line 334 of file CDetector/Station.cc.
References fRPCSizeY, utl::Validated< T >::Get(), GetStationData(), utl::Validated< T >::IsValid(), and utl::Validated< T >::SetValid().
Referenced by GetPadId(), GetPadPosition(), GetPadSizeY(), and G4StationSimulatorOG::G4StationConstruction::SetMARTAParameters().
double cdet::Station::GetSpacerThickness | ( | ) | const |
|
inlineprivate |
Helper method to do the redundant work of preparing requests for station data, sending it to the manager and reporting any errors. The errorMsg argument is used to construct some hopefully meaningful error message if the requested component is not found. It should have a description in some human language of what was not located.
Definition at line 176 of file CDetector/Station.h.
References det::VManager::eNotFound, fStationIdString, det::VManager::GetData(), and NotFoundAndThrow().
Referenced by GetCommissionTimeRange(), GetDeadTime(), GetName(), GetNumberPadsX(), GetNumberPadsY(), GetNumberRPCChambers(), GetPosition(), GetRPCHousingInnerDimensions(), GetRPCHousingThickness(), GetRPCSizeX(), GetRPCSizeY(), GetTankSupportCentralFootBaseDimensions(), GetTankSupportCentralFootDimensions(), GetTankSupportOuterFootBaseDimensions(), GetTankSupportOuterFootDimensions(), GetTankSupportOuterFootDistanceToCenter(), GetTankSupportTopSlabDimensions(), and IsInGrid().
vector< double > Station::GetTankSupportCentralFootBaseDimensions | ( | ) | const |
Definition at line 249 of file CDetector/Station.cc.
References fTankSupportCentralFootBaseDimensions, utl::Validated< T >::Get(), GetStationData(), utl::Validated< T >::IsValid(), and utl::Validated< T >::SetValid().
Referenced by G4StationSimulatorOG::G4StationConstruction::SetMARTAParameters().
vector< double > Station::GetTankSupportCentralFootDimensions | ( | ) | const |
Definition at line 237 of file CDetector/Station.cc.
References fTankSupportCentralFootDimensions, utl::Validated< T >::Get(), GetStationData(), utl::Validated< T >::IsValid(), and utl::Validated< T >::SetValid().
Referenced by G4StationSimulatorOG::G4StationConstruction::SetMARTAParameters().
vector< double > Station::GetTankSupportOuterFootBaseDimensions | ( | ) | const |
Definition at line 273 of file CDetector/Station.cc.
References fTankSupportOuterFootBaseDimensions, utl::Validated< T >::Get(), GetStationData(), utl::Validated< T >::IsValid(), and utl::Validated< T >::SetValid().
Referenced by G4StationSimulatorOG::G4StationConstruction::SetMARTAParameters().
vector< double > Station::GetTankSupportOuterFootDimensions | ( | ) | const |
Definition at line 261 of file CDetector/Station.cc.
References fTankSupportOuterFootDimensions, utl::Validated< T >::Get(), GetStationData(), utl::Validated< T >::IsValid(), and utl::Validated< T >::SetValid().
Referenced by G4StationSimulatorOG::G4StationConstruction::SetMARTAParameters().
double Station::GetTankSupportOuterFootDistanceToCenter | ( | ) | const |
Definition at line 285 of file CDetector/Station.cc.
References fTankSupportOuterFootDistanceToCenter, utl::Validated< T >::Get(), GetStationData(), utl::Validated< T >::IsValid(), and utl::Validated< T >::SetValid().
Referenced by G4StationSimulatorOG::G4StationConstruction::SetMARTAParameters().
vector< double > Station::GetTankSupportTopSlabDimensions | ( | ) | const |
Definition at line 225 of file CDetector/Station.cc.
References fTankSupportTopSlabDimensions, utl::Validated< T >::Get(), GetStationData(), utl::Validated< T >::IsValid(), and utl::Validated< T >::SetValid().
Referenced by G4StationSimulatorOG::G4StationConstruction::SetMARTAParameters().
|
inlinestatic |
Definition at line 55 of file CDetector/Station.h.
References kTimeBinSize.
|
inline |
Tells whether the station belongs to set of hypothetical "dense" stations.
So-called "dense" stations can be placed in different locations for each event in order to, for example, sample the shower at 1000 m from the core in the shower coordinate system
Definition at line 145 of file CDetector/Station.h.
References fDense.
Referenced by cdet::CDetector::GetStation().
|
inline |
Definition at line 147 of file CDetector/Station.h.
bool Station::IsInGrid | ( | const cdet::CDetectorConstants::GridIndex | index = cdet::CDetectorConstants::eStandard | ) | const |
Tells whether the station is in the regular triangular grid.
Definition at line 522 of file CDetector/Station.cc.
References data, cdet::CDetectorConstants::eAny, fDense, fInGrid, utl::Validated< T >::Get(), GetStationData(), utl::Validated< T >::IsValid(), and utl::Validated< T >::SetValid().
|
private |
Definition at line 549 of file CDetector/Station.cc.
References fStationIdString.
Referenced by GetRPCData(), and GetStationData().
|
private |
Definition at line 560 of file CDetector/Station.cc.
References fDense, fListPadIds, fPosition, fReferenceSystem, fRPCCoordinateSystems, fRPCPositions, fRPCRotations, utl::Validated< T >::Get(), and utl::Validated< T >::SetValid().
Referenced by cdet::CDetector::GetStation(), and cdet::CDetector::Update().
|
friend |
Definition at line 277 of file CDetector/Station.h.
|
mutableprivate |
Definition at line 273 of file CDetector/Station.h.
Referenced by GetCommissionTimeRange().
|
mutableprivate |
Definition at line 264 of file CDetector/Station.h.
Referenced by GetDeadTime().
|
private |
Definition at line 275 of file CDetector/Station.h.
Referenced by GetCommissionTimeRange(), GetPosition(), IsDense(), IsInGrid(), Update(), and cdet::CDetector::Update().
|
mutableprivate |
Definition at line 270 of file CDetector/Station.h.
Referenced by GetPosition().
|
mutableprivate |
Definition at line 272 of file CDetector/Station.h.
|
private |
Definition at line 226 of file CDetector/Station.h.
Referenced by GetCommissionTimeRange(), GetId(), GetPosition(), GetRPCCoordinateSystem(), and GetRPCPosition().
|
mutableprivate |
Definition at line 236 of file CDetector/Station.h.
Referenced by IsInGrid(), and cdet::CDetector::Update().
|
mutableprivate |
Definition at line 271 of file CDetector/Station.h.
|
mutableprivate |
RPC readout parameters.
Definition at line 257 of file CDetector/Station.h.
Referenced by GetListPadIds(), and Update().
|
mutableprivate |
Definition at line 234 of file CDetector/Station.h.
Referenced by GetName().
|
mutableprivate |
Definition at line 258 of file CDetector/Station.h.
Referenced by GetNumberPadsX().
|
mutableprivate |
Definition at line 259 of file CDetector/Station.h.
Referenced by GetNumberPadsY().
|
mutableprivate |
Definition at line 238 of file CDetector/Station.h.
Referenced by GetNumberRPCChambers().
|
mutableprivate |
Definition at line 263 of file CDetector/Station.h.
Referenced by GetPadArea().
|
mutableprivate |
Definition at line 261 of file CDetector/Station.h.
Referenced by GetPadSizeX().
|
mutableprivate |
Definition at line 262 of file CDetector/Station.h.
Referenced by GetPadSizeY().
|
mutableprivate |
Definition at line 267 of file CDetector/Station.h.
Referenced by GetPosition(), and Update().
|
mutableprivate |
Definition at line 266 of file CDetector/Station.h.
Referenced by Update().
|
mutableprivate |
Definition at line 241 of file CDetector/Station.h.
Referenced by GetRPCCoordinateSystem(), Station(), Update(), and ~Station().
|
mutableprivate |
Definition at line 250 of file CDetector/Station.h.
Referenced by GetRPCHousingInnerDimensions().
|
mutableprivate |
Definition at line 251 of file CDetector/Station.h.
Referenced by GetRPCHousingThickness().
|
mutableprivate |
Definition at line 239 of file CDetector/Station.h.
Referenced by GetRPCPosition(), Station(), Update(), and ~Station().
|
mutableprivate |
Definition at line 240 of file CDetector/Station.h.
Referenced by GetRPCRotation(), Station(), Update(), and ~Station().
|
mutableprivate |
Definition at line 253 of file CDetector/Station.h.
Referenced by GetRPCSizeX().
|
mutableprivate |
Definition at line 254 of file CDetector/Station.h.
Referenced by GetRPCSizeY().
|
private |
Definition at line 229 of file CDetector/Station.h.
Referenced by GetRPCData(), GetStationData(), and NotFoundAndThrow().
|
mutableprivate |
Definition at line 245 of file CDetector/Station.h.
Referenced by GetTankSupportCentralFootBaseDimensions().
|
mutableprivate |
Definition at line 244 of file CDetector/Station.h.
Referenced by GetTankSupportCentralFootDimensions().
|
mutableprivate |
Definition at line 247 of file CDetector/Station.h.
Referenced by GetTankSupportOuterFootBaseDimensions().
|
mutableprivate |
Definition at line 246 of file CDetector/Station.h.
Referenced by GetTankSupportOuterFootDimensions().
|
mutableprivate |
Definition at line 248 of file CDetector/Station.h.
Referenced by GetTankSupportOuterFootDistanceToCenter().
|
mutableprivate |
Definition at line 243 of file CDetector/Station.h.
Referenced by GetTankSupportTopSlabDimensions().
|
staticprivate |
Definition at line 52 of file CDetector/Station.h.
Referenced by GetTimeBinning().