FACT++  1.0
ConnectionFTM Class Reference
+ Inheritance diagram for ConnectionFTM:
+ Collaboration diagram for ConnectionFTM:

Public Types

enum  States {
  kDisconnected = StateMachineImp::kSM_UserMode, kConnected, kIdle, kConfigured,

Public Member Functions

 ConnectionFTM (ba::io_service &ioservice, MessageImp &imp)
void CmdToggleLed ()
void CmdPing ()
void CmdReqDynDat ()
void CmdReqStatDat ()
void CmdSendStatDat (const FTM::StaticData &data)
void CmdStartRun (bool log=true)
void CmdStopRun ()
void CmdTakeNevents (uint32_t n)
bool CmdSetRegister (uint16_t addr, uint16_t val)
bool CmdGetRegister (uint16_t addr)
bool CmdResetCrate (uint16_t addr)
bool CmdResetCamera ()
bool CmdDisableReports (bool b)
void SetVerbose (bool b)
void SetHexOutput (bool b)
void SetDynamicOut (bool b)
bool LoadStaticData (string name)
bool SaveStaticData (string name) const
bool SetThreshold (int32_t patch, int32_t value)
bool SetSelectedThresholds (const int32_t *th)
bool SetAllThresholds (const int32_t *th)
bool SetNoutof4 (int32_t patch, int32_t value)
bool SetPrescaling (uint32_t value)
bool EnableFTU (int32_t board, bool enable)
bool ToggleFTU (uint32_t board)
bool SetVal (uint16_t *dest, uint32_t val, uint32_t max)
bool SetTriggerInterval (uint32_t val)
bool SetTriggerDelay (uint32_t val)
bool SetTimeMarkerDelay (uint32_t val)
bool SetDeadTime (uint32_t val)
void Enable (FTM::StaticData::GeneralSettings type, bool enable)
bool SetTriggerSeq (const uint16_t d[3])
bool SetTriggerMultiplicity (uint16_t n)
bool SetTriggerWindow (uint16_t win)
bool SetCalibMultiplicity (uint16_t n)
bool SetCalibWindow (uint16_t win)
bool SetClockRegister (const uint64_t reg[])
bool EnableLP (FTM::StaticData::GeneralSettings lp, FTM::StaticData::LightPulserEnable group, bool enable)
bool SetIntensity (FTM::StaticData::GeneralSettings lp, uint16_t intensity)
bool EnablePixel (int16_t idx, bool enable)
bool DisableAllPixelsExcept (uint16_t idx)
bool DisableAllPatchesExcept (int16_t idx)
bool EnablePatch (int16_t idx, bool enable)
bool TogglePixel (uint16_t idx)
States GetState () const
uint32_t GetCounter (FTM::Types type)
const FTM::StaticDataGetStaticData () const

Protected Member Functions

virtual void UpdateFirstHeader ()
virtual void UpdateHeader ()
virtual void UpdateFtuList ()
virtual void UpdateStaticData ()
virtual void UpdateDynamicData ()
virtual void UpdateError ()
virtual void UpdateCounter ()
bool CheckConsistency (FTM::StaticData &data)

Protected Attributes

map< uint16_t, uint32_t > fCounter
FTM::Header fHeader
FTM::FtuList fFtuList
FTM::StaticData fStaticData
FTM::DynamicData fDynamicData
FTM::Error fError
FTM::StaticData fBufStaticData

Private Member Functions

void HandleReceivedData (const bs::error_code &err, size_t bytes_received, int)
void ConnectionEstablished ()
void HandleReadTimeout (const bs::error_code &error)
template<size_t N>
void PostCmd (array< uint16_t, N > dat, uint16_t u1=0, uint16_t u2=0, uint16_t u3=0, uint16_t u4=0)
void PostCmd (vector< uint16_t > dat, uint16_t u1=0, uint16_t u2=0, uint16_t u3=0, uint16_t u4=0)
void PostCmd (uint16_t u1=0, uint16_t u2=0, uint16_t u3=0, uint16_t u4=0)

Private Attributes

vector< uint16_t > fBuffer
bool fHasHeader
bool fIsVerbose
bool fIsDynamicOut
bool fIsHexOutput

Detailed Description

Definition at line 26 of file ftmctrl.cc.

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