Use two-level selection, implement callback QuadSelected() to print out the digit...
authormtadel <mtadel@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 13 Dec 2006 12:10:28 +0000 (12:10 +0000)
committermtadel <mtadel@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 13 Dec 2006 12:10:28 +0000 (12:10 +0000)
EVE/Alieve/ITSModule.cxx
EVE/Alieve/ITSModule.h

index d76cad60b5a1e21c4e2bef54c74d13403f00639b..62b6f8a1da7246f903cf4c8741fa4e1a81024c7e 100644 (file)
@@ -257,6 +257,7 @@ void ITSModule::LoadQuads()
 
        AddQuad(x, z, dpx, dpz);
        QuadValue(1); // In principle could have color based on number of neigbours
+       QuadId(d);
       }
       break;
     }
@@ -280,6 +281,7 @@ void ITSModule::LoadQuads()
 
          AddQuad(x-2*dpx, z, 4*dpx, dpz);
          QuadValue(d->GetSignal());
+         QuadId(d);
        }
       }
       break;
@@ -308,6 +310,7 @@ void ITSModule::LoadQuads()
 
          AddLine(x-a, -fDz, 2*a, 2*fDz);
          QuadValue(d->GetSignal());
+         QuadId(d);
          // printf("%3d -> %3d -> %8x\n", d->GetSignal(), ci, fQuads.back().color);
        }
       }
@@ -338,6 +341,24 @@ void ITSModule::SetTrans()
 
 /**************************************************************************/
 
+void ITSModule::QuadSelected(Int_t idx)
+{
+  // Override control-click from QuadSet
+
+  QuadBase* qb   = GetQuad(idx);
+  TObject* obj   = qb->fId.GetObject();
+  AliITSdigit* d = dynamic_cast<AliITSdigit*>(obj);
+  printf("ITSModule::QuadSelected "); Print();
+  printf("  idx=%d, value=%d, obj=0x%lx, digit=0x%lx\n",
+        idx, qb->fValue, (ULong_t)obj, (ULong_t)d);
+  if (d)
+    printf("  coord1=%3d coord2=%3d signal=%d\n",
+          d->GetCoord1(), d->GetCoord2(), d->GetSignal());
+
+}
+
+/**************************************************************************/
+
 void ITSModule::Print(Option_t* ) const
 {
   printf("ID %d, layer %d, ladder %d, det %d \n", fID, fLayer, fLadder, fDetID);
index 6d9e1398b18ff9a9730d2a38b86e438f68032966..10fc663ceebf87f66978aaca62972553e608a5b7 100644 (file)
@@ -44,6 +44,8 @@ public:
   Int_t GetID() const { return fID; }
   void  SetID(Int_t gid);
 
+  virtual void QuadSelected(Int_t idx);
+
   virtual void Print(Option_t* opt="") const;
 
   static Reve::FrameBox* fgSPDFrameBox;