]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/PHOS/AliHLTPHOSSharedMemoryInterfacev2.h
New production macros (Yves)
[u/mrichter/AliRoot.git] / HLT / PHOS / AliHLTPHOSSharedMemoryInterfacev2.h
1 //-*- Mode: C++ -*-
2 // $Id$
3
4 #ifndef ALIHLTPHOSSHAREDMEMORYINTERFACEV2_H
5 #define ALIHLTPHOSSHAREDMEMORYINTERFACEV2_H
6
7 /**************************************************************************
8  * This file is property of and copyright by the Experimental Nuclear     *
9  * Physics Group, Dep. of Physics                                         *
10  * University of Oslo, Norway, 2007                                       *
11  *                                                                        *
12  * Author: Per Thomas Hille <perthi@fys.uio.no> for the ALICE HLT Project.*
13  * Contributors are mentioned in the code where appropriate.              *
14  * Please report bugs to perthi@fys.uio.no                                *
15  *                                                                        *
16  * Permission to use, copy, modify and distribute this software and its   *
17  * documentation strictly for non-commercial purposes is hereby granted   *
18  * without fee, provided that the above copyright notice appears in all   *
19  * copies and that both the copyright notice and this permission notice   *
20  * appear in the supporting documentation. The authors make no claims     *
21  * about the suitability of this software for any purpose. It is          *
22  * provided "as is" without express or implied warranty.                  *
23  **************************************************************************/
24
25 #include "Rtypes.h"
26 #include "AliHLTPHOSBase.h"
27
28 class AliHLTPHOSChannelDataHeaderStruct;
29 class AliHLTPHOSChannelDataStruct;
30
31 class  AliHLTPHOSSharedMemoryInterfacev2
32 {
33  public:
34   AliHLTPHOSSharedMemoryInterfacev2();
35   virtual ~AliHLTPHOSSharedMemoryInterfacev2();
36   AliHLTPHOSChannelDataStruct*   NextChannel();
37   void SetMemory(AliHLTPHOSChannelDataHeaderStruct* channelDataHeaderPtr);
38   void Reset();
39
40  private:
41   AliHLTPHOSSharedMemoryInterfacev2(const  AliHLTPHOSSharedMemoryInterfacev2 & );
42   AliHLTPHOSSharedMemoryInterfacev2 & operator = (const  AliHLTPHOSSharedMemoryInterfacev2 &);
43   
44   AliHLTPHOSChannelDataStruct* fCurrentChannel;
45   AliHLTUInt8_t* fChannelDataPtr;
46   bool fIsSetMemory;
47   bool fHasRawData;
48   int fMaxCnt;
49   int fCurrentCnt; 
50
51 };
52
53 #endif