EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
framePublic.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file framePublic.h
1 /*
2 ** framePublic.h
3 **
4 ** Author: $Author: purschke $
5 ** Date: $Date: 2000/07/21 01:51:13 $
6 **
7 ** $Log: framePublic.h,v $
8 ** Revision 1.1.1.1 2000/07/21 01:51:13 purschke
9 ** mlp -- adding the new automakified "basic" module to CVS.
10 **
11 **
12 ** Revision 1.3 1998/12/11 22:01:42 markacs
13 ** (stephen markacs) adding log into cvs tags
14 **
15 */
16 /*
17 ** framePublic.h
18 **
19 ** Defines "public" enumerations, typedefs, etc. used in both
20 ** C and C++ frame routines.
21 **
22 */
23 
24 #ifndef _FRAMEPUBLIC_
25 #define _FRAMEPUBLIC_
26 
27 #include "phenixOnline.h"
28 #include "frameV1Public.h"
29 
30 /*
31 ** Use C linkage for below structures
32 */
33 #ifdef __cplusplus
34 extern "C" {
35 #endif
36 
37  /*
38  ** Here's a current failure in the frame versioning scheme as implemented
39  ** Right now the alignment block is treated as being defined with a particular
40  ** version. That means the contents are version specific. Until we figure out
41  ** how to handle this problem, explicitly define the alignment block to be from V1
42  */
44 
45  /*
46  ** Define the type of pointer used for a frame. For now a frame
47  ** will be pointed to as if it is a PHDWORD array. When headers
48  ** are accessed the pointer to the frame will be cast to that
49  ** of the proper header type.
50  */
51 
52  typedef PHDWORD* FRAME_ptr;
53 
54  /*
55  ** Enumeration for the "dataType" field
56  */
57  enum DataTypes {
61  rawData = 4
62  /*
63  ** more to be added
64  */
65  } ;
66 
67  /*
68  ** Enumeration for the "frameType" field
69  */
70  enum FrameTypes {
71  dcmFrame = 1,
72  dcbFrame = 2,
73  sebFrame = 3,
74  atpFrame = 4,
76  /*
77  ** more to be added
78  */
79  } ;
80 
81 #ifdef __cplusplus
82 }
83 #endif
84 
85 #endif
86 
87 
88 
89 
90 
91 
92 
93