Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-03 08:20:50

0001 #include <packet_cdevdvm.h>
0002 
0003 Packet_cdevdvm::Packet_cdevdvm(PACKET_ptr data)
0004   : Packet_w4 (data)
0005 {
0006   ps = 0;
0007   decoded = 0;
0008 }
0009   
0010 int *Packet_cdevdvm::decode ( int *nwout)
0011 {
0012   if (decoded) {
0013     *nwout = 0;
0014     return 0;
0015   }
0016 
0017   decoded=1;  // decode only once...

0018 
0019   int *k;
0020   k = (int *)  findPacketDataStart(packet);
0021   if (k == 0) 
0022     {
0023       ps = 0;
0024       *nwout = 0;
0025       return 0;
0026     }
0027 
0028   ps =  ( struct cdevDvmData *) k;
0029   
0030  
0031  
0032   *nwout = 0;
0033   return 0;
0034 }
0035 
0036 float   Packet_cdevdvm::fValue(const int ich, const char *what)
0037 {
0038   int i;
0039   decode (&i);
0040 
0041   if ( strcmp(what, "beamLifeTime") == 0 ) return ps->beamLifeTime;
0042   
0043   std::cout << "packet_cdevdvm::fValue error unknown datum: " << what << std::endl;
0044   return 0;
0045 
0046 }
0047 
0048 
0049 float   Packet_cdevdvm::rValue(const int ich, const char *what)
0050 {
0051   int i;
0052   decode (&i);
0053 
0054   if ( strcmp(what, "beamLifeTime") == 0 ) return ps->beamLifeTime;
0055   
0056   std::cout << "packet_cdevdvm::rValue error unknown datum: " << what << std::endl;
0057   return 0;
0058 
0059 }
0060 
0061 
0062 double Packet_cdevdvm::dValue(const int channel,const char *what)
0063 {
0064   int i;
0065   decode (&i);
0066 
0067   if ( strcmp(what, "beamCurrent") == 0 ) return ps->beamCurrent;
0068   if ( strcmp(what, "beamLifeTime") == 0 ) return ps->beamLifeTime;
0069   
0070 
0071   std::cout << "packet_cdevdvm::dValue error unknown datum: " << what << std::endl;
0072   return 0;
0073 }
0074 
0075 
0076 
0077 void Packet_cdevdvm::dump ( OSTREAM& os) 
0078 {
0079   int i;
0080   decode (&i);
0081 
0082   this->identify(os);
0083 
0084   os << std::setw(12)<< "beamCurrent   " <<  ps->beamCurrent  << std::endl;
0085   os << std::setw(12)<< "beamLifeTime  " <<  ps->beamLifeTime  << std::endl;
0086 
0087 }
0088 
0089 
0090 
0091 
0092