CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Classes | Namespaces | Enumerations | Functions | Variables
SiStripFEDBufferComponents.h File Reference
#include "boost/cstdint.hpp"
#include <ostream>
#include <memory>
#include <cstring>
#include "DataFormats/SiStripCommon/interface/ConstantsForHardwareSystems.h"
#include "FWCore/Utilities/interface/Exception.h"

Go to the source code of this file.

Classes

class  sistrip::FEDAPVErrorHeader
 
class  sistrip::FEDBackendStatusRegister
 
class  sistrip::FEDBufferBase
 
class  sistrip::FEDChannel
 
class  sistrip::FEDDAQHeader
 
class  sistrip::FEDDAQTrailer
 
class  sistrip::FEDFEHeader
 
class  sistrip::FEDFullDebugHeader
 
class  sistrip::FEDStatusRegister
 
class  sistrip::FEDStripOrdering
 
class  sistrip::TrackerSpecialHeader
 

Namespaces

 sistrip
 sistrip classes
 

Enumerations

enum  sistrip::FEDBufferFormat { sistrip::BUFFER_FORMAT_INVALID =INVALID, sistrip::BUFFER_FORMAT_OLD_VME, sistrip::BUFFER_FORMAT_OLD_SLINK, sistrip::BUFFER_FORMAT_NEW }
 
enum  sistrip::FEDBufferState { sistrip::BUFFER_STATE_UNSET =0x0, sistrip::BUFFER_STATE_EMPTY =0x1, sistrip::BUFFER_STATE_PARTIAL_FULL =0x4, sistrip::BUFFER_STATE_FULL =0x8 }
 
enum  sistrip::FEDChannelStatus {
  sistrip::CHANNEL_STATUS_LOCKED =0x20, sistrip::CHANNEL_STATUS_IN_SYNC =0x10, sistrip::CHANNEL_STATUS_APV1_ADDRESS_GOOD =0x08, sistrip::CHANNEL_STATUS_APV1_NO_ERROR_BIT =0x04,
  sistrip::CHANNEL_STATUS_APV0_ADDRESS_GOOD =0x02, sistrip::CHANNEL_STATUS_APV0_NO_ERROR_BIT =0x01, sistrip::CHANNEL_STATUS_NO_PROBLEMS
}
 
enum  sistrip::FEDDAQEventType {
  sistrip::DAQ_EVENT_TYPE_PHYSICS =0x1, sistrip::DAQ_EVENT_TYPE_CALIBRATION =0x2, sistrip::DAQ_EVENT_TYPE_TEST =0x3, sistrip::DAQ_EVENT_TYPE_TECHNICAL =0x4,
  sistrip::DAQ_EVENT_TYPE_SIMULATED =0x5, sistrip::DAQ_EVENT_TYPE_TRACED =0x6, sistrip::DAQ_EVENT_TYPE_ERROR =0xF, sistrip::DAQ_EVENT_TYPE_INVALID =INVALID
}
 
enum  sistrip::FEDDataType { sistrip::DATA_TYPE_REAL =0, sistrip::DATA_TYPE_FAKE =1 }
 
enum  sistrip::FEDHeaderType { sistrip::HEADER_TYPE_INVALID =INVALID, sistrip::HEADER_TYPE_FULL_DEBUG =1, sistrip::HEADER_TYPE_APV_ERROR =2, sistrip::HEADER_TYPE_NONE =4 }
 
enum  sistrip::FEDReadoutMode {
  sistrip::READOUT_MODE_INVALID =INVALID, sistrip::READOUT_MODE_SCOPE =0x1, sistrip::READOUT_MODE_VIRGIN_RAW =0x2, sistrip::READOUT_MODE_PROC_RAW =0x6,
  sistrip::READOUT_MODE_ZERO_SUPPRESSED =0xA, sistrip::READOUT_MODE_ZERO_SUPPRESSED_LITE =0xC, sistrip::READOUT_MODE_SPY =0xE
}
 
enum  sistrip::FEDTTSBits {
  sistrip::TTS_DISCONNECTED0 =0x0, sistrip::TTS_WARN_OVERFLOW =0x1, sistrip::TTS_OUT_OF_SYNC =0x2, sistrip::TTS_BUSY =0x4,
  sistrip::TTS_READY =0x8, sistrip::TTS_ERROR =0x12, sistrip::TTS_DISCONNECTED1 =0xF, sistrip::TTS_INVALID =INVALID
}
 

Functions

uint16_t sistrip::calculateFEDBufferCRC (const uint8_t *buffer, const size_t lengthInBytes)
 
FEDBufferFormat sistrip::fedBufferFormatFromString (const std::string &bufferFormatString)
 
FEDDAQEventType sistrip::fedDAQEventTypeFromString (const std::string &daqEventTypeString)
 
FEDDataType sistrip::fedDataTypeFromString (const std::string &dataTypeString)
 
FEDHeaderType sistrip::fedHeaderTypeFromString (const std::string &headerTypeString)
 
FEDReadoutMode sistrip::fedReadoutModeFromString (const std::string &readoutModeString)
 
uint8_t sistrip::internalFEDChannelNum (const uint8_t internalFEUnitNum, const uint8_t internalFEUnitChannelNum)
 
std::ostream & sistrip::operator<< (std::ostream &os, const FEDBufferFormat &value)
 
std::ostream & sistrip::operator<< (std::ostream &os, const FEDHeaderType &value)
 
std::ostream & sistrip::operator<< (std::ostream &os, const FEDReadoutMode &value)
 
std::ostream & sistrip::operator<< (std::ostream &os, const FEDDataType &value)
 
std::ostream & sistrip::operator<< (std::ostream &os, const FEDDAQEventType &value)
 
std::ostream & sistrip::operator<< (std::ostream &os, const FEDTTSBits &value)
 
std::ostream & sistrip::operator<< (std::ostream &os, const FEDBufferState &value)
 
std::ostream & sistrip::operator<< (std::ostream &os, const FEDChannelStatus &value)
 
std::ostream & sistrip::operator<< (std::ostream &os, const FEDBufferBase &obj)
 
std::ostream & sistrip::operator<< (std::ostream &os, const FEDDAQHeader &obj)
 
std::ostream & sistrip::operator<< (std::ostream &os, const FEDDAQTrailer &obj)
 
std::ostream & sistrip::operator<< (std::ostream &os, const TrackerSpecialHeader &obj)
 
std::ostream & sistrip::operator<< (std::ostream &os, const FEDStatusRegister &obj)
 
std::ostream & sistrip::operator<< (std::ostream &os, const FEDFEHeader &obj)
 
void sistrip::printHex (const void *pointer, const size_t length, std::ostream &os)
 

Variables

static const uint8_t sistrip::APV_MAX_ADDRESS =192
 
static const uint8_t sistrip::BUFFER_FORMAT_CODE_NEW = 0xC5
 
static const uint8_t sistrip::BUFFER_FORMAT_CODE_OLD = 0xED
 
static const uint8_t sistrip::INVALID =0xFF
 
static const uint8_t sistrip::PACKET_CODE_PROC_RAW = 0xF2
 
static const uint8_t sistrip::PACKET_CODE_SCOPE = 0xE5
 
static const uint8_t sistrip::PACKET_CODE_VIRGIN_RAW = 0xE6
 
static const uint8_t sistrip::PACKET_CODE_ZERO_SUPPRESSED = 0xEA
 
static const uint16_t sistrip::SCOPE_MODE_MAX_SCOPE_LENGTH =1022