CVMEStatusModule.cpp

Go to the documentation of this file.
00001 /*
00002     This software is Copyright by the Board of Trustees of Michigan
00003     State University (c) Copyright 2005.
00004 
00005     You may use this software under the terms of the GNU public license
00006     (GPL).  The terms of this license are described at:
00007 
00008      http://www.gnu.org/licenses/gpl.txt
00009 
00010      Author:
00011              Ron Fox
00012              NSCL
00013              Michigan State University
00014              East Lansing, MI 48824-1321
00015 */
00016 
00017 static const char* Copyright = "(C) Copyright Michigan State University 2002, All rights reserved";   
00019 
00020 #include <config.h>
00021 #include "CVMEStatusModule.h"                  
00022 #ifdef HAVE_STD_NAMESPACE
00023 using namespace std;
00024 #endif
00025 
00026 static const unsigned int GoingBusy=0;
00027 static const unsigned int GoingFree=1;
00028 
00034 CVMEStatusModule::CVMEStatusModule (UInt_t base, int nCrate) :
00035   CStatusModule(),
00036   m_IOModule(base, nCrate)
00037 {
00038 } 
00039 
00047 CVMEStatusModule::CVMEStatusModule(const CCaenIO& module) :
00048   CStatusModule(),
00049   m_IOModule(module)
00050 {}
00051 
00056 CVMEStatusModule::CVMEStatusModule(const CVMEStatusModule& rhs) :
00057   CStatusModule(),
00058   m_IOModule(rhs.m_IOModule)
00059 {
00060 
00061 }
00062 
00067 CVMEStatusModule& CVMEStatusModule::operator= (const CVMEStatusModule& aCVMEStatusModule)
00068 { 
00069     if (this != &aCVMEStatusModule) {
00070        CStatusModule::operator= (aCVMEStatusModule);
00071        m_IOModule = aCVMEStatusModule.m_IOModule;
00072     }
00073     return *this;
00074 }
00075 
00080 int
00081 CVMEStatusModule::operator==(const CVMEStatusModule& rhs) 
00082 {
00083   return ((m_IOModule == rhs.m_IOModule) &&
00084           CStatusModule::operator==(rhs));
00085 }
00086 
00087 // Functions for class CVMEStatusModule
00088 
00093 void 
00094 CVMEStatusModule::GoBusy()  
00095 {
00096   m_IOModule.PulseOutput(GoingBusy);
00097 }  
00098 
00103 void 
00104 CVMEStatusModule::GoClear()  
00105 {
00106   m_IOModule.PulseOutput(GoingFree);
00107 }
00112 void
00113 CVMEStatusModule::ModuleClear() 
00114 {
00115   m_IOModule.PulseOutput(3);
00116 
00117 }

Generated on Wed Sep 17 08:38:09 2008 for NSCL Device support. by  doxygen 1.5.1