1 #ifndef VME_SIMULATION_H
2 #define VME_SIMULATION_H
19 template <
class EnvPeriodPolicy>
class SIMEnvCard;
29 virtual int getCardIds(std::vector<int>& card_ids) = 0;
111 const char*
device() {
return "simulation"; }
113 int onTrigger(time_t the_secs,
unsigned short the_ms,
int trig_id);
std::vector< MySIMEnvPeriodCard * > m_env_card_list
uint32_t TransferProps
combination of TransferProp values
int writeBlockU16(unsigned long address, isisU16_t *data16, long nitems, TransferProps props, DAEstatus &status)
int readU16(unsigned long address, isisU16_t *data16, TransferProps props, DAEstatus &status)
int writeU32(unsigned long address, isisU32_t data32, TransferProps props, DAEstatus &status)
int readU32noRetry(unsigned long address, isisU32_t *data32, TransferProps props, DAEstatus &dstatus)
void setTriggerFunc(trigger_func_t *func, void *arg)
int writeU16(unsigned long address, isisU16_t data16, TransferProps props, DAEstatus &status)
void * m_trigger_func_arg
void unlockInterface(DAEstatus &)
virtual ~VMESimulationIface()
virtual int resetDetectorCardPeriod()=0
trigger_func_t * m_trigger_func
int getCardIds(std::vector< int > &card_ids)
SIMDAE2Card< typename DAEPolicy::card_t > MySIMDAE2Card
virtual int simulateWrite(TransferProps props, unsigned long address, isisU16_t *data16, long nitems, DAEstatus &status)=0
int writeBlockU32(unsigned long address, isisU32_t *data32, long nitems, TransferProps props, DAEstatus &status)
virtual int getCardIds(std::vector< int > &card_ids)=0
void simulation_routineImpl()
virtual int incrementDetectorCardPeriod()=0
int lockDevice(int timeout, DAEstatus &status)
virtual bool isCrateRunning()=0
int resetDetectorCardPeriod()
virtual bool isCrateVetoing()=0
int readBlockU16(unsigned long address, isisU16_t *data16, long nitems, TransferProps props, DAEstatus &status)
VMESimulation(DAEstatus &status)
virtual int simulateRead(TransferProps props, unsigned long address, isisU16_t *data16, long nitems, DAEstatus &status)=0
virtual bool shutdownRequested()=0
static void simulation_routine(void *arg)
int readU32(unsigned long address, isisU32_t *data32, TransferProps props, DAEstatus &status)
virtual int frameNumberImpl()=0
bool resetBus(DAEstatus &status)
int open(const char *device, DAEstatus &status)
SIMEnvCard< typename DAEPolicy::env_t > MySIMEnvCard
int writeBlock(unsigned long address, isisU32_t *data, long nitems, TransferProps props, DAEstatus &status)
SIMEnvPeriodCard< typename DAEPolicy::env_t > MySIMEnvPeriodCard
int incrementDetectorCardPeriod()
int trigger_func_t(void *arg, time_t the_secs, unsigned short the_ms, int trig_id)
int readBlockU32(unsigned long address, isisU32_t *data32, long nitems, TransferProps props, DAEstatus &status)
std::vector< MySIMDetectorCard * > m_det_card_list
int unlockDevice(DAEstatus &status)
int readBlock(unsigned long address, isisU32_t *data, long nitems, TransferProps props, DAEstatus &status)
int scanBus(DAEstatus &status)
CRITICAL_SECTION m_critical
int close(DAEstatus &status)
bool m_shutdown_requested
virtual void simulation_routineImpl()=0
int simulateRead(TransferProps props, unsigned long address, isisU16_t *data16, long nitems, DAEstatus &status)
SIMDetectorCard< typename DAEPolicy::det_t > MySIMDetectorCard
int onTrigger(time_t the_secs, unsigned short the_ms, int trig_id)
void lockInterface(int, DAEstatus &)
int simulateWrite(TransferProps props, unsigned long address, isisU16_t *data16, long nitems, DAEstatus &status)
int openBackplane(const char *device_bp, DAEstatus &status)
static std::vector< VMESimulationIface * > m_sim_vme
int readU16noRetry(unsigned long address, isisU16_t *data16, TransferProps props, DAEstatus &dstatus)