2 // Author: Matevz Tadel 2007
4 /**************************************************************************
5 * Copyright(c) 1998-2008, ALICE Experiment at CERN, all rights reserved. *
6 * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for *
7 * full copyright notice. *
8 **************************************************************************/
10 #include "AliDimIntNotifier.h"
13 //______________________________________________________________________________
14 // Full description of AliDimIntNotifier
17 ClassImp(AliDimIntNotifier)
19 Long_t AliDimIntNotifier::fgMainThreadId = 0;
21 void AliDimIntNotifier::SetMainThreadId()
23 fgMainThreadId = TThread::SelfId();
26 AliDimIntNotifier::AliDimIntNotifier(const TString& service) :
27 DimUpdatedInfo(service, -1),
29 fNotifyCnd(&fNotifyLck),
32 fReThreader.Connect("Timeout()", "AliDimIntNotifier", this, "DimMessage()");
35 void AliDimIntNotifier::StartTimer()
41 void AliDimIntNotifier::StopTimer()
43 fReThreader.TurnOff();
46 void AliDimIntNotifier::infoHandler()
51 fLastMessage = getData() ? getInt() : -1;
52 if (TThread::SelfId() != fgMainThreadId)
59 Warning("infoHandler", "DIM message received from CINT thread.");
65 void AliDimIntNotifier::infoHandlerTest(Int_t fake)
67 // Fake handler for testing.
71 if (TThread::SelfId() != fgMainThreadId)
78 Warning("infoHandlerTest", "Was called from CINT thread ...");
84 void AliDimIntNotifier::DimMessage(Int_t)
87 if (fLastMessage != -1)
89 Emit("DimMessage(Int_t)", fLastMessage);
90 printf("Notify %d\n", fLastMessage);
94 printf("NOTNotify %d\n", fLastMessage);