]> git.uio.no Git - u/mrichter/AliRoot.git/blame - EVE/EveHLT/AliEveHOMERManager.h
Extra header added to the list
[u/mrichter/AliRoot.git] / EVE / EveHLT / AliEveHOMERManager.h
CommitLineData
a82a31af 1//-*- Mode: C++ -*-
2
d810d0de 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 *
51346b82 9 * full copyright notice. *
d810d0de 10 **************************************************************************/
a15e6d7d 11
a82a31af 12#ifndef ALIEVEHOMERMANAGER_H
13#define ALIEVEHOMERMANAGER_H
059c30e4 14
15/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
16 * See cxx source for full Copyright notice */
17
d810d0de 18/** @file AliEveHOMERManager.h
33791895 19 @author Jochen Thaeder, Svein Lindal
51346b82 20 @date
33791895 21 @brief Manager for HOMER in HLT . Inherits some functionalitye
22 from AliHLTHOMERManager, mainly from TEveEventManager
059c30e4 23*/
33791895 24#include "AliHLTHOMERManager.h"
25#include <TEveEventManager.h>
26#include <TGeoManager.h>
27
28class AliEveHOMERSourceList;
29class TString;
33791895 30class TTimer;
33791895 31
32class AliEveHOMERManager : public TEveElementList, public AliHLTHOMERManager {
33
059c30e4 34public:
35
36 /*
37 * ---------------------------------------------------------------------------------
51346b82 38 * Constructor / Destructor
39 * ---------------------------------------------------------------------------------
059c30e4 40 */
41
46eadbb4 42 /** constructor */
a82a31af 43 AliEveHOMERManager();
46eadbb4 44
059c30e4 45 /** destructor */
d810d0de 46 virtual ~AliEveHOMERManager();
059c30e4 47
33791895 48 /** Connect to avahi and get the list for sources */
a82a31af 49 Int_t CreateEveSourcesList();
9e78371d 50
33791895 51 /** Keep on looking for sources until some are found */
9e78371d 52 Int_t CreateEveSourcesListLoop();
46eadbb4 53
33791895 54 /** Connect to the sources found */
703482d8 55 Int_t ConnectEVEtoHOMER(TString detector="ALL");
51346b82 56
33791895 57 /** Delete current connections to sources and reconnect */
58 Int_t ReConnectHOMER( TString detector="" );
9e78371d 59
33791895 60 /** Set the retry count for source list loop */
61 void SetRetryCount(Int_t count, Int_t sleeptime) { fRetryCount = count; fRetrySleeptime = sleeptime; }
62
3da168a7 63 /** Get next event from the readers */
30e7579c 64 TList * NextHOMEREvent();
33791895 65
30e7579c 66 void StartEveSourceListLoop();
67 void StopEveSourceListLoop();
bf1911d5 68
33791895 69
059c30e4 70private:
71
a82a31af 72 /** copy constructor prohibited */
73 AliEveHOMERManager(const AliEveHOMERManager&);
059c30e4 74
a82a31af 75 /** assignment operator prohibited */
76 AliEveHOMERManager& operator=(const AliEveHOMERManager&);
059c30e4 77
059c30e4 78 // == sources ==
33791895 79 AliEveHOMERSourceList* fSrcList; // List of Connected HOMER Sources
80
30e7579c 81
33791895 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
bf1911d5 85
30e7579c 86 TTimer * fSourceListTimer; //Timer to attempt source list creation!
87
a82a31af 88 ClassDef(AliEveHOMERManager, 0); // Manage connections to HLT data-sources.
30e7579c 89
51346b82 90
a82a31af 91};
059c30e4 92#endif