/[PAMELA software]/yoda/event/mcmd/McmdRecord.h
ViewVC logotype

Diff of /yoda/event/mcmd/McmdRecord.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1 by kusanagi, Tue Jul 6 12:20:23 2004 UTC revision 4.5 by kusanagi, Mon Aug 29 08:27:32 2005 UTC
# Line 1  Line 1 
1  /** @file  /** @file
2   * $Source: /home/cvspamela/yoda/event/mcmd/McmdRecord.h,v $   * $Source: /home/cvsmanager/yoda/event/mcmd/McmdRecord.h,v $
3   * $Id: McmdRecord.h,v 1.8 2004/04/22 15:51:03 nagni Exp $   * $Id: McmdRecord.h,v 4.4 2005/05/28 10:44:09 kusanagi Exp $
4   * $Author: nagni $   * $Author: kusanagi $
5   *   *
6   * Header file for the McmdRecord class.   * Header file for the McmdRecord class.
7   */   */
8  #ifndef MCMD_RECORD_H  #ifndef MCMD_RECORD_H
9  #define MCMD_RECORD_H  #define MCMD_RECORD_H
10    
11  #define UINT32 unsigned int  #include <TArrayC.h>
 #define UINT16 unsigned short  
 #define BYTE   unsigned char  
   
 #include <TObject.h>  
   
12    
13  namespace pamela {  namespace pamela {
14    /**    /**
15     * McmdRecord data Wrapper     * McmdRecord data Wrapper
16       *
17       *
18       * PAMELA CPU software collect several pamela::McmdRecord(s) writing
19       * them on the MassMemory as a unique packet.
20     */     */
21    class McmdRecord: public TObject {    class McmdRecord: public TObject {
22    
23    public:    public:
24      /**      /**
25       * Get the run name according to a certain run number.       * The On-Board-Time of the Record.
      * @param run Run number.  
      * @return a string with the run name.  
26       */       */
27      UINT32 MCMD_RECORD_OBT;      UINT32 MCMD_RECORD_OBT;
     int  Mcmd_Block_crc_ok;  
28            
29        /**
30         * The Mcmd crc result.
31         *
32         * It specifies if the  Mcmd was transmitted correctly: <br>
33         * 0 = Mcmd correctly transmitted <br>
34         * 1 = Mcmd  not correctly transmitted
35         */
36        int  Mcmd_Block_crc_ok;
37    
38        /**
39         * The Sequential ID of the MCMD.
40         */
41      UINT16         SeqID;      UINT16         SeqID;
42      BYTE           Tbit;  
43      BYTE           ID1;      /**
44         * Identify if the Mcmd is a Tagged one or not.
45         */
46        UINT8          Tbit;
47    
48        /**
49         * The MCMD identifier.
50         */
51        UINT8          ID1;
52    
53        /**
54         * The Mcmd length.
55         */
56      UINT16         McmdLength;      UINT16         McmdLength;
57    
58        /**
59         * The On-Board-Time for start the Mcmd if it is TimeTagged.
60         */
61      UINT32         TimeTag;      UINT32         TimeTag;
62      BYTE*          McmdData;  
63      BYTE           endID;      /**
64         * An array of chars containing the Mcmd data area.
65         */
66        TArrayC       *McmdData;
67    
68        /**
69         * Modulo 256 sum of all bytes except the endID
70         */
71        UINT8          endID;
72    
73    
74      McmdRecord(void);      McmdRecord(void);
75                    
76      void setMcmdData(const BYTE val[]) {      /*void setMcmdData(const BYTE val[]) {
77        if (McmdLength > 0){        if (McmdLength > 0){
78          McmdData = new BYTE[McmdLength];          McmdData = new BYTE[McmdLength];
79          memcpy(McmdData, val, McmdLength);          memcpy(McmdData, val, McmdLength);
80        }        }
81      };      };*/
82            
83      ClassDef(McmdRecord, 1)      ClassDef(McmdRecord, 1)
84    };    };

Legend:
Removed from v.1.1  
changed lines
  Added in v.4.5

  ViewVC Help
Powered by ViewVC 1.1.23