ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
ECCE @ EIC Software
Deprecated List
Modules
Namespaces
Classes
Files
File List
acts
analysis
coresoftware
Doxygen_Assist
ecce-detectors
fun4all_eicdetectors
geant4
macros
online_distribution
blob
master
newbasic
A_Event.cc
A_Event.h
all.h
BoolDefs.h
buffer.cc
buffer.h
BufferConstants.h
caen_correction.cc
caen_correction.h
Cframe.C
Cframe.h
CframeV1.C
CframeV1.h
changehitformat.cc
changeid.cc
Cpacket.C
Cpacket.h
CpacketV1.C
CpacketV1.h
dataBlock.C
dataBlock.h
dataBlockHdr.h
dataBlockPublic.h
date_filter_msg_buffer.cc
date_filter_msg_buffer.h
ddump.cc
decoding_routines.cc
decoding_routines.h
devicedefs.h
dlist.cc
dpipe.cc
dpipe_filter.h
errorBlock.C
errorBlock.h
Event.h
event_io.h
eventcombiner.cc
Eventiterator.h
eventLinkDef.h
EventTypes.h
evt_mnemonic.cc
EvtConstants.h
EvtStructures.h
fakeFrame.C
fakeFrame.h
fileEventiterator.cc
fileEventiterator.h
filter_msg_buffer.cc
filter_msg_buffer.h
formatError.C
formatError.h
formatIO.C
formatIO.h
frameHdr.h
frameHdrV1.h
framePackets.C
framePackets.h
framePublic.h
frameRoutines.C
frameRoutines.h
frameSourceIds.h
frameV1Public.h
gen_utilities.h
generalDefinitions.h
gzbuffer.cc
gzbuffer.h
listEventiterator.cc
listEventiterator.h
lzobuffer.cc
lzobuffer.h
md5.cc
md5.h
mizar.h
msg_buffer.cc
msg_buffer.h
msg_control.cc
msg_control.h
msg_profile.h
msgLinkDef.h
msgqueue.C
oamlBuffer.cc
oamlBuffer.h
oBuffer.cc
oBuffer.h
odd_filter.cc
oEvent.cc
oEvent.h
ogzBuffer.cc
ogzBuffer.h
olzoBuffer.cc
olzoBuffer.h
oncs_mnemonic.cc
oncsBuffer.cc
oncsBuffer.h
oncsCollection.h
oncsdefs.h
oncsEvent.cc
oncsEvent.h
oncsEventiterator.cc
oncsEventiterator.h
oncsEvtConstants.h
oncsEvtStructures.h
oncsStructures.h
oncsSub_id2evt.cc
oncsSub_id2evt.h
oncsSub_id4evt.cc
oncsSub_id4evt.h
oncsSub_idbspetdata.cc
oncsSub_idbspetdata.h
oncsSub_idcaenv1742.cc
oncsSub_idcaenv1742.h
oncsSub_idcaenv792.cc
oncsSub_idcaenv792.h
oncsSub_idcstr.cc
oncsSub_idcstr.h
oncsSub_iddigitizerv1.cc
oncsSub_iddigitizerv1.h
oncsSub_iddreamv0.cc
oncsSub_iddreamv0.h
oncsSub_iddrs4v1.cc
oncsSub_iddrs4v1.h
oncsSub_idfnalmwpc.cc
oncsSub_idfnalmwpc.h
oncsSub_idfnalmwpcv2.cc
oncsSub_idfnalmwpcv2.h
oncsSub_idmvtxv0.cc
oncsSub_idmvtxv0.h
oncsSub_idmvtxv1.cc
oncsSub_idmvtxv1.h
oncsSub_idmvtxv2.cc
oncsSub_idmvtxv2.h
oncsSub_idrcpetdata.cc
oncsSub_idrcpetdata.h
oncsSub_idsis3300.cc
oncsSub_idsis3300.h
oncsSub_idsis3300r.cc
oncsSub_idsis3300r.h
oncsSub_idsrs_v01.cc
oncsSub_idsrs_v01.h
oncsSub_idtpcfeev1.cc
oncsSub_idtpcfeev1.h
oncsSub_idtpcfeev2.cc
oncsSub_idtpcfeev2.h
oncsSub_iduppetdata.cc
oncsSub_iduppetdata.h
oncsSub_iduppetdata_v104.cc
oncsSub_iduppetdata_v104.h
oncsSub_iduppetparams.cc
oncsSub_iduppetparams.h
oncsSubConstants.h
oncsSubevent.cc
oncsSubevent.h
ophBuffer.cc
ophBuffer.h
ospBuffer.cc
ospBuffer.h
ospEvent.cc
ospEvent.h
packet.h
packet_A.cc
packet_A.h
packet_cdevbpm.cc
packet_cdevbpm.h
packet_cdevbuckets.cc
packet_cdevbuckets.h
packet_cdevdvm.cc
packet_cdevdvm.h
packet_cdevir.cc
packet_cdevir.h
packet_cdevmadch.cc
packet_cdevmadch.h
packet_cdevpolarimeter.cc
packet_cdevpolarimeter.h
packet_cdevpoltarget.cc
packet_cdevpoltarget.h
packet_cdevring.cc
packet_cdevring.h
packet_cdevringnopol.cc
packet_cdevringnopol.h
packet_cdevwcm.cc
packet_cdevwcm.h
packet_collection.h
packet_fvtx_dcm0.cc
packet_fvtx_dcm0.h
packet_gl1.cc
packet_gl1.h
packet_gl1_evclocks.cc
packet_gl1_evclocks.h
packet_gl1p.cc
packet_gl1p.h
packet_gl1psum.cc
packet_gl1psum.h
packet_hbd_fpga.cc
packet_hbd_fpga.h
packet_hbd_fpgashort.cc
packet_hbd_fpgashort.h
packet_id2evt.cc
packet_id2evt.h
packet_id4evt.cc
packet_id4evt.h
packet_id4scaler.cc
packet_id4scaler.h
packet_idcdevdescr.cc
packet_idcdevdescr.h
packet_idcstr.cc
packet_idcstr.h
packet_iddigitizerv2.cc
packet_iddigitizerv2.h
packet_mnemonic.cc
packet_starscaler.cc
packet_starscaler.h
packet_w124.cc
packet_w124.h
packetConstants.h
packetHdr.h
packetHdrV1.h
packetHeaders.h
packetPublic.h
packetRoutines.C
packetRoutines.h
packetV1Public.h
phenixOnline.h
phenixTypes.h
PHmd5Utils.cc
PHmd5Utils.h
PHmd5Value.cc
PHmd5Value.h
prdf2prdf.cc
prdfBuffer.cc
prdfBuffer.h
prdfcheck.cc
prdfsplit.cc
printmsg.h
rcdaqEventiterator.cc
rcdaqEventiterator.h
remote_msg_buffer.cc
remote_msg_buffer.h
simpleRandom.cc
simpleRandom.h
strnstr.cc
strnstr.h
strptime.cc
testEventiterator.cc
testEventiterator.h
pmonitor
tutorials
doxygen_mainpage.h
File Members
External Links
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
packet_cdevmadch.cc
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file packet_cdevmadch.cc
1
#include <
packet_cdevmadch.h
>
2
#include <time.h>
3
#include <stdio.h>
4
Packet_cdevmadch::Packet_cdevmadch
(
PACKET_ptr
data
)
5
:
Packet_w4
(data)
6
{
7
ps
= 0;
8
}
9
10
int
*
Packet_cdevmadch::decode
(
int
*nwout)
11
{
12
13
if
(
ps
!= 0)
return
0;
14
int
il =
getDataLength
();
15
no_structures
= 4* il /
sizeof
(
struct
cdevMadchData
);
16
std::cout <<
"no_structures = "
<<
no_structures
<< std::endl;
17
18
int
*
k
= (
int
*)
findPacketDataStart
(
packet
);
19
if
(k == 0)
20
{
21
ps
= 0;
22
*nwout = 0;
23
return
0;
24
}
25
ps
= (
struct
cdevMadchData
*) k;
26
27
28
//fix_endianess ( &ps->current);
29
//fix_endianess ( ps->avgOrbPosition);
30
//fix_endianess ( ps->avgOrbVariance);
31
//fix_endianess ( ps->avgOrbStat);
32
33
34
*nwout = 0;
35
36
return
0;
37
}
38
39
40
// ------------------------------------------------------
41
42
43
void
Packet_cdevmadch::dump
(
OSTREAM
&os)
44
{
45
46
int
i;
47
48
decode
(&i);
49
50
this->
identify
(os);
51
os <<
"Number of readings: "
<<
iValue
(0,
"NOREADINGS"
) << std::endl;
52
53
os <<
"current "
<< std::endl;
54
for
( i = 0; i <
iValue
(0,
"NOREADINGS"
) ; i++)
55
{
56
/*
57
os << std::setw(4 ) << i ;
58
os << std::setw(16) << ps[i].current;
59
os << std::endl;
60
*/
61
62
printf
(
"%d hex current %x current %lf\n"
,i,(
unsigned
)
ps
[i].
current
,
ps
[i].current);
63
//printf("%d current %lf\n",i,ps[i].current);
64
65
/*
66
os << std::setw(16) << dValue(i,"current");
67
os << std::setw(16) << " int value " << iValue(i,"current");
68
os << std::setw(16) << " time " << iValue(i,"timestamp");
69
os << std::endl;
70
*/
71
72
}
73
74
dumpErrorBlock
(os);
75
dumpDebugBlock
(os);
76
}
77
78
79
int
Packet_cdevmadch::iValue
(
const
int
ich,
const
char
*what)
80
{
81
82
// std::cout << "IN Packet_cdevmadch::rValue " << std::endl;
83
int
i;
84
decode
(&i);
85
// Unix time
86
if
( strcmp(what,
"NOREADINGS"
) == 0 )
return
no_structures
;
87
if
( strcmp(what,
"timestamp"
) == 0 )
return
ps
[ich].
cdevCaptureTimeStamp
;
88
89
std::cout <<
"packet_cdevmadc::iValue error unknown datum: "
<< what << std::endl;
90
return
0;
91
}
92
93
94
double
Packet_cdevmadch::dValue
(
const
int
ich,
const
char
*what)
95
{
96
97
98
// std::cout << "IN Packet_cdevmadch::rValue " << std::endl;
99
int
i;
100
decode
(&i);
101
102
if
( ich < 0 || ich >=
no_structures
)
return
0;
103
104
if
( strcmp(what,
"current"
) == 0 )
return
ps
[ich].
current
;
105
106
107
std::cout <<
"packet_cdevmadc::dValue error unknown datum: "
<< what << std::endl;
108
return
0;
109
110
111
112
}
113
114
online_distribution
blob
master
newbasic
packet_cdevmadch.cc
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:25:59
using
1.8.2 with
ECCE GitHub integration