ATLAS Offline Software
Loading...
Searching...
No Matches
CscRawData Class Referencefinal

Class to hold the electronic output for a single CSC readout channel: n sampling ADC data + the address (Identifier of strip == use hash id) More...

#include <CscRawData.h>

Collaboration diagram for CscRawData:

Public Member Functions

 CscRawData ()
 default constructor
 CscRawData (const std::vector< uint16_t > &p_amp, uint32_t address, uint16_t id)
 constructor for a single strip
 CscRawData (const std::vector< uint16_t > &p_amp, uint32_t address, uint16_t id, uint16_t rpuID)
 single strip constructor with SPU information
 CscRawData (const std::vector< uint16_t > &p_amp, uint32_t address, uint16_t id, uint16_t rpuID, uint16_t width)
 cluster of strip constructor with cluster width and SPU identifier
 CscRawData (const std::vector< uint16_t > &p_amp, uint32_t address, uint16_t id, uint16_t time, uint16_t rpuID, uint16_t width, uint32_t hashId)
 full constructor for cluster with timing information
 CscRawData (const CscRawData &)=default
 CscRawData (CscRawData &&)=default
CscRawDataoperator= (const CscRawData &)=default
CscRawDataoperator= (CscRawData &&)=default
 ~CscRawData ()
void setRpuID (uint16_t rpuID)
 construction methods
void setTime (uint16_t time)
void setWidth (uint16_t width)
void setHashID (uint32_t hash)
void set_isTimeComputed ()
uint16_t rpuID () const
 data access methods
uint16_t identify () const
uint16_t time () const
uint16_t width () const
bool isTimeComputed () const
const std::vector< uint16_t > & samples () const
uint32_t address () const
uint32_t hashId () const
bool samples (const unsigned int i, const unsigned int numSample, std::vector< uint16_t > &adc) const
 retrieve the samples for the position i in the list

Private Attributes

std::vector< uint16_t > m_amps
 data members
uint32_t m_address
 online identifier of the first strip in the ROD cluster
uint16_t m_id
 online identifier of the collection in which this strip is
uint16_t m_time
 online peaking time of the first strip: this is 0 if failed to compute time in the ROD
uint16_t m_rpuID
 SPU -Sparsifier Processing Unit - identifier in which this strip is.
uint16_t m_width
 number of consecutive strips forming the on-line cluster
bool m_isTimeComputed
 failed to compute the time in the ROD or not - if failure m_time = 0
uint32_t m_hashId
 offline hash identifier of the first strip in the online cluster

Detailed Description

Class to hold the electronic output for a single CSC readout channel: n sampling ADC data + the address (Identifier of strip == use hash id)

Author
Ketevi A. Assamagan Dec 24 2003, BNL

Definition at line 21 of file CscRawData.h.

Constructor & Destructor Documentation

◆ CscRawData() [1/7]

CscRawData::CscRawData ( )
inline

default constructor

Definition at line 54 of file CscRawData.h.

54 : m_address(0), m_id(0), m_time(0), m_rpuID(0),
55 m_width(0), m_isTimeComputed(false), m_hashId(0) {}
uint32_t m_hashId
offline hash identifier of the first strip in the online cluster
Definition CscRawData.h:49
uint16_t m_rpuID
SPU -Sparsifier Processing Unit - identifier in which this strip is.
Definition CscRawData.h:40
uint32_t m_address
online identifier of the first strip in the ROD cluster
Definition CscRawData.h:31
bool m_isTimeComputed
failed to compute the time in the ROD or not - if failure m_time = 0
Definition CscRawData.h:46
uint16_t m_id
online identifier of the collection in which this strip is
Definition CscRawData.h:34
uint16_t m_time
online peaking time of the first strip: this is 0 if failed to compute time in the ROD
Definition CscRawData.h:37
uint16_t m_width
number of consecutive strips forming the on-line cluster
Definition CscRawData.h:43

◆ CscRawData() [2/7]

CscRawData::CscRawData ( const std::vector< uint16_t > & p_amp,
uint32_t address,
uint16_t id )
inline

constructor for a single strip

Definition at line 58 of file CscRawData.h.

58 :
59 m_amps (p_amp),
61 m_id(id),
62 m_time (0x0),
63 m_rpuID (0x0),
64 m_width (0x1),
65 m_isTimeComputed (false),
66 m_hashId (0x0)
67 {
68 }
std::vector< uint16_t > m_amps
data members
Definition CscRawData.h:28
uint32_t address() const
Definition CscRawData.h:131

◆ CscRawData() [3/7]

CscRawData::CscRawData ( const std::vector< uint16_t > & p_amp,
uint32_t address,
uint16_t id,
uint16_t rpuID )
inline

single strip constructor with SPU information

Definition at line 71 of file CscRawData.h.

72 :
73 m_amps (p_amp),
75 m_id(id),
76 m_time (0x0),
78 m_width (0x1),
79 m_isTimeComputed (false),
80 m_hashId (0x0)
81 {
82 }
uint16_t rpuID() const
data access methods
Definition CscRawData.h:125

◆ CscRawData() [4/7]

CscRawData::CscRawData ( const std::vector< uint16_t > & p_amp,
uint32_t address,
uint16_t id,
uint16_t rpuID,
uint16_t width )
inline

cluster of strip constructor with cluster width and SPU identifier

Definition at line 85 of file CscRawData.h.

86 :
87 m_amps (p_amp),
89 m_id(id),
90 m_time (0x0),
93 m_isTimeComputed (false),
94 m_hashId (0x0)
95 {
96 }
uint16_t width() const
Definition CscRawData.h:128

◆ CscRawData() [5/7]

CscRawData::CscRawData ( const std::vector< uint16_t > & p_amp,
uint32_t address,
uint16_t id,
uint16_t time,
uint16_t rpuID,
uint16_t width,
uint32_t hashId )
inline

full constructor for cluster with timing information

Definition at line 99 of file CscRawData.h.

100 :
101 m_amps (p_amp),
103 m_id(id),
104 m_time(time),
105 m_rpuID(rpuID),
106 m_width(width),
107 m_isTimeComputed (true),
109 {
110 }
uint16_t time() const
Definition CscRawData.h:127
uint32_t hashId() const
Definition CscRawData.h:132

◆ CscRawData() [6/7]

CscRawData::CscRawData ( const CscRawData & )
default

◆ CscRawData() [7/7]

CscRawData::CscRawData ( CscRawData && )
default

◆ ~CscRawData()

CscRawData::~CscRawData ( )
inline

Definition at line 115 of file CscRawData.h.

115{}

Member Function Documentation

◆ address()

uint32_t CscRawData::address ( ) const
inline

Definition at line 131 of file CscRawData.h.

131{ return m_address; }

◆ hashId()

uint32_t CscRawData::hashId ( ) const
inline

Definition at line 132 of file CscRawData.h.

132{ return m_hashId; }

◆ identify()

uint16_t CscRawData::identify ( ) const
inline

Definition at line 126 of file CscRawData.h.

126{ return m_id; }

◆ isTimeComputed()

bool CscRawData::isTimeComputed ( ) const
inline

Definition at line 129 of file CscRawData.h.

129{ return m_isTimeComputed; }

◆ operator=() [1/2]

CscRawData & CscRawData::operator= ( const CscRawData & )
default

◆ operator=() [2/2]

CscRawData & CscRawData::operator= ( CscRawData && )
default

◆ rpuID()

uint16_t CscRawData::rpuID ( ) const
inline

data access methods

Definition at line 125 of file CscRawData.h.

125{ return m_rpuID; }

◆ samples() [1/2]

const std::vector< uint16_t > & CscRawData::samples ( ) const
inline

Definition at line 130 of file CscRawData.h.

130{ return m_amps; }

◆ samples() [2/2]

bool CscRawData::samples ( const unsigned int i,
const unsigned int numSample,
std::vector< uint16_t > & adc ) const

retrieve the samples for the position i in the list

Definition at line 9 of file CscRawData.cxx.

10 {
11 adc.clear();
12 if ( numSamples == 0 ) return false;
13 unsigned int width = m_amps.size() / numSamples;
14 if ( i > width ) return false;
15 for ( unsigned int j=0; j<numSamples; ++j ) {
16 unsigned int pos = i*numSamples+j;
17 adc.push_back( m_amps[pos] );
18 }
19 return true;
20}

◆ set_isTimeComputed()

void CscRawData::set_isTimeComputed ( )
inline

Definition at line 122 of file CscRawData.h.

122{ m_isTimeComputed = true; }

◆ setHashID()

void CscRawData::setHashID ( uint32_t hash)
inline

◆ setRpuID()

void CscRawData::setRpuID ( uint16_t rpuID)
inline

construction methods

Definition at line 118 of file CscRawData.h.

118{ m_rpuID = rpuID; }

◆ setTime()

void CscRawData::setTime ( uint16_t time)
inline

Definition at line 119 of file CscRawData.h.

119{ m_time = time; m_isTimeComputed = true; }

◆ setWidth()

void CscRawData::setWidth ( uint16_t width)
inline

Definition at line 120 of file CscRawData.h.

120{ m_width = width; }

◆ time()

uint16_t CscRawData::time ( ) const
inline

Definition at line 127 of file CscRawData.h.

127{ return m_time; }

◆ width()

uint16_t CscRawData::width ( ) const
inline

Definition at line 128 of file CscRawData.h.

128{ return m_width; }

Member Data Documentation

◆ m_address

uint32_t CscRawData::m_address
private

online identifier of the first strip in the ROD cluster

Definition at line 31 of file CscRawData.h.

◆ m_amps

std::vector<uint16_t> CscRawData::m_amps
private

data members

ADC samples

Definition at line 28 of file CscRawData.h.

◆ m_hashId

uint32_t CscRawData::m_hashId
private

offline hash identifier of the first strip in the online cluster

Definition at line 49 of file CscRawData.h.

◆ m_id

uint16_t CscRawData::m_id
private

online identifier of the collection in which this strip is

Definition at line 34 of file CscRawData.h.

◆ m_isTimeComputed

bool CscRawData::m_isTimeComputed
private

failed to compute the time in the ROD or not - if failure m_time = 0

Definition at line 46 of file CscRawData.h.

◆ m_rpuID

uint16_t CscRawData::m_rpuID
private

SPU -Sparsifier Processing Unit - identifier in which this strip is.

Definition at line 40 of file CscRawData.h.

◆ m_time

uint16_t CscRawData::m_time
private

online peaking time of the first strip: this is 0 if failed to compute time in the ROD

Definition at line 37 of file CscRawData.h.

◆ m_width

uint16_t CscRawData::m_width
private

number of consecutive strips forming the on-line cluster

Definition at line 43 of file CscRawData.h.


The documentation for this class was generated from the following files: