11 if (name) SetName(name);
15 StUKey::StUKey(
const char *name,UInt_t uk)
17 if (name) SetName(name);
21 StUKey::StUKey(UInt_t uRun,UInt_t uEvent)
23 UInt_t u[2]; u[0]=uRun; u[1]=uEvent;
24 int n = 1;
if (u[1]) n=2;
28 void StUKey::SetUrr(
const UInt_t *uk,
int nk)
34 for (n=1;n<nk && uk[n]; n++){}
36 memcpy(fUrr,uk,nk*
sizeof(UInt_t));
41 SetName(from.GetName());
42 SetUrr(from.fUrr,from.fNUrr);
46 StUKey &StUKey::operator=( UInt_t from)
52 StUKey &StUKey::operator=(
const char *from)
58 void StUKey::Update(
const StUKey &from,
const char *name)
60 SetUrr(from.fUrr,from.fNUrr);
61 if (name) SetName(name);
64 TString StUKey::GetKey()
const
68 for (
int i=0;i<fNUrr;i++){
70 sprintf(ubuf,
"%010u",fUrr[i]);
75 void StUKey::SetKey(
const char *key)
78 int n = strchr(key,
'.') - key;
80 fName.Replace(0,999,key,n);
81 for (fNUrr = 0,cc=key+n;*cc==
'.'; cc+=11)
82 fUrr[fNUrr++] = strtoul(cc+1,0,10);
85 UInt_t StUKey::GetSum()
const
88 for (
int i=1;i<fNUrr;i++) s^=fUrr[i];
92 StUKey StFileI::GetNextEvent()
94 UInt_t u[9] = {0,0,0,0,0,0,0,0,0};
95 int ret = GetNextEvent(u);