]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - EVE/EveHLT/AliEveHOMERManager.h
ID gen=3 for all ch
[u/mrichter/AliRoot.git] / EVE / EveHLT / AliEveHOMERManager.h
... / ...
CommitLineData
1//-*- Mode: C++ -*-
2
3// $Id$
4// Main authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
5
6/**************************************************************************
7 * Copyright(c) 1998-2008, ALICE Experiment at CERN, all rights reserved. *
8 * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for *
9 * full copyright notice. *
10 **************************************************************************/
11
12#ifndef ALIEVEHOMERMANAGER_H
13#define ALIEVEHOMERMANAGER_H
14
15/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
16 * See cxx source for full Copyright notice */
17
18/** @file AliEveHOMERManager.h
19 @author Jochen Thaeder, Svein Lindal
20 @date
21 @brief Manager for HOMER in HLT . Inherits some functionalitye
22 from AliHLTHOMERManager, mainly from TEveEventManager
23*/
24#include "AliHLTHOMERManager.h"
25#include <TEveEventManager.h>
26#include <TGeoManager.h>
27
28class AliEveHOMERSourceList;
29class TString;
30class TTimer;
31
32class AliEveHOMERManager : public TEveElementList, public AliHLTHOMERManager {
33
34public:
35
36 /*
37 * ---------------------------------------------------------------------------------
38 * Constructor / Destructor
39 * ---------------------------------------------------------------------------------
40 */
41
42 /** constructor */
43 AliEveHOMERManager();
44
45 /** destructor */
46 virtual ~AliEveHOMERManager();
47
48 /** Connect to avahi and get the list for sources */
49 Int_t CreateEveSourcesList();
50
51 /** Keep on looking for sources until some are found */
52 Int_t CreateEveSourcesListLoop();
53
54 /** Connect to the sources found */
55 Int_t ConnectEVEtoHOMER(TString detector="ALL");
56
57 /** Delete current connections to sources and reconnect */
58 Int_t ReConnectHOMER( TString detector="" );
59
60 /** Set the retry count for source list loop */
61 void SetRetryCount(Int_t count, Int_t sleeptime) { fRetryCount = count; fRetrySleeptime = sleeptime; }
62
63 /** Get next event from the readers */
64 TList * NextHOMEREvent();
65
66 void StartEveSourceListLoop();
67 void StopEveSourceListLoop();
68
69
70private:
71
72 /** copy constructor prohibited */
73 AliEveHOMERManager(const AliEveHOMERManager&);
74
75 /** assignment operator prohibited */
76 AliEveHOMERManager& operator=(const AliEveHOMERManager&);
77
78 // == sources ==
79 AliEveHOMERSourceList* fSrcList; // List of Connected HOMER Sources
80
81
82 Int_t fRetryCount; //How many times to retry creating source list before giving up
83 Int_t fRetrySleeptime; //Sleep time between attempt at craeting source list
84
85
86 TTimer * fSourceListTimer; //Timer to attempt source list creation!
87
88 ClassDef(AliEveHOMERManager, 0); // Manage connections to HLT data-sources.
89
90
91};
92#endif