#include <stdio.h>
#include <TObject.h>
#include "TEpics.h"
ClassImp(TEpics);
void TEpics::Calculate()
{
}
void TEpics::Calibrate()
{
}
void TEpics::Clear(Option_t*)
{
HIRA_Tower0_I = 0;
HIRA_Tower0_Reg = 0;
HIRA_Tower1_I = 0;
HIRA_Tower1_Reg = 0;
HIRA_Tower2_I = 0;
HIRA_Tower2_Reg = 0;
HIRA_Tower3_I = 0;
HIRA_Tower3_Reg = 0;
HIRA_Tower4_I = 0;
HIRA_Tower4_Reg = 0;
HIRA_Tower5_I = 0;
HIRA_Tower5_Reg = 0;
I252IG = 0;
memset(HIRA_Tower0_TC,'\0',sizeof(HIRA_Tower0_TC));
memset(HIRA_Tower1_TC,'\0',sizeof(HIRA_Tower1_TC));
memset(HIRA_Tower2_TC,'\0',sizeof(HIRA_Tower2_TC));
memset(HIRA_Tower3_TC,'\0',sizeof(HIRA_Tower3_TC));
memset(HIRA_Tower4_TC,'\0',sizeof(HIRA_Tower4_TC));
memset(HIRA_Tower5_TC,'\0',sizeof(HIRA_Tower5_TC));
HIRA_Tower0_I_Up = 0;
HIRA_Tower0_Reg_Up = 0;
HIRA_Tower1_I_Up = 0;
HIRA_Tower1_Reg_Up = 0;
HIRA_Tower2_I_Up = 0;
HIRA_Tower2_Reg_Up = 0;
HIRA_Tower3_I_Up = 0;
HIRA_Tower3_Reg_Up = 0;
HIRA_Tower4_I_Up = 0;
HIRA_Tower4_Reg_Up = 0;
HIRA_Tower5_I_Up = 0;
HIRA_Tower5_Reg_Up = 0;
I252IG_Up = 0;
memset(HIRA_Tower0_TC_Up,'\0',sizeof(HIRA_Tower0_TC_Up));
memset(HIRA_Tower1_TC_Up,'\0',sizeof(HIRA_Tower1_TC_Up));
memset(HIRA_Tower2_TC_Up,'\0',sizeof(HIRA_Tower2_TC_Up));
memset(HIRA_Tower3_TC_Up,'\0',sizeof(HIRA_Tower3_TC_Up));
memset(HIRA_Tower4_TC_Up,'\0',sizeof(HIRA_Tower4_TC_Up));
memset(HIRA_Tower5_TC_Up,'\0',sizeof(HIRA_Tower5_TC_Up));
}
void TEpics::InitBranch(TTree *tree)
{
}
void TEpics::InitClass()
{
SetNameTitle("epics","EPICS System");
Clear();
}
void TEpics::InitTree(TTree *tree)
{
fChain = tree;
fCurrent = -1;
fChain->SetMakeClass(1);
fChain->SetBranchAddress("HIRA_Tower0_I",&HIRA_Tower0_I,&b_HIRA_Tower0_I);
fChain->SetBranchAddress("HIRA_Tower0_Reg",&HIRA_Tower0_Reg,&b_HIRA_Tower0_Reg);
fChain->SetBranchAddress("HIRA_Tower0_TC[5]",&HIRA_Tower0_TC,&b_HIRA_Tower0_TC);
fChain->SetBranchAddress("HIRA_Tower1_I",&HIRA_Tower1_I,&b_HIRA_Tower1_I);
fChain->SetBranchAddress("HIRA_Tower1_Reg",&HIRA_Tower1_Reg,&b_HIRA_Tower1_Reg);
fChain->SetBranchAddress("HIRA_Tower1_TC[5]",&HIRA_Tower1_TC,&b_HIRA_Tower1_TC);
fChain->SetBranchAddress("HIRA_Tower2_I",&HIRA_Tower2_I,&b_HIRA_Tower2_I);
fChain->SetBranchAddress("HIRA_Tower2_Reg",&HIRA_Tower2_Reg,&b_HIRA_Tower2_Reg);
fChain->SetBranchAddress("HIRA_Tower2_TC[5]",&HIRA_Tower2_TC,&b_HIRA_Tower2_TC);
fChain->SetBranchAddress("HIRA_Tower3_I",&HIRA_Tower3_I,&b_HIRA_Tower3_I);
fChain->SetBranchAddress("HIRA_Tower3_Reg",&HIRA_Tower3_Reg,&b_HIRA_Tower3_Reg);
fChain->SetBranchAddress("HIRA_Tower3_TC[5]",&HIRA_Tower3_TC,&b_HIRA_Tower3_TC);
fChain->SetBranchAddress("HIRA_Tower4_I",&HIRA_Tower4_I,&b_HIRA_Tower4_I);
fChain->SetBranchAddress("HIRA_Tower4_Reg",&HIRA_Tower4_Reg,&b_HIRA_Tower4_Reg);
fChain->SetBranchAddress("HIRA_Tower4_TC[5]",&HIRA_Tower4_TC,&b_HIRA_Tower4_TC);
fChain->SetBranchAddress("I252IG",&I252IG,&b_I252IG);
fChain->SetBranchAddress("HIRA_Tower0_I_Up",&HIRA_Tower0_I_Up,&b_HIRA_Tower0_I_Up);
fChain->SetBranchAddress("HIRA_Tower0_Reg_Up",&HIRA_Tower0_Reg_Up,&b_HIRA_Tower0_Reg_Up);
fChain->SetBranchAddress("HIRA_Tower0_TC_Up[5]",&HIRA_Tower0_TC_Up,&b_HIRA_Tower0_TC_Up);
fChain->SetBranchAddress("HIRA_Tower1_I_Up",&HIRA_Tower1_I_Up,&b_HIRA_Tower1_I_Up);
fChain->SetBranchAddress("HIRA_Tower1_Reg_Up",&HIRA_Tower1_Reg_Up,&b_HIRA_Tower1_Reg_Up);
fChain->SetBranchAddress("HIRA_Tower1_TC_Up[5]",&HIRA_Tower1_TC_Up,&b_HIRA_Tower1_TC_Up);
fChain->SetBranchAddress("HIRA_Tower2_I_Up",&HIRA_Tower2_I_Up,&b_HIRA_Tower2_I_Up);
fChain->SetBranchAddress("HIRA_Tower2_Reg_Up",&HIRA_Tower2_Reg_Up,&b_HIRA_Tower2_Reg_Up);
fChain->SetBranchAddress("HIRA_Tower2_TC_Up[5]",&HIRA_Tower2_TC_Up,&b_HIRA_Tower2_TC_Up);
fChain->SetBranchAddress("HIRA_Tower3_I_Up",&HIRA_Tower3_I_Up,&b_HIRA_Tower3_I_Up);
fChain->SetBranchAddress("HIRA_Tower3_Reg_Up",&HIRA_Tower3_Reg_Up,&b_HIRA_Tower3_Reg_Up);
fChain->SetBranchAddress("HIRA_Tower3_TC_Up[5]",&HIRA_Tower3_TC_Up,&b_HIRA_Tower3_TC_Up);
fChain->SetBranchAddress("HIRA_Tower4_I_Up",&HIRA_Tower4_I_Up,&b_HIRA_Tower4_I_Up);
fChain->SetBranchAddress("HIRA_Tower4_Reg_Up",&HIRA_Tower4_Reg_Up,&b_HIRA_Tower4_Reg_Up);
fChain->SetBranchAddress("HIRA_Tower4_TC_Up[5]",&HIRA_Tower4_TC_Up,&b_HIRA_Tower4_TC_Up);
fChain->SetBranchAddress("I252IG_Up",&I252IG_Up,&b_I252IG_Up);
}
void TEpics::SetName(const Char_t *name)
{
fName = name;
}
void TEpics::SetNameTitle(const Char_t *name, const Char_t *title)
{
fName = name;
fTitle = title;
}
void TEpics::SetTitle(const Char_t *title)
{
fTitle = title;
}
UShort_t* TEpics::Unpack(UShort_t *pEvent)
{
UShort_t nItems;
Char_t itemString[1000];
Char_t type[200];
Char_t itemName[200];
Char_t valueName[200];
Float_t value;
nItems = *pEvent;
for(Int_t j=0; j<10; j++) *pEvent++;
for(Int_t i=0; i<nItems; i++){
memset(itemString,'\0',1000);
for(Int_t j=0; j<8192; j = j+2){
itemString[j] = (Char_t)(*pEvent&0x00ff);
itemString[j+1] = (Char_t)(*pEvent>>8);
pEvent++;
if(itemString[j+1] == '\0') break;
}
sscanf(itemString,"%*s %*[A-Z]_%[A-Z0-9](%[A-Z0-9_]) %*c%s",type,itemName,valueName);
value = (Float_t)atof(valueName);
if(strcmp(type,"DATA")==0){
if(strcmp(itemName,"HIRA_TOW0_I")==0) HIRA_Tower0_I = value;
if(strcmp(itemName,"HIRA_TOW0_REG")==0) HIRA_Tower0_Reg = value;
if(strcmp(itemName,"HIRA_TOW0_TC0")==0) HIRA_Tower0_TC[0] = value;
if(strcmp(itemName,"HIRA_TOW0_TC1")==0) HIRA_Tower0_TC[1] = value;
if(strcmp(itemName,"HIRA_TOW0_TC2")==0) HIRA_Tower0_TC[2] = value;
if(strcmp(itemName,"HIRA_TOW0_TC3")==0) HIRA_Tower0_TC[3] = value;
if(strcmp(itemName,"HIRA_TOW0_TC4")==0) HIRA_Tower0_TC[4] = value;
if(strcmp(itemName,"HIRA_TOW1_I")==0) HIRA_Tower1_I = value;
if(strcmp(itemName,"HIRA_TOW1_REG")==0) HIRA_Tower1_Reg = value;
if(strcmp(itemName,"HIRA_TOW1_TC0")==0) HIRA_Tower1_TC[0] = value;
if(strcmp(itemName,"HIRA_TOW1_TC1")==0) HIRA_Tower1_TC[1] = value;
if(strcmp(itemName,"HIRA_TOW1_TC2")==0) HIRA_Tower1_TC[2] = value;
if(strcmp(itemName,"HIRA_TOW1_TC3")==0) HIRA_Tower1_TC[3] = value;
if(strcmp(itemName,"HIRA_TOW1_TC4")==0) HIRA_Tower1_TC[4] = value;
if(strcmp(itemName,"HIRA_TOW2_I")==0) HIRA_Tower2_I = value;
if(strcmp(itemName,"HIRA_TOW2_REG")==0) HIRA_Tower2_Reg = value;
if(strcmp(itemName,"HIRA_TOW2_TC0")==0) HIRA_Tower2_TC[0] = value;
if(strcmp(itemName,"HIRA_TOW2_TC1")==0) HIRA_Tower2_TC[1] = value;
if(strcmp(itemName,"HIRA_TOW2_TC2")==0) HIRA_Tower2_TC[2] = value;
if(strcmp(itemName,"HIRA_TOW2_TC3")==0) HIRA_Tower2_TC[3] = value;
if(strcmp(itemName,"HIRA_TOW2_TC4")==0) HIRA_Tower2_TC[4] = value;
if(strcmp(itemName,"HIRA_TOW3_I")==0) HIRA_Tower3_I = value;
if(strcmp(itemName,"HIRA_TOW3_REG")==0) HIRA_Tower3_Reg = value;
if(strcmp(itemName,"HIRA_TOW3_TC0")==0) HIRA_Tower3_TC[0] = value;
if(strcmp(itemName,"HIRA_TOW3_TC1")==0) HIRA_Tower3_TC[1] = value;
if(strcmp(itemName,"HIRA_TOW3_TC2")==0) HIRA_Tower3_TC[2] = value;
if(strcmp(itemName,"HIRA_TOW3_TC3")==0) HIRA_Tower3_TC[3] = value;
if(strcmp(itemName,"HIRA_TOW3_TC4")==0) HIRA_Tower3_TC[4] = value;
if(strcmp(itemName,"HIRA_TOW4_I")==0) HIRA_Tower4_I = value;
if(strcmp(itemName,"HIRA_TOW4_REG")==0) HIRA_Tower4_Reg = value;
if(strcmp(itemName,"HIRA_TOW4_TC0")==0) HIRA_Tower4_TC[0] = value;
if(strcmp(itemName,"HIRA_TOW4_TC1")==0) HIRA_Tower4_TC[1] = value;
if(strcmp(itemName,"HIRA_TOW4_TC2")==0) HIRA_Tower4_TC[2] = value;
if(strcmp(itemName,"HIRA_TOW4_TC3")==0) HIRA_Tower4_TC[3] = value;
if(strcmp(itemName,"HIRA_TOW4_TC4")==0) HIRA_Tower4_TC[4] = value;
if(strcmp(itemName,"HIRA_TOW5_I")==0) HIRA_Tower5_I = value;
if(strcmp(itemName,"HIRA_TOW5_REG")==0) HIRA_Tower5_Reg = value;
if(strcmp(itemName,"HIRA_TOW5_TC0")==0) HIRA_Tower5_TC[0] = value;
if(strcmp(itemName,"HIRA_TOW5_TC1")==0) HIRA_Tower5_TC[1] = value;
if(strcmp(itemName,"HIRA_TOW5_TC2")==0) HIRA_Tower5_TC[2] = value;
if(strcmp(itemName,"HIRA_TOW5_TC3")==0) HIRA_Tower5_TC[3] = value;
if(strcmp(itemName,"HIRA_TOW5_TC4")==0) HIRA_Tower5_TC[4] = value;
if(strcmp(itemName,"I252IG")==0) I252IG = value;
}
}
return pEvent;
}
Last change: Tue Dec 16 22:01:05 2008
Last generated: 2008-12-16 22:01
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.