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

Annotation of /chewbacca/event/SubPacket.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1.1.1 - (hide annotations) (download) (vendor branch)
Tue Sep 23 07:19:54 2008 UTC (16 years, 2 months ago) by mocchiut
Branch: v0r00
CVS Tags: v1r02, v1r00, v1r01, start
Changes since 1.1: +0 -0 lines
File MIME type: text/plain
Imported sources, 23/09/2008

1 mocchiut 1.1 /** @file
2     * $Source: /repository/event/SubPacket.h,v $
3     * $Id: SubPacket.h,v 1.1 2008-01-11 17:14:19 messineo Exp $
4     * $Author: messineo $
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