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

Annotation of /yoda/event/SubPacket.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 5.0 - (hide annotations) (download)
Mon Aug 29 09:45:48 2005 UTC (19 years, 3 months ago) by kusanagi
Branch: MAIN
CVS Tags: YODA5_0/00, YODA5_0/01, YODA5_0/02
Changes since 4.4: +1 -1 lines
File MIME type: text/plain
Starting form this version:
1) includes are defined with relative (not absolute) path respect to the YODA aplication
2) RegistryEvent class is foreseen to contain post-unpack data.

1 kusanagi 1.1 /** @file
2 kusanagi 2.0 * $Source: /home/cvsmanager/yoda/event/SubPacket.h,v $
3 kusanagi 5.0 * $Id: SubPacket.h,v 4.4 2005/05/28 10:44:09 kusanagi Exp $
4 kusanagi 2.0 * $Author: kusanagi $
5 kusanagi 1.1 *
6     * Header file for the SubPacket class.
7     */
8     #ifndef SUB_PACKET_H
9     #define SUB_PACKET_H
10    
11 kusanagi 2.2 #define UINT32 unsigned int
12     #define UINT16 unsigned short
13     #define UINT8 unsigned char
14 kusanagi 1.1 #include "PacketType.h"
15     #include "SubDetector.h"
16 kusanagi 2.2 #include "TObject.h"
17 kusanagi 1.1
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 kusanagi 2.2 virtual const char* Print(){ return "SubType"; }
42     std::stringstream oss; //!
43 kusanagi 1.1 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 kusanagi 2.2
62 kusanagi 1.1 ClassDef(SubPacket, 1)
63     };
64     }
65    
66     #endif /* SUB_PACKET_H */
67    

  ViewVC Help
Powered by ViewVC 1.1.23