48 TGeoPhysicalNode* node =
nullptr);
119 if ( fStations.find(stationId) == fStations.end() )
return NULL;
120 return fStations[stationId];
147 Bool_t
Init(
const char* geometryFile =
nullptr,
148 const char* sensorParameterFile =
nullptr);
154 Bool_t
IsInit()
const {
return fIsInitialised; }
167 for (
auto it = fSensors.begin(); it != fSensors.end(); it++)
168 LOG(info) << it->second->ToString();
193 Double_t stereoF, Double_t stereoB);
203 fDigitizer = digitizer;
214 fSettings = settings;
233 Int_t nAdc, Double_t timeResolution,
234 Double_t deadTime, Double_t noise,
235 Double_t zeroNoiseRate,
236 Double_t fracDeadChannels);
280 Double_t temperature, Double_t cCoupling,
281 Double_t cInterstrip);
305 Bool_t fIsInitialised;
307 Int_t fNofSensorsDefault;
310 Double_t fSensorDinact;
311 Double_t fSensorPitch;
312 Double_t fSensorStereoF;
313 Double_t fSensorStereoB;
316 std::map<Int_t, BmnSsdSensor*> fSensors;
319 std::map<Int_t, BmnSsdModule*> fModules;
322 std::vector<BmnSsdModule*> fModuleVector;
327 std::map<Int_t, BmnSsdStation*> fStations;
334 Int_t CreateStations();
345 Bool_t ReadGeometry(TGeoManager* geoManager);
356 Bool_t ReadGeometry(
const char* fileName);
368 Int_t ReadSensorParameters(
const char* fileName);
Parameters for SSD digitization.
Task class for simulating the detector response of the SSD.
Class representing an element of the SSD setup.
Class representing an instance of a readout unit in the BMN-SSD.
Class representing an instance of a sensor in the BMN-SSD.
Class representing the top level of the SSD setup.
Int_t GetStationNumber(Int_t address)
Int_t GetNofStations() const
void SetDefaultSensorParameters(Double_t dInact, Double_t pitch, Double_t stereoF, Double_t stereoB)
Set the default sensor parameters.
static BmnSsdSetup * Instance()
Int_t SetModuleParameters(Double_t dynRange, Double_t threshold, Int_t nAdc, Double_t timeResolution, Double_t deadTime, Double_t noise, Double_t zeroNoiseRate, Double_t fracDeadChannels)
Set parameters for all modules.
Int_t ModifyStripPitch(Double_t pitch)
Modify the strip pitch for all sensors.
Int_t GetNofSensors() const
Bool_t IsInit() const
Initialisation status.
void SetDigitizer(BmnSsdDigitize *digitizer)
Set the digitiser task.
const char * GetLevelName(Int_t level)
BmnSsdStation * GetStation(Int_t stationId)
Int_t GetNofModules() const
BmnSsdDigitize * GetDigitizer() const
BmnSsdModule * GetModule(Int_t index)
Get a module from the module array.
Bool_t Init(const char *geometryFile=nullptr, const char *sensorParameterFile=nullptr)
Initialise the setup.
Int_t SetSensorConditions()
Set conditions for all sensors (same values for all)
BmnSsdDigitizeParameters * GetDigiParameters() const
BmnSsdElement * GetElement(Int_t address, Int_t level)
void SetDigiParameters(BmnSsdDigitizeParameters *settings)
Set the digitiser parameters.
BmnSsdSensor * AssignSensor(Int_t address, TGeoPhysicalNode *node=nullptr)
BmnSsdSensor * DefaultSensor(Int_t address, TGeoPhysicalNode *node)
Instantiate the default sensor class for a given node.
Class representing a station of the SsdSystem.