#ifndef TPCCOMMANDCODERHARDCODED_H #define TPCCOMMANDCODERHARDCODED_H /* * A Command Coder with hardcoded values. Mainly for test purposes. */ #include "Afl.h" #include "RCUCommandCoder.h" #include "RCUControlEngine.h" #include "AltroCommandCoder.h" #include "BoardControllerCommandCoder.h" #include "RCUControlEngine.h" #include "CommandCoderBase.hpp" #include "../Container/RcuContainer.h" #include #include #include #include class TPCCommandCoderHardcoded: public CommandCoderBase{ public: TPCCommandCoderHardcoded(); ~TPCCommandCoderHardcoded(); uint32_t* getDataBlock(); int32_t createDataBlock(char* target, int tag); vector& getError(); std::string& getCoCoInfo(); void setNfecs(int32_t nfecs) { fNfecs = nfecs; }; void setNaltros(int32_t naltros) { fNaltros = naltros; }; void setNchannels(int32_t nchannels) { fNchannels = nchannels; }; void setUseStore(bool store) { fStoreData = store; }; void setConfigBCs(bool bc) { fConfigBCs = bc; }; void setReadResult(bool read, int32_t readsize); void reset(); int32_t getNfecs() { return fNfecs; }; int32_t getNaltros() { return fNaltros; }; int32_t getNchannels() { return fNchannels; }; bool getConfigBCs() { return fConfigBCs; }; bool getUseStore() { return fStoreData; }; bool getRead() { return fReadResult; }; private: int32_t strtonum(string Number); RcuContainer *fDataBlock; // The Data to be sent to RCU RCUCommandCoder *frcu; AltroCommandCoder *faltro; BoardControllerCommandCoder *fbc; RCUControlEngine *frcuce; Afl *fAFL; // The Active Frontend List (AFL) string version; vector ferror; int32_t fNfecs; int32_t fNaltros; int32_t fNchannels; bool fConfigBCs; bool fStoreData; bool fReadResult; }; extern "C" { CommandCoderBase *getCoCoInst(void); } #endif // TPCCOMMANDCODERHARDCODED