SCTReadoutModule.cpp

00001 //$Id: SCTReadoutModule.cpp,v 1.2 2005/09/21 15:17:52 sctroddq Exp $
00002 /************************************************************************/
00003 /*                                  */
00004 /* File             : SCTReadoutModule.cpp              */
00005 /*                                  */
00006 /* Authors          : B.Gorini, M.Joos, J.Petersen CERN         */
00007 /*                                  */
00008 /********* C 2004 - ROS/RCD  ********************************************/
00009 
00010 #include <unistd.h>
00011 #include <iostream>
00012 #include "RCDExampleModules/SCTReadoutModule.h"
00013 #include "RCDExampleModules/SCTScheduledUserAction.h"
00014 #include "DFDebug/DFDebug.h"
00015 #include "DFError/DFOutputStream.h"
00016 
00017 using namespace ROS;
00018 using namespace RCD;
00019 
00020 /******************************************************/
00021 SCTReadoutModule::SCTReadoutModule() 
00022 /******************************************************/
00023 { 
00024   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::constructor: Entered");
00025 }
00026 
00027 /*******************************************************/
00028 SCTReadoutModule::~SCTReadoutModule() 
00029 /*******************************************************/
00030 {
00031   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::destructor: Entered");
00032 
00033   // delete the User Timer Poll Handler
00034   if (m_scheduledUserAction0 != 0) {
00035     delete m_scheduledUserAction0;
00036   }
00037 }
00038 
00039 // setup gets parameters from configuration
00040 /**************************************************************************************/
00041 void SCTReadoutModule::setup(DFCountedPointer<Config> configuration) 
00042 /**************************************************************************************/
00043 { 
00044   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::setup: Entered");
00045 
00046   m_deltaTimeMs = configuration->getInt("DeltaTimeScheduler");
00047   DEBUG_TEXT(DFDB_RCDEXAMPLE, 20, "SCTReadoutModule::setup: MODULE delta time (ms) = "
00048                                   << std::dec << m_deltaTimeMs);
00049 }
00050 
00051 /*****************************************************/
00052 void SCTReadoutModule::load(void)
00053 /*****************************************************/
00054 {
00055 
00056   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::load: Entered");
00057 
00058   // handles the "time" interrupts
00059   m_scheduledUserAction0 = 0;
00060   if (m_deltaTimeMs >= 0) {
00061     m_scheduledUserAction0 = new SCTScheduledUserAction(m_deltaTimeMs);
00062     DEBUG_TEXT(DFDB_RCDEXAMPLE, 5, "SCTReadoutModule::load: Created SCTScheduledUserAction0");
00063 //    std::string partition=getenv("TDAQ_PARTITION");
00064   }
00065 
00066   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::load: Done");
00067 }
00068 
00069 /*****************************************************/
00070 void SCTReadoutModule::unload(void)
00071 /*****************************************************/
00072 {
00073 
00074   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::unload: Entered");
00075 
00076   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::unload: Done");
00077 }
00078 
00079 
00080 /********************************************************/
00081 void SCTReadoutModule::configure(void)
00082 /********************************************************/
00083 {
00084  
00085   DEBUG_TEXT(DFDB_RCDEXAMPLE, 20, "SCTReadoutModule::configure: Entered");
00086 
00087   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::configure: Done");
00088 }
00089 
00090 
00091 /**********************************************************/
00092 void SCTReadoutModule::unconfigure(void)
00093 /**********************************************************/
00094 {
00095   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::unconfigure: Entered");
00096   
00097   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::unconfigure: Done");
00098 }
00099     
00100 
00101 /************************************************************/    
00102 void SCTReadoutModule::prepareForRun(void)
00103 /************************************************************/    
00104 {
00105   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::prepareForRun: Entered");
00106 
00107   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::prepareForRun: Done");
00108 
00109 }
00110 
00111 /************************************************************/    
00112 void SCTReadoutModule::startTrigger(void)
00113 /************************************************************/    
00114 {
00115   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::startTrigger: Entered");
00116   
00117   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::startTrigger: Done");
00118 
00119 }
00120 
00121 /*****************************************************/
00122 void SCTReadoutModule::stopTrigger(void)
00123 /*****************************************************/
00124 {
00125   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::stopTrigger: Entered");
00126   
00127   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::stopTrigger: Done");
00128 
00129 }
00130 
00131 /*****************************************************/
00132 void SCTReadoutModule::stopFE(void)
00133 /*****************************************************/
00134 {
00135   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::stopFE: Done");
00136 }
00137 
00138 
00139 /*************************************************************************/
00140 DFCountedPointer < Config > SCTReadoutModule::getInfo()
00141 /*************************************************************************/
00142 {
00143   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::getInfo: Entered");
00144 
00145   DFCountedPointer<Config> configuration = Config::New();
00146   configuration->set("Number of occurences", 
00147           dynamic_cast<SCTScheduledUserAction *> (m_scheduledUserAction0)->getNumberOfTimes());
00148   return(configuration);
00149 
00150 }
00151 
00152 /******************************************************************/
00153 void SCTReadoutModule::probe(void)
00154 /******************************************************************/
00155 {
00156   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::probe: Entered");
00157 
00158   std::cout << " SCTReadoutModule::probe: Entered" << std::endl;
00159 
00160 }
00161 
00162 /******************************************************************/
00163 void SCTReadoutModule::publishFullStatistics(void)
00164 /******************************************************************/
00165 {
00166   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::publishFullStatistics: Entered");
00167 
00168 }
00169 
00170 /****************************************************/
00171 void SCTReadoutModule::clearInfo()
00172 /****************************************************/
00173 {
00174   DEBUG_TEXT(DFDB_RCDEXAMPLE, 15, "SCTReadoutModule::clearInfo  Function entered");
00175 
00176   if (m_scheduledUserAction0 !=0 ) {
00177     dynamic_cast<SCTScheduledUserAction *>(m_scheduledUserAction0)->clearInfo();
00178   }
00179 }
00180 
00181 //FOR THE PLUGIN FACTORY
00182 extern "C" 
00183 {
00184   extern ReadoutModule* createSCTReadoutModule();
00185 }
00186 ReadoutModule* createSCTReadoutModule()
00187 {
00188   return (new SCTReadoutModule());
00189 }

Generated on Mon Feb 6 14:01:29 2006 for SCT DAQ/DCS Software - C++ by  doxygen 1.4.6