/[PAMELA software]/yoda/event/SubPacket.h
ViewVC logotype

Contents of /yoda/event/SubPacket.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3.0 - (show annotations) (download)
Fri Mar 4 15:54:11 2005 UTC (19 years, 9 months ago) by kusanagi
Branch: MAIN
Changes since 2.3: +1 -1 lines
File MIME type: text/plain
Error proof version.
Implemented all detectors packets plus all the main telemetries packets.
Missing all the Init and Alarm packets.
Disabled CRC control on VarDump, ArrDump, TabDump for CPU debugging needs
(the data formats seems correct even if CRC get wrong)

1 /** @file
2 * $Source: /home/cvsmanager/yoda/event/SubPacket.h,v $
3 * $Id: SubPacket.h,v 2.3 2005/01/13 14:43:21 kusanagi Exp $
4 * $Author: kusanagi $
5 *
6 * Header file for the SubPacket class.
7 */
8 #ifndef SUB_PACKET_H
9 #define SUB_PACKET_H
10
11 #define UINT32 unsigned int
12 #define UINT16 unsigned short
13 #define UINT8 unsigned char
14 #include "PacketType.h"
15 #include "SubDetector.h"
16 #include "TObject.h"
17
18 namespace pamela {
19 /**
20 * A SubPacket is the basic structure of all event data in the ROOT storage.
21 * Every ROOT tree is built on top of one SubPacket. An analys step
22 * which wants to save data needs to create a SubPacket.
23 */
24 class SubPacket: public TObject {
25 private:
26 /**
27 * The packet type of the sub packet.
28 */
29 const pamela::PacketType* Type; //!
30 /**
31 * The subdetector this packet belongs to, or 0 if it is not specific to
32 * any subdetector.
33 */
34 const pamela::SubDetector* Detector; //!
35 /**
36 * The name of the subpacket.
37 */
38 std::string SubPacketName; //!
39 protected:
40 SubPacket(std::string, const pamela::PacketType* = 0, const pamela::SubDetector* = 0);
41 virtual const char* Print(){ return "SubType"; }
42 std::stringstream oss; //!
43 public:
44 SubPacket(void);
45 /**
46 * Get the name of the SubPacket.
47 */
48 virtual std::string GetSubPacketName(void) const { return SubPacketName; }
49 /**
50 * Return TRUE if the SubPacket belongs to a certain subdetector.
51 */
52 bool IsDetectorSpecific(void) const { return (Detector != 0); }
53 /**
54 * Get the subdetector if the SubPacket is detector specific.
55 */
56 const pamela::SubDetector* GetSubDetector(void) const { return Detector; }
57 /**
58 * Get the packet type (physics, orbital etc.) the SubPacket belongs to.
59 */
60 const pamela::PacketType* GetPacketType(void) const { return Type; }
61
62 ClassDef(SubPacket, 1)
63 };
64 }
65
66 #endif /* SUB_PACKET_H */
67

  ViewVC Help
Powered by ViewVC 1.1.23