HARPO
5.1.1
Main Page
Related Pages
Data Structures
Files
Examples
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
dcc
HarpoDccHeader.cxx
Go to the documentation of this file.
1
//
2
// File HarpoDccHeader.cxx
3
//
11
#include "
HarpoConfig.h
"
12
#include "
HarpoDccHeader.h
"
13
#include "
HarpoDccReader.h
"
14
#include "
HarpoPedMgr.h
"
15
#include <cstdlib>
16
#include <cstdio>
17
#include <iostream>
18
#include <time.h>
19
20
#define HARO_RUN_HEADER_LEN 20
21
22
const
char
*
timefmt
=
"R%Y.%m.%d-%T"
;
23
24
ClassImp(
HarpoDccHeader
)
25
26
HarpoDccHeader
::
HarpoDccHeader
() :
HarpoDetHeader
()
27
{
28
fHeaderLen =
HARO_RUN_HEADER_LEN
;
29
fHeader =
new
char
[(
HARO_RUN_HEADER_LEN
)+1];
30
fHeader[
HARO_RUN_HEADER_LEN
] = 0;
// Zero termination for string
31
fHeader[0] = 0;
// Zero string
32
peds = NULL;
33
}
34
35
HarpoDccHeader::HarpoDccHeader
(FILE *fIn) :
HarpoDetHeader
()
36
{
37
size_t
nr;
38
39
fHeaderLen
=
HARO_RUN_HEADER_LEN
;
40
fHeader
=
new
char
[(
HARO_RUN_HEADER_LEN
)+1];
41
fHeader
[
HARO_RUN_HEADER_LEN
] = 0;
// Zero termination for string
42
peds
= NULL;
43
44
nr = std::fread(fHeader,
HARO_RUN_HEADER_LEN
, 1, fIn);
45
if
( nr != 1 ) printf(
"Dcc Header read error\n"
);
46
}
47
48
49
Bool_t
HarpoDccHeader::check
(
HarpoDccReader
*
const
rdr)
50
{
51
struct
tm startTime;
52
53
if
( strptime(
fHeader
,
timefmt
,&startTime) == (
char
*)NULL )
54
{
55
printf(
"HARPO Bad Header %s\n"
,
fHeader
);
56
return
false
;
57
};
58
59
//This to make valgrin happy
60
startTime.tm_isdst = -1;
/* Not set by strptime(); tells mktime()
61
to determine whether daylight saving time
62
is in effect */
63
64
fTime
= mktime(&startTime);
65
67
HarpoPedMgr
* pedmgr =
gHConfig
->
GetHarpoPedMgr
();
68
Long64_t run =
gHConfig
->
GetRunNo
();
69
70
peds
= pedmgr->
Lookup
(run,rdr->
GetDet
());
71
72
return
true
;
73
}
74
75
void
HarpoDccHeader::print
()
76
{
77
std::cout <<
"--- HarpoDccHeader"
<< std::endl
78
<<
"Start Time : "
<<
fTime
<< std::endl
79
<<
"Dcc Header : "
<<
fHeader
<< std::endl;
80
}
81
HarpoDetHeader
A class hold HARPO run iformation.
Definition:
HarpoDetHeader.h:15
HarpoDccReader
A class which read HARPO dcc file from one DCC and creant Dcc Events and Dcc Headers for DCC Events o...
Definition:
HarpoDccReader.h:21
HarpoConfig::GetRunNo
Long64_t GetRunNo()
Set Run Number.
Definition:
HarpoConfig.h:127
HarpoDccHeader
A class hold HARPO run iformation.
Definition:
HarpoDccHeader.h:18
HarpoDccHeader::HarpoDccHeader
HarpoDccHeader()
HarpoPedMgr::Lookup
HarpoPedestal * Lookup(Long_t run, Long_t detno)
! Serach pedestal and means for given plane
Definition:
HarpoPedMgr.cxx:37
HarpoDccReader.h
HarpoDccHeader.h
HarpoDetHeader::fTime
time_t fTime
Definition:
HarpoDetHeader.h:42
HarpoPedMgr.h
HarpoDccHeader::check
Bool_t check()
Definition:
HarpoDccHeader.h:31
HarpoDetHeader::fHeaderLen
int fHeaderLen
Run Staring Time.
Definition:
HarpoDetHeader.h:43
HarpoConfig.h
HarpoDetHeader::fHeader
char * fHeader
Definition:
HarpoDetHeader.h:44
HarpoDccHeader::peds
HarpoPedestal * peds
Definition:
HarpoDccHeader.h:35
HarpoConfig::GetHarpoPedMgr
HarpoPedMgr * GetHarpoPedMgr()
Get pointer to Harpo Feminos pdestal manager.
Definition:
HarpoConfig.h:163
HarpoPedMgr
Definition:
HarpoPedMgr.h:15
timefmt
const char * timefmt
Definition:
HarpoDccHeader.cxx:22
HarpoDccHeader::print
void print()
Definition:
HarpoDccHeader.cxx:75
HARO_RUN_HEADER_LEN
#define HARO_RUN_HEADER_LEN
Definition:
HarpoDccHeader.cxx:20
gHConfig
HarpoConfig * gHConfig
Definition:
HarpoConfig.cxx:101
HarpoDetReader::GetDet
Int_t GetDet()
Define plane X or Y.
Definition:
HarpoDetReader.h:48
Generated by
1.8.6