Logo ROOT   6.30.04
Reference Guide
 All Namespaces Files Pages
runplugin.C
Go to the documentation of this file.
1 /// \file
2 /// \ingroup tutorial_geom
3 /// Creates and runs a simple iterator plugin connected to TGeoPainter iterator.
4 ///
5 /// It demonstrates the possibility to dynamically change the color of drawn
6 /// volumes according some arbitrary criteria *WITHOUT* changing the color of the
7 /// same volume drawn on branches that do not match the criteria.
8 ///
9 /// ~~~{.cpp}
10 /// To run:
11 /// root[0] .L iterplugin.cxx+
12 /// root[1] .x runplugin.C
13 /// root[2] select(2,kMagenta);
14 /// root[3] select(3,kBlue)
15 /// ...
16 /// ~~~
17 ///
18 /// \macro_code
19 ///
20 /// \author Andrei Gheata
21 
22 #include "iterplugin.cxx"
23 
24 iterplugin *plugin = 0;
25 
26 void runplugin()
27 {
28 
29 
30  TString tutdir = gROOT->GetTutorialDir();
31  gROOT->ProcessLine(".x " + tutdir + "/geom/rootgeom.C");
32  plugin = new iterplugin();
33  gGeoManager->GetGeomPainter()->SetIteratorPlugin(plugin);
34 }
35 
36 void select(Int_t replica=1, Int_t color=kGreen)
37 {
38 // Change current color. Replica range: 1-4
39  plugin->Select(replica, color);
40  gGeoManager->GetGeomPainter()->ModifiedPad();
41 }