CbmRoot
Loading...
Searching...
No Matches
CbmFsdDigi.cxx
Go to the documentation of this file.
1/* Copyright (C) 2023 Physikalisches Institut, Eberhard Karls Universitaet Tuebingen, Tuebingen
2 SPDX-License-Identifier: GPL-3.0-only
3 Authors: Volker Friese, Florian Uhlig, Lukas Chlad [committer] */
4
12#include "CbmFsdDigi.h"
13
14#include <iomanip> // for hex, setw, setfill, fixed, setprecission
15#include <sstream> // for operator<<, basic_ostream, char_trait
16#include <string> // for basic_string
17
18// --- Set address from module and section number
19// --- version in CbmFsdAddress is taken the latest
20void CbmFsdDigi::SetAddress(uint32_t unitId, uint32_t moduleId, uint32_t photodetId)
21{
22 fAddress = CbmFsdAddress::GetAddress(unitId, moduleId, photodetId);
23}
24
25
26// --- Info to string
27std::string CbmFsdDigi::ToString() const
28{
29 // Example output
30 // CbmFsdDigi: address = 0x00001018 Charge = 0.011590 Time = 1006.438294
31
32 std::stringstream ss;
33 ss << "CbmFsdDigi: address = 0x" << std::uppercase << std::hex << std::setw(8) << std::setfill('0') << fAddress
34 << " Charge = " << std::fixed << std::setprecision(6) << fEdep << " Time = " << fTime;
35 return ss.str();
36}
37
38#ifndef NO_ROOT
40#endif
ClassImp(CbmConverterManager)
Data class for FSD digital information.
Definition CbmFsdDigi.h:36
double fEdep
Time of measurement [ns].
Definition CbmFsdDigi.h:157
uint32_t fAddress
Definition CbmFsdDigi.h:155
std::string ToString() const
String output.
double fTime
Unique channel address.
Definition CbmFsdDigi.h:156
void SetAddress(uint32_t address)
Definition CbmFsdDigi.h:142
int32_t GetAddress(uint32_t Unit=0, uint32_t Module=0, uint32_t PhotoDet=0, uint32_t Version=kCurrentVersion)
Construct address.