-// $Header$
+// $Id$
+// Main authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
-#include "ITSModuleStepper.h"
-#include "ITSDigitsInfo.h"
-#include "ITSScaledModule.h"
+/**************************************************************************
+ * Copyright(c) 1998-2008, ALICE Experiment at CERN, all rights reserved. *
+ * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for *
+ * full copyright notice. *
+ **************************************************************************/
+
+#include "AliEveITSModuleStepper.h"
+#include "AliEveITSDigitsInfo.h"
+#include "AliEveITSScaledModule.h"
#include <TEveManager.h>
#include <TEveGedEditor.h>
// #include <FTFont.h>
#include <TGLAxis.h>
#include <TGLViewer.h>
-using namespace Alieve;
+
//______________________________________________________________________
-// ITSModuleStepper
+// AliEveITSModuleStepper
//
-ClassImp(ITSModuleStepper)
+ClassImp(AliEveITSModuleStepper)
-ITSModuleStepper::ITSModuleStepper(ITSDigitsInfo* di) :
- TEveElementList("ITS 2DStore", "ITSModuleStepper", kTRUE),
+AliEveITSModuleStepper::AliEveITSModuleStepper(AliEveITSDigitsInfo* di) :
+ TEveElementList("ITS 2DStore", "AliEveITSModuleStepper", kTRUE),
fPosition(0),
fFontCol(8)
{
// override member from base TEveElementList
- fChildClass = ITSScaledModule::Class();
+ fChildClass = AliEveITSScaledModule::Class();
SetMainColorPtr(&fWCol);
fStepper = new TEveGridStepper();
fStepper->SetNs(5, 4);
- fScaleInfo = new DigitScaleInfo();
+ fScaleInfo = new AliEveDigitScaleInfo();
fScaleInfo->IncRefCount();
fAxis = new TGLAxis();
gEve->GetGLViewer()->AddOverlayElement(this);
}
-ITSModuleStepper::~ITSModuleStepper()
+AliEveITSModuleStepper::~AliEveITSModuleStepper()
{
gEve->GetGLViewer()->RemoveOverlayElement(this);
/**************************************************************************/
-void ITSModuleStepper::Capacity()
+void AliEveITSModuleStepper::Capacity()
{
Int_t N = fStepper->GetNx()*fStepper->GetNy();
if (N != GetNChildren())
DestroyElements();
for (Int_t m=0; m<N; m++)
{
- AddElement(new ITSScaledModule(m, fDigitsInfo, fScaleInfo));
+ AddElement(new AliEveITSScaledModule(m, fDigitsInfo, fScaleInfo));
}
}
}
/**************************************************************************/
-void ITSModuleStepper::SetFirst(Int_t first)
+void AliEveITSModuleStepper::SetFirst(Int_t first)
{
Int_t lastpage = fIDs.size()/Nxy();
if(fIDs.size() % Nxy() ) lastpage++;
Apply();
}
-void ITSModuleStepper::Start()
+void AliEveITSModuleStepper::Start()
{
fPosition = 0;
Apply();
}
-void ITSModuleStepper::Next()
+void AliEveITSModuleStepper::Next()
{
SetFirst(fPosition + Nxy());
}
-void ITSModuleStepper::Previous()
+void AliEveITSModuleStepper::Previous()
{
// move to the top left corner first
SetFirst(fPosition - Nxy());
}
-void ITSModuleStepper::End()
+void AliEveITSModuleStepper::End()
{
Int_t lastpage = fIDs.size()/Nxy();
if(fIDs.size() % Nxy() ) lastpage++;
/**************************************************************************/
-void ITSModuleStepper::DisplayDet(Int_t det, Int_t layer)
+void AliEveITSModuleStepper::DisplayDet(Int_t det, Int_t layer)
{
fSubDet = det;
fIDs.clear();
- ITSModuleSelection sel = ITSModuleSelection();
+ AliEveITSModuleSelection sel = AliEveITSModuleSelection();
sel.fType = det; sel.fLayer=layer;
fDigitsInfo->GetModuleIDs(&sel, fIDs);
//in reder menu define a space between left and right pager
/**************************************************************************/
-void ITSModuleStepper::DisplayTheta(Float_t min, Float_t max)
+void AliEveITSModuleStepper::DisplayTheta(Float_t min, Float_t max)
{
fIDs.clear();
- ITSModuleSelection sel = ITSModuleSelection();
+ AliEveITSModuleSelection sel = AliEveITSModuleSelection();
sel.fMaxTheta = max; sel.fMinTheta=min;
fDigitsInfo->GetModuleIDs(&sel, fIDs);
Start();
/**************************************************************************/
-Int_t ITSModuleStepper::GetCurrentPage()
+Int_t AliEveITSModuleStepper::GetCurrentPage()
{
Int_t idx = fPosition +1;
Int_t n = idx/Nxy();
/**************************************************************************/
-Int_t ITSModuleStepper::GetPages()
+Int_t AliEveITSModuleStepper::GetPages()
{
Int_t n = fIDs.size()/Nxy();
if(fIDs.size() % Nxy()) n++;
/**************************************************************************/
-void ITSModuleStepper::Apply()
+void AliEveITSModuleStepper::Apply()
{
- // printf("ITSModuleStepper::Apply fPosition %d \n", fPosition);
+ // printf("AliEveITSModuleStepper::Apply fPosition %d \n", fPosition);
gEve->DisableRedraw();
Capacity();
{
if(idx < fIDs.size())
{
- ITSScaledModule* mod = dynamic_cast<ITSScaledModule*>(*childit);
+ AliEveITSScaledModule* mod = dynamic_cast<AliEveITSScaledModule*>(*childit);
mod->SetID(fIDs[idx], kFALSE);
TEveTrans& tr = mod->RefHMTrans();
tr.UnitTrans();
/**************************************************************************/
-void ITSModuleStepper::Render(TGLRnrCtx& rnrCtx)
+void AliEveITSModuleStepper::Render(TGLRnrCtx& rnrCtx)
{
// render everyting in relative coordinates
glMatrixMode(GL_PROJECTION);
/**************************************************************************/
//______________________________________________________________________
-Float_t ITSModuleStepper::TextLength(const char* txt)
+Float_t AliEveITSModuleStepper::TextLength(const char* txt)
{
Float_t llx, lly, llz, urx, ury, urz;
fText->BBox(txt, llx, lly, llz, urx, ury, urz);
}
//______________________________________________________________________
-void ITSModuleStepper::RenderString(TString string, Int_t id)
+void AliEveITSModuleStepper::RenderString(TString string, Int_t id)
{
Float_t txtY = fWHeight*0.5;
Float_t txtl = TextLength(string.Data());
}
//______________________________________________________________________
-void ITSModuleStepper::RenderFrame(Float_t dx, Float_t dy, Int_t id)
+void AliEveITSModuleStepper::RenderFrame(Float_t dx, Float_t dy, Int_t id)
{
if(fRnrFrame == kFALSE)return;
glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
UChar_t color[4];
if (fWActive == id)
- TEveUtil::ColorFromIdx(fWActiveCol, color);
+ TEveUtil::TEveUtil::ColorFromIdx(fWActiveCol, color);
else
- TEveUtil:: ColorFromIdx(fWCol, color);
+ TEveUtil:: TEveUtil::ColorFromIdx(fWCol, color);
glColor4ubv(color);
glBegin(GL_QUADS);
}
//______________________________________________________________________
-void ITSModuleStepper::RenderSymbol(Float_t dx, Float_t dy, Int_t id)
+void AliEveITSModuleStepper::RenderSymbol(Float_t dx, Float_t dy, Int_t id)
{
glLoadName(id);
UChar_t color[4];
if (fWActive == id)
- TEveUtil::ColorFromIdx(fWActiveCol, color);
+ TEveUtil::TEveUtil::ColorFromIdx(fWActiveCol, color);
else
- TEveUtil::ColorFromIdx(fWCol, color);
+ TEveUtil::TEveUtil::ColorFromIdx(fWCol, color);
glColor4ubv(color);
Float_t xs = dx/4, ys = dy/4;
}
//______________________________________________________________________
-void ITSModuleStepper::RenderPalette(Float_t dx, Float_t x, Float_t y)
+void AliEveITSModuleStepper::RenderPalette(Float_t dx, Float_t x, Float_t y)
{
glPushMatrix();
glLoadIdentity();
glTranslatef(1 -x- dx, -1+y*4, 0);
- ITSModule* qs = dynamic_cast<ITSModule*>(*BeginChildren());
+ AliEveITSModule* qs = dynamic_cast<AliEveITSModule*>(*BeginChildren());
TEveRGBAPalette* p = qs->GetPalette();
glBegin(GL_QUAD_STRIP);
glColor4ubv(p->ColorFromValue(p->GetMinVal()));
}
//______________________________________________________________________
-void ITSModuleStepper::RenderMenu()
+void AliEveITSModuleStepper::RenderMenu()
{
Float_t ww = 2*fWWidth;
Float_t wh = 2*fWHeight;
// scale info
glPushMatrix();
- ITSDigitsInfo* di = fDigitsInfo;
+ AliEveITSDigitsInfo* di = fDigitsInfo;
Int_t scale = fScaleInfo->GetScale() - 1;
- ITSScaledModule* sm = dynamic_cast<ITSScaledModule*>(*BeginChildren());
+ AliEveITSScaledModule* sm = dynamic_cast<AliEveITSScaledModule*>(*BeginChildren());
Int_t cnx = 0, cnz = 0;
switch(sm->GetSubDetID())
{
}
//______________________________________________________________________
-void ITSModuleStepper::RenderCellIDs()
+void AliEveITSModuleStepper::RenderCellIDs()
{
fText->SetTextSize(fStepper->GetDy()*0.1);
fText->SetTextColor(fFontCol);
{
if(idx < fIDs.size())
{
- ITSScaledModule* mod = dynamic_cast<ITSScaledModule*>(*childit);
+ AliEveITSScaledModule* mod = dynamic_cast<AliEveITSScaledModule*>(*childit);
TEveTrans& tr = mod->RefHMTrans();
TString name = Form("%d",mod->GetID());
tr.GetPos(x,y,z);
/**************************************************************************/
//______________________________________________________________________
-Bool_t ITSModuleStepper::Handle(TGLRnrCtx & /*rnrCtx*/,
+Bool_t AliEveITSModuleStepper::Handle(TGLRnrCtx & /*rnrCtx*/,
TGLOvlSelectRecord & rec,
Event_t * event)
{
break;
case 5:
{
- DigitScaleInfo* si = fScaleInfo;
+ AliEveDigitScaleInfo* si = fScaleInfo;
if(si->GetScale() < 5)
{
si->ScaleChanged(si->GetScale() + 1);
}
case 6:
{
- DigitScaleInfo* si = fScaleInfo;
+ AliEveDigitScaleInfo* si = fScaleInfo;
if(si->GetScale() > 1)
{
si->ScaleChanged(si->GetScale() - 1);
}
//______________________________________________________________________
-Bool_t ITSModuleStepper::MouseEnter(TGLOvlSelectRecord& /*rec*/)
+Bool_t AliEveITSModuleStepper::MouseEnter(TGLOvlSelectRecord& /*rec*/)
{
return kTRUE;
}
//______________________________________________________________________
-void ITSModuleStepper::MouseLeave()
+void AliEveITSModuleStepper::MouseLeave()
{
// Mouse has left the element.