1 |
querten |
1.1 |
// Chunk.h: Contains everything related to chunk.
|
2 |
|
|
// Structure declaration
|
3 |
|
|
// List of Chunk ID
|
4 |
|
|
// ...
|
5 |
|
|
//
|
6 |
|
|
//////////////////////////////////////////////////////////////////////
|
7 |
|
|
|
8 |
|
|
#ifndef _CHUNK_H__
|
9 |
|
|
#define _CHUNK_H__
|
10 |
|
|
|
11 |
|
|
#define _CRT_SECURE_NO_DEPRECATE
|
12 |
|
|
|
13 |
|
|
#include <stdio.h>
|
14 |
|
|
#include <vector>
|
15 |
|
|
|
16 |
|
|
struct stChunk{ unsigned short type;
|
17 |
|
|
unsigned int size;
|
18 |
|
|
unsigned int read; };
|
19 |
|
|
|
20 |
|
|
struct stChunkToSave{ unsigned short type;
|
21 |
|
|
unsigned int size;
|
22 |
|
|
void* data;
|
23 |
|
|
void* buffer;
|
24 |
|
|
std::vector<stChunkToSave*> daughters; };
|
25 |
|
|
|
26 |
|
|
|
27 |
|
|
#define C_PRIMARY 55555 // Primary ChunkId
|
28 |
|
|
// Other Chunks are daughters of
|
29 |
|
|
// this PrimaryChunk
|
30 |
|
|
|
31 |
|
|
#define C_EVENT 10000 // Contains Chunks related to the Event
|
32 |
|
|
// [10000,19999] is reserved for Event data
|
33 |
|
|
|
34 |
|
|
#define C_SIM 11000 // Contains Chunks related to Simulation
|
35 |
|
|
// [11000,11999] is reserved for Simulation data
|
36 |
|
|
#define C_SIM_TRACKHIT 11010 // Contains PSimHits
|
37 |
|
|
#define C_SIM_CALOHIT 11020 // Contains PCaloHits
|
38 |
|
|
#define C_SIM_VERTEX 11030 // Contains SimVertex
|
39 |
|
|
#define C_SIM_TRACK 11040 // Contains SimTracks
|
40 |
|
|
|
41 |
|
|
#define C_RECO 12000 // Contains Chunks related to Reconstruction
|
42 |
|
|
// [12000,12999] is reserved for Reconstruction data
|
43 |
querten |
1.2 |
#define C_RECO_TRACK 12110 // Contains Chunks related to RecoTracks
|
44 |
querten |
1.1 |
#define C_RECO_TRACKHITS 12111 // Contains RecHits
|
45 |
|
|
|
46 |
|
|
#define C_GEOMETRY 20000 // Contains Chunks related to the Geometry
|
47 |
|
|
// [20000,29999] is reserved for geometry
|
48 |
|
|
|
49 |
querten |
1.2 |
#define C_TRACKER 21000 // Contains Chunks related to the Tracker Geometry
|
50 |
|
|
// [21000,21999] is reserved for the Tracker Geometry
|
51 |
|
|
|
52 |
|
|
#define C_TRACKER_PIB 21100 // Contains data of a PIB Module
|
53 |
|
|
#define C_TRACKER_PIE 21200 // Contains data of a PIE Module
|
54 |
|
|
#define C_TRACKER_TIB 21300 // Contains data of a TIB Module
|
55 |
|
|
#define C_TRACKER_TID 21400 // Contains data of a TID Module
|
56 |
|
|
#define C_TRACKER_TOB 21500 // Contains data of a TOB Module
|
57 |
|
|
#define C_TRACKER_TEC 21600 // Contains data of a TEC Module
|
58 |
|
|
|
59 |
querten |
1.3 |
#define C_ECAL 22000 // Contains Chunks related to the ECAL Geometry
|
60 |
|
|
// [21000,21999] is reserved for the ECAL Geometry
|
61 |
|
|
|
62 |
|
|
#define C_ECAL_EB 22100 // Contains data of a EB Module
|
63 |
|
|
#define C_ECAL_EE 22200 // Contains data of a EE Module
|
64 |
|
|
|
65 |
querten |
1.1 |
|
66 |
|
|
|
67 |
|
|
void ReadChunk (FILE* pFile, stChunk* pChunk);
|
68 |
|
|
void WriteChunk(FILE* pFile, stChunkToSave* pChunk);
|
69 |
|
|
|
70 |
|
|
|
71 |
|
|
#endif
|