Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Packet_iddigitizerv3 Class Reference

#include <online_distribution/blob/master/newbasic/packet_iddigitizerv3.h>

+ Inheritance diagram for Packet_iddigitizerv3:
+ Collaboration diagram for Packet_iddigitizerv3:

Public Member Functions

 Packet_iddigitizerv3 (PACKET_ptr)
 
 ~Packet_iddigitizerv3 ()
 
int iValue (const int sample, const int ch)
 
int iValue (const int, const char *what)
 
void dump (OSTREAM &os=COUT)
 
- Public Member Functions inherited from Packet_w4
 Packet_w4 ()
 
 Packet_w4 (PACKET_ptr)
 
void dump (OSTREAM &)
 
void gdump (const int how=EVT_HEXADECIMAL, OSTREAM &=COUT) const
 
- Public Member Functions inherited from Packet_A
 Packet_A (PACKET_ptr packet_ptr)
 
 Packet_A ()
 
 ~Packet_A ()
 
int getLength () const
 
int getErrorLength () const
 
int getDebugLength () const
 get the length of the debug block
 
int getIdentifier () const
 get the packet identifier
 
int getPadding () const
 get the number of padding units in the packet data.
 
int getStructure () const
 get the structure of the packet data; unformatted, hitlist, etc.
 
int getHitFormat () const
 get the hit format; in case of unformatted get the encoding scheme.
 
int getDataLength () const
 get what the name says...
 
void identify (OSTREAM &=COUT) const
 
void fullIdentify (OSTREAM &=COUT) const
 
void dumpErrorBlock (OSTREAM &=COUT)
 
void dumpDebugBlock (OSTREAM &=COUT)
 
int setIdentifier (const int newid)
 set a new packet identifier
 
int iValue (const int)
 iValue returns the value of a given channel as an int.
 
int iValue (const int, const int, const char *)
 
int iValue (const int channel, const int iy, const int iz)
 
int iValue (const int channel, const int iy, const int iz, const char *what)
 
float rValue (const int)
 
float rValue (const int, const char *)
 
float rValue (const int, const int)
 
int getArraylength (const char *)
 
int fillIntArray (int[], const int, int *, const char *what="")
 
int fillFloatArray (float[], const int, int *, const char *what="")
 fillFloatArray fills an array of floats
 
int * getIntArray (int *, const char *what="")
 
float * getFloatArray (int *, const char *what="")
 getFloatArray creates and returns an array of floats
 
virtual int is_pointer_type () const
 find out what type (pointer- or data based) packet object we have
 
virtual int convert ()
 convert from pointer- to data based object, if it is already data-based, do nothing.
 
int getCheckSumStatus () const
 
int copyMe (int dest[], const int maxlength) const
 
int setInternalParameter (const int p1=0, const int p2=0, const char *what="")
 
- Public Member Functions inherited from Packet
virtual ~Packet ()
 the virtual destructor
 
virtual double dValue (const int channel)
 
virtual double dValue (const int channel, const char *what)
 
virtual double dValue (const int channel, const int iy)
 
virtual long long lValue (const int channel)
 
virtual long long lValue (const int channel, const char *what)
 
virtual long long lValue (const int channel, const int iy)
 
virtual long long lValue (const int channel, const int iy, const char *what)
 
virtual void * pValue (const int)
 
virtual void * pValue (const int, const char *)
 
virtual void * pValue (const int, const int)
 
virtual void identify (std::ostream &os=std::cout) const =0
 see below for comments
 
virtual void fullIdentify (std::ostream &os=std::cout) const
 write an indepth identification message to the supplied OSTREAM.
 
virtual void dump (std::ostream &os=std::cout)=0
 
virtual void gdump (const int how=EVT_HEXADECIMAL, std::ostream &os=std::cout) const =0
 

Protected Member Functions

int decode ()
 
unsigned int decode_FEM (unsigned int *k, const int fem_nr, const int len)
 
- Protected Member Functions inherited from Packet_w4
int * decode (int *)
 
- Protected Member Functions inherited from Packet_A
int standardIntArray (int[], const int, int *, const char *what="")
 

Protected Attributes

int _broken
 
int _evtnr
 
int _flagword
 
int _detid
 
int _module_address
 
int _xmit_clock
 
int _fem_slot [NR_FEMS]
 
int _fem_evtnr [NR_FEMS]
 
int _fem_clock [NR_FEMS]
 
int _fem_checksum_MSB [NR_FEMS]
 
int _fem_checksum_LSB [NR_FEMS]
 
int _fem_calculated_checksum_MSB [NR_FEMS]
 
int _fem_calculated_checksum_LSB [NR_FEMS]
 
int _nsamples
 
int _nr_modules
 
int _nchannels
 
int _is_decoded
 
bool isZeroSuppressed [NR_FEMS *64]
 
bool _AnyChannelisSuppressed
 
int adc [32][NR_FEMS *64]
 
int pre_post [2][NR_FEMS *64]
 

Additional Inherited Members

- Static Protected Member Functions inherited from Packet_A
static void fix_endianess (long long *x)
 
static void fix_endianess (double *x)
 
static void fix_endianess (char *str, const int length)
 

Detailed Description

Definition at line 8 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 8 of file packet_iddigitizerv3.h

Constructor & Destructor Documentation

Packet_iddigitizerv3::Packet_iddigitizerv3 ( PACKET_ptr  data)

Definition at line 12 of file packet_iddigitizerv3.cc.

View newest version in sPHENIX GitHub at line 12 of file packet_iddigitizerv3.cc

References _AnyChannelisSuppressed, _broken, _detid, _evtnr, _fem_calculated_checksum_LSB, _fem_calculated_checksum_MSB, _fem_checksum_LSB, _fem_checksum_MSB, _fem_clock, _fem_evtnr, _fem_slot, _flagword, _is_decoded, _module_address, _nchannels, _nr_modules, _nsamples, _xmit_clock, Packet_A::getHitFormat(), i, and NR_FEMS.

+ Here is the call graph for this function:

Packet_iddigitizerv3::~Packet_iddigitizerv3 ( )

Definition at line 49 of file packet_iddigitizerv3.cc.

View newest version in sPHENIX GitHub at line 49 of file packet_iddigitizerv3.cc

Member Function Documentation

int Packet_iddigitizerv3::decode ( )
protected

Definition at line 54 of file packet_iddigitizerv3.cc.

View newest version in sPHENIX GitHub at line 54 of file packet_iddigitizerv3.cc

References _broken, _detid, _evtnr, _flagword, _is_decoded, _module_address, _xmit_clock, adc, decode_FEM(), dlength, findPacketDataStart(), Packet_A::getDataLength(), i, j, k, NR_FEMS, and Packet_A::packet.

Referenced by iValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

unsigned int Packet_iddigitizerv3::decode_FEM ( unsigned int *  k,
const int  fem_nr,
const int  len 
)
protected

Definition at line 138 of file packet_iddigitizerv3.cc.

View newest version in sPHENIX GitHub at line 138 of file packet_iddigitizerv3.cc

References _AnyChannelisSuppressed, _fem_checksum_LSB, _fem_checksum_MSB, _fem_clock, _fem_evtnr, _fem_slot, _nchannels, _nr_modules, _nsamples, adc, Acts::PhysicalConstants::c, coutfl, index, isZeroSuppressed, NR_FEMS, and pre_post.

Referenced by decode().

+ Here is the caller graph for this function:

void Packet_iddigitizerv3::dump ( OSTREAM os = COUT)

Definition at line 399 of file packet_iddigitizerv3.cc.

View newest version in sPHENIX GitHub at line 399 of file packet_iddigitizerv3.cc

References _broken, _nchannels, _nsamples, Acts::PhysicalConstants::c, i, Packet_A::identify(), iValue(), and physmon_simulation::s.

+ Here is the call graph for this function:

int Packet_iddigitizerv3::iValue ( const int  ,
const int   
)
virtual

this supports devices which are inherently organized as two-dimensional data, such as flash ADC's (channel vs time slice)

Reimplemented from Packet_A.

Definition at line 262 of file packet_iddigitizerv3.cc.

View newest version in sPHENIX GitHub at line 262 of file packet_iddigitizerv3.cc

References _nchannels, _nsamples, adc, and decode().

Referenced by dump().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int Packet_iddigitizerv3::iValue ( const int  ,
const char *   
)
virtual

with the "what" parameter you can decide which aspect of the data you want to see (for devices which have more than one)

Reimplemented from Packet_A.

Definition at line 274 of file packet_iddigitizerv3.cc.

View newest version in sPHENIX GitHub at line 274 of file packet_iddigitizerv3.cc

References _detid, _evtnr, _fem_calculated_checksum_LSB, _fem_calculated_checksum_MSB, _fem_checksum_LSB, _fem_checksum_MSB, _fem_clock, _fem_evtnr, _fem_slot, _module_address, _nchannels, _nr_modules, _nsamples, _xmit_clock, decode(), isZeroSuppressed, n, and pre_post.

+ Here is the call graph for this function:

Member Data Documentation

bool Packet_iddigitizerv3::_AnyChannelisSuppressed
protected

Definition at line 54 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 54 of file packet_iddigitizerv3.h

Referenced by decode_FEM(), and Packet_iddigitizerv3().

int Packet_iddigitizerv3::_broken
protected

Definition at line 26 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 26 of file packet_iddigitizerv3.h

Referenced by decode(), dump(), and Packet_iddigitizerv3().

int Packet_iddigitizerv3::_detid
protected

Definition at line 33 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 33 of file packet_iddigitizerv3.h

Referenced by decode(), iValue(), and Packet_iddigitizerv3().

int Packet_iddigitizerv3::_evtnr
protected

Definition at line 31 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 31 of file packet_iddigitizerv3.h

Referenced by decode(), iValue(), and Packet_iddigitizerv3().

int Packet_iddigitizerv3::_fem_calculated_checksum_LSB[NR_FEMS]
protected

Definition at line 45 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 45 of file packet_iddigitizerv3.h

Referenced by iValue(), and Packet_iddigitizerv3().

int Packet_iddigitizerv3::_fem_calculated_checksum_MSB[NR_FEMS]
protected

Definition at line 44 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 44 of file packet_iddigitizerv3.h

Referenced by iValue(), and Packet_iddigitizerv3().

int Packet_iddigitizerv3::_fem_checksum_LSB[NR_FEMS]
protected

Definition at line 43 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 43 of file packet_iddigitizerv3.h

Referenced by decode_FEM(), iValue(), and Packet_iddigitizerv3().

int Packet_iddigitizerv3::_fem_checksum_MSB[NR_FEMS]
protected

Definition at line 42 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 42 of file packet_iddigitizerv3.h

Referenced by decode_FEM(), iValue(), and Packet_iddigitizerv3().

int Packet_iddigitizerv3::_fem_clock[NR_FEMS]
protected

Definition at line 40 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 40 of file packet_iddigitizerv3.h

Referenced by decode_FEM(), iValue(), and Packet_iddigitizerv3().

int Packet_iddigitizerv3::_fem_evtnr[NR_FEMS]
protected

Definition at line 39 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 39 of file packet_iddigitizerv3.h

Referenced by decode_FEM(), iValue(), and Packet_iddigitizerv3().

int Packet_iddigitizerv3::_fem_slot[NR_FEMS]
protected

Definition at line 38 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 38 of file packet_iddigitizerv3.h

Referenced by decode_FEM(), iValue(), and Packet_iddigitizerv3().

int Packet_iddigitizerv3::_flagword
protected

Definition at line 32 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 32 of file packet_iddigitizerv3.h

Referenced by decode(), and Packet_iddigitizerv3().

int Packet_iddigitizerv3::_is_decoded
protected

Definition at line 51 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 51 of file packet_iddigitizerv3.h

Referenced by decode(), and Packet_iddigitizerv3().

int Packet_iddigitizerv3::_module_address
protected

Definition at line 34 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 34 of file packet_iddigitizerv3.h

Referenced by decode(), iValue(), and Packet_iddigitizerv3().

int Packet_iddigitizerv3::_nchannels
protected

Definition at line 50 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 50 of file packet_iddigitizerv3.h

Referenced by decode_FEM(), dump(), iValue(), and Packet_iddigitizerv3().

int Packet_iddigitizerv3::_nr_modules
protected

Definition at line 48 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 48 of file packet_iddigitizerv3.h

Referenced by decode_FEM(), iValue(), and Packet_iddigitizerv3().

int Packet_iddigitizerv3::_nsamples
protected

Definition at line 47 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 47 of file packet_iddigitizerv3.h

Referenced by decode_FEM(), dump(), iValue(), and Packet_iddigitizerv3().

int Packet_iddigitizerv3::_xmit_clock
protected

Definition at line 35 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 35 of file packet_iddigitizerv3.h

Referenced by decode(), iValue(), and Packet_iddigitizerv3().

int Packet_iddigitizerv3::adc[32][NR_FEMS *64]
protected

Definition at line 56 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 56 of file packet_iddigitizerv3.h

Referenced by decode(), decode_FEM(), and iValue().

bool Packet_iddigitizerv3::isZeroSuppressed[NR_FEMS *64]
protected

Definition at line 53 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 53 of file packet_iddigitizerv3.h

Referenced by decode_FEM(), and iValue().

int Packet_iddigitizerv3::pre_post[2][NR_FEMS *64]
protected

Definition at line 57 of file packet_iddigitizerv3.h.

View newest version in sPHENIX GitHub at line 57 of file packet_iddigitizerv3.h

Referenced by decode_FEM(), and iValue().


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