00001 // $Id: ProcessTestSignal.h,v 1.1 2009/05/16 19:43:30 aosorio Exp $ 00002 #ifndef PROCESSTESTSIGNAL_H 00003 #define PROCESSTESTSIGNAL_H 1 00004 00005 // Include files 00006 00007 #include "L1Trigger/RPCTechnicalTrigger/interface/RBCInput.h" 00008 #include "L1Trigger/RPCTechnicalTrigger/interface/RPCInputSignal.h" 00009 #include "L1Trigger/RPCTechnicalTrigger/interface/RPCData.h" 00010 #include "L1Trigger/RPCTechnicalTrigger/interface/ProcessInputSignal.h" 00011 00012 #include <stdlib.h> 00013 #include <iostream> 00014 #include <fstream> 00015 #include <ios> 00016 #include <cmath> 00017 #include <vector> 00018 00019 00029 class ProcessTestSignal : public ProcessInputSignal { 00030 public: 00032 ProcessTestSignal( ) { }; 00033 00034 ProcessTestSignal( const char * ); 00035 00036 virtual ~ProcessTestSignal( ); 00037 00038 int next(); 00039 00040 void rewind(); 00041 00042 void showfirst(); 00043 00044 void reset(); 00045 00046 RPCInputSignal * retrievedata() { 00047 return m_lbin; 00048 }; 00049 00050 void mask() {}; 00051 void force() {}; 00052 00053 protected: 00054 00055 private: 00056 00057 void builddata(); 00058 00059 std::ifstream * m_in; 00060 00061 RPCData * m_block; 00062 00063 RBCInput * m_rbcinput; 00064 00065 RPCInputSignal * m_lbin; 00066 00067 std::vector<RPCData*> m_vecdata; 00068 00069 std::map<int,RBCInput*> m_data; 00070 00071 00072 }; 00073 #endif // PROCESSTESTSIGNAL_H