32 unsigned long long timebits, coarse_timestamp, fine_timestamp;
33 unsigned int word1, word2;
59 word2 = SubeventData[2*i];
61 fine_timestamp = (word2 >> 2) & 0x3f;
62 if ( fine_timestamp <= 32)
65 word1 = SubeventData[2*i+1];
67 p[
k] = (( word1 >> 24) & 0x3f);
68 if ( p[k] ==3) p[
k]=2;
69 else if ( p[k] ==2) p[
k]=3;
73 timebits = (word1 >> 18) & 0x1;
74 coarse_timestamp = timebits << 36;
75 timebits = (word1 & 0xfffc) >> 2;
76 coarse_timestamp += timebits << 22;
77 timebits = (word2 >> 18);
78 coarse_timestamp += timebits << 8;
79 coarse_timestamp += (word2 >> 8) & 0xff;
80 d_time[
k] = coarse_timestamp*10;
101 if ( strcmp(what,
"SAMPLES") == 0 )
106 if ( strcmp(what,
"BLOCKID") == 0 )
108 if ( ich < 0 || ich >=
samples)
return 0;
112 if ( strcmp(what,
"CRYSTALID") == 0 )
114 if ( ich < 0 || ich >=
samples)
return 0;
127 if ( ich < 0 || ich >=
samples)
return 0;
136 if ( ich < 0 || ich >=
samples)
return 0;
144 int is =
iValue(0,
"SAMPLES");
148 os <<
" sample B id C id time ( " << is <<
" Samples )" << std::endl;
150 for ( i = 0; i < is ; i++)
152 int prec = os.precision();
154 os << std::setw(5) << i <<
" | ";
156 os << std::setw(4) <<
iValue(i,
"BLOCKID") <<
" ";
157 os << std::setw(4) <<
iValue(i,
"CRYSTALID") <<
" ";
160 os << std::setw(24) << std::setprecision(24) <<
dValue(i)
161 << std::setprecision(prec) ;