]>
Commit | Line | Data |
---|---|---|
7e0cf530 | 1 | // Author: Mihai Niculescu 2013 |
2 | ||
3 | /************************************************************************** | |
4 | * Copyright(c) 1998-2013, ALICE Experiment at CERN, all rights reserved. * | |
5 | * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for * | |
6 | * full copyright notice. * | |
7 | **************************************************************************/ | |
8 | ||
9 | #ifndef __AliRecoServer_H__ | |
10 | #define __AliRecoServer_H__ | |
11 | ||
12 | #include <zmq.hpp> | |
13 | #include <TObjString.h> | |
14 | #include <TQObject.h> | |
15 | #include <RQ_OBJECT.h> | |
16 | ||
17 | class TEnv; | |
18 | class AliCDBManager; | |
19 | class AliReconstruction; | |
20 | class AliRecoServerThread; | |
21 | ||
22 | class AliRecoServer : public TQObject | |
23 | { | |
24 | RQ_OBJECT("AliRecoServer") | |
25 | public: | |
26 | AliRecoServer(); | |
27 | virtual ~AliRecoServer(); | |
28 | ||
29 | // Closes the server. The server will no longer listen/serve | |
30 | void Close(); | |
31 | ||
32 | Bool_t IsListenning() const; | |
33 | ||
34 | Int_t GetRunId() const { return fCurrentRunId; } | |
35 | const char* GetError() const;//TODO: not implemented | |
36 | ||
37 | Bool_t StartReconstruction(Int_t run, const char* input="mem://@*:"); | |
38 | void StopReconstruction(); | |
39 | ||
40 | void ThreadFinished(Int_t status); // *SIGNAL* | |
41 | ||
42 | private: | |
43 | Int_t RetrieveGRP(UInt_t run, TString &gdc); | |
44 | void SetupReco(const char* input); | |
45 | ||
46 | AliRecoServer(const AliRecoServer&); // Not implemented | |
47 | AliRecoServer& operator=(const AliRecoServer&); // Not implemented | |
48 | ||
49 | private: | |
50 | // thread shared | |
51 | zmq::context_t* fContext; | |
52 | AliReconstruction* fReco; | |
53 | AliCDBManager* fCDBman; | |
54 | ||
55 | // not shared | |
56 | Int_t fCurrentRunId; | |
57 | Bool_t fIsListenning; | |
58 | TEnv* fSettings; | |
59 | AliRecoServerThread* fRecoTh; | |
60 | ||
61 | public: | |
62 | ||
63 | ClassDef(AliRecoServer, 0); | |
64 | }; | |
65 | ||
66 | #endif /* __AliRecoServer_H__ */ |