KaliVeda
Toolkit for HIC analysis
|
Draw events in 3D using OpenGL.
Any KVEvent object can be represented by using KVEventViewer::DrawEvent(KVEvent*, const Char_t* frame=""). The second (optional) argument allows to choose which reference frame to use (frame must already have been defined for the KVEvent using KVEvent::SetFrame).
For each nucleus of the event, a spherical cluster of protons and neutrons will be displayed, using the default colors for these particles (see constructor and related methods). One or more nuclei of each event can be "highlighted" (i.e. given different colors for their neutrons and protons) according to the value given to method SetHighlightMode.
You can use KVEventViewer::DrawNextEvent() to display, one after the other, a set of events stored in a TTree or in a text file. With a TTree:
With a text file (containing Z and velocity components of each nucleus):
Definition at line 52 of file KVEventViewer.h.
#include <KVEventViewer.h>
Public Types | |
enum | EHighlightMode { kNoHighlight , kHighlightZmax , kHighlightParameter } |
Public Types inherited from KVBase | |
enum | EKaliVedaBits { kIsKaliVedaObject = BIT(23) } |
Public Types inherited from TObject | |
enum | EDeprecatedStatusBits |
enum | EStatusBits |
Public Member Functions | |
KVEventViewer (Int_t protoncolor=kRed - 2, Int_t neutroncolor=kBlue - 2, Int_t highlightprotoncolor=kOrange - 2, Int_t highlightneutroncolor=kGreen - 2, Double_t freenucleonradius=0.2, Double_t nucleonradius=0.25, Double_t nuclearradiusparameter=0.2) | |
virtual | ~KVEventViewer () |
Destructor. | |
void | DrawEvent (KVEvent *, const Char_t *frame="") |
Draw all particles in event which are "ok". | |
void | DrawEvent (KVEvent *, const Char_t *frame="") const |
void | DrawNextEvent () |
Draw next event read from input source. | |
void | DrawNucleus (KVNucleus &, const Char_t *frame="") |
Draw nucleus. | |
void | DumpCurrentEvent () |
void | ReadEvent () |
Read an event from input source. | |
void | ReadTextEvent () |
void | ReadTreeEvent () |
void | SetAxesMode (Bool_t on=kTRUE) |
void | SetDrawMomentumSpace (Bool_t on=kTRUE) |
Draw event in momentum space (default is velocity space) | |
void | SetFixPerspective (Bool_t on=kTRUE) |
void | SetFixSeed (Bool_t fix, Int_t refresh=1) |
void | SetFreeNucleonRadius (Double_t r) |
Set radius used to represent free nucleons (default value = 0.2) | |
virtual Bool_t | SetHighlight (KVNucleus *n) |
Decide whether or not to highlight this nucleus in the event display. | |
virtual void | SetHighlightMode (Int_t m) |
void | SetHighlightNeutronColor (Int_t c) |
void | SetHighlightProtonColor (Int_t c) |
void | SetInput (const char *filename) |
Read events from file. | |
void | SetInput (TBranch *eventbranch) |
Read events from branch of a TTree. | |
void | SetMaxVelocity (Int_t vel) |
void | SetNeutronColor (Int_t c) |
void | SetNucleonRadius (Double_t r) |
Set radius used to represent nucleons in nuclei (default value = 0.25) | |
void | SetProtonColor (Int_t c) |
void | SetSavePicture (Bool_t yes=kTRUE) |
void | SetXYMode (Bool_t mode) |
Public Member Functions inherited from KVBase | |
KVBase () | |
Default constructor. | |
KVBase (const Char_t *name, const Char_t *title="") | |
Ctor for object with given name and type. | |
KVBase (const KVBase &) | |
copy ctor | |
virtual | ~KVBase () |
virtual void | Clear (Option_t *opt="") |
Clear object properties : name, type/title, number, label. | |
virtual void | Copy (TObject &) const |
Make a copy of this object. | |
const Char_t * | GetLabel () const |
UInt_t | GetNumber () const |
UInt_t | GetNumberOfObjects () const |
virtual TObject * | GetObject () const |
virtual const Char_t * | GetType () const |
Bool_t | HasLabel () const |
virtual Bool_t | IsCalled (const Char_t *name) const |
Bool_t | IsLabelled (const Char_t *l) const |
virtual Bool_t | IsType (const Char_t *typ) const |
virtual void | List () |
KVBase & | operator= (const KVBase &) |
copy assignment operator | |
virtual void | Print (Option_t *option="") const |
Double_t | ProtectedGetX (const TF1 *func, Double_t val, int &status, Double_t xmin=0.0, Double_t xmax=0.0) const |
void | SetLabel (const Char_t *lab) |
virtual void | SetNumber (UInt_t num) |
virtual void | SetType (const Char_t *str) |
Public Member Functions inherited from TNamed | |
TNamed () | |
TNamed (const char *name, const char *title) | |
TNamed (const TNamed &named) | |
TNamed (const TString &name, const TString &title) | |
virtual | ~TNamed () |
void | Clear (Option_t *option="") override |
TObject * | Clone (const char *newname="") const override |
Int_t | Compare (const TObject *obj) const override |
void | Copy (TObject &named) const override |
virtual void | FillBuffer (char *&buffer) |
const char * | GetName () const override |
const char * | GetTitle () const override |
ULong_t | Hash () const override |
TClass * | IsA () const override |
Bool_t | IsSortable () const override |
void | ls (Option_t *option="") const override |
TNamed & | operator= (const TNamed &rhs) |
void | Print (Option_t *option="") const override |
virtual void | SetName (const char *name) |
virtual void | SetNameTitle (const char *name, const char *title) |
virtual void | SetTitle (const char *title="") |
virtual Int_t | Sizeof () const |
void | Streamer (TBuffer &) override |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Public Member Functions inherited from TObject | |
TObject () | |
TObject (const TObject &object) | |
virtual | ~TObject () |
void | AbstractMethod (const char *method) const |
virtual void | AppendPad (Option_t *option="") |
virtual void | Browse (TBrowser *b) |
ULong_t | CheckedHash () |
virtual const char * | ClassName () const |
virtual void | Delete (Option_t *option="") |
virtual Int_t | DistancetoPrimitive (Int_t px, Int_t py) |
virtual void | Draw (Option_t *option="") |
virtual void | DrawClass () const |
virtual TObject * | DrawClone (Option_t *option="") const |
virtual void | Dump () const |
virtual void | Error (const char *method, const char *msgfmt,...) const |
virtual void | Execute (const char *method, const char *params, Int_t *error=nullptr) |
virtual void | Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr) |
virtual void | ExecuteEvent (Int_t event, Int_t px, Int_t py) |
virtual void | Fatal (const char *method, const char *msgfmt,...) const |
virtual TObject * | FindObject (const char *name) const |
virtual TObject * | FindObject (const TObject *obj) const |
virtual Option_t * | GetDrawOption () const |
virtual const char * | GetIconName () const |
virtual char * | GetObjectInfo (Int_t px, Int_t py) const |
virtual Option_t * | GetOption () const |
virtual UInt_t | GetUniqueID () const |
virtual Bool_t | HandleTimer (TTimer *timer) |
Bool_t | HasInconsistentHash () const |
virtual void | Info (const char *method, const char *msgfmt,...) const |
virtual Bool_t | InheritsFrom (const char *classname) const |
virtual Bool_t | InheritsFrom (const TClass *cl) const |
virtual void | Inspect () const |
void | InvertBit (UInt_t f) |
Bool_t | IsDestructed () const |
virtual Bool_t | IsEqual (const TObject *obj) const |
virtual Bool_t | IsFolder () const |
R__ALWAYS_INLINE Bool_t | IsOnHeap () const |
R__ALWAYS_INLINE Bool_t | IsZombie () const |
void | MayNotUse (const char *method) const |
virtual Bool_t | Notify () |
void | Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const |
void | operator delete (void *ptr) |
void | operator delete (void *ptr, void *vp) |
void | operator delete[] (void *ptr) |
void | operator delete[] (void *ptr, void *vp) |
void * | operator new (size_t sz) |
void * | operator new (size_t sz, void *vp) |
void * | operator new[] (size_t sz) |
void * | operator new[] (size_t sz, void *vp) |
TObject & | operator= (const TObject &rhs) |
virtual void | Paint (Option_t *option="") |
virtual void | Pop () |
virtual Int_t | Read (const char *name) |
virtual void | RecursiveRemove (TObject *obj) |
void | ResetBit (UInt_t f) |
virtual void | SaveAs (const char *filename="", Option_t *option="") const |
virtual void | SavePrimitive (std::ostream &out, Option_t *option="") |
void | SetBit (UInt_t f) |
void | SetBit (UInt_t f, Bool_t set) |
virtual void | SetDrawOption (Option_t *option="") |
virtual void | SetUniqueID (UInt_t uid) |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
virtual void | SysError (const char *method, const char *msgfmt,...) const |
R__ALWAYS_INLINE Bool_t | TestBit (UInt_t f) const |
Int_t | TestBits (UInt_t f) const |
virtual void | UseCurrentStyle () |
virtual void | Warning (const char *method, const char *msgfmt,...) const |
virtual Int_t | Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) |
virtual Int_t | Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const |
Additional Inherited Members | |
Static Public Member Functions inherited from KVBase | |
static Bool_t | AreEqual (Double_t x, Double_t y, Long64_t maxdif=1) |
Comparison between two 64-bit floating-point values. | |
static void | BackupFileWithDate (const Char_t *path) |
static void | CombineFiles (const Char_t *file1, const Char_t *file2, const Char_t *newfilename, Bool_t keep=kTRUE) |
static void | Deprecated (const char *method, const char *advice) |
static Bool_t | FindClassSourceFiles (const Char_t *class_name, KVString &imp_file, KVString &dec_file, const Char_t *dir_name=".") |
static Bool_t | FindExecutable (TString &exec, const Char_t *path="$(PATH)") |
static const Char_t * | FindFile (const Char_t *search, TString &wfil) |
static const Char_t * | GetBINDIRFilePath (const Char_t *namefile="") |
static const Char_t * | GetDATABASEFilePath () |
static const Char_t * | GetDATADIRFilePath (const Char_t *namefile="") |
static Bool_t | GetDataSetEnv (const Char_t *dataset, const Char_t *type, Bool_t defval) |
static const Char_t * | GetDataSetEnv (const Char_t *dataset, const Char_t *type, const Char_t *defval) |
static Double_t | GetDataSetEnv (const Char_t *dataset, const Char_t *type, Double_t defval) |
static const Char_t * | GetETCDIRFilePath (const Char_t *namefile="") |
static const Char_t * | GetExampleFilePath (const Char_t *library, const Char_t *namefile) |
Return full path to example file for given library (="KVMultiDet", "BackTrack", etc.) | |
static const Char_t * | GetINCDIRFilePath (const Char_t *namefile="") |
static const Char_t * | GetKVBuildDate () |
Returns KaliVeda build date. | |
static const Char_t * | GetKVBuildDir () |
Returns top-level directory used for build. | |
static const Char_t * | GetKVBuildTime () |
Returns KaliVeda build time. | |
static const Char_t * | GetKVBuildType () |
Returns KaliVeda build type (cmake build: Release, Debug, RelWithDebInfo, ...) | |
static const Char_t * | GetKVBuildUser () |
Returns username of person who performed build. | |
static const Char_t * | GetKVSourceDir () |
Returns top-level directory of source tree used for build. | |
static const Char_t * | GetKVVersion () |
Returns KaliVeda version string. | |
static const Char_t * | GetLIBDIRFilePath (const Char_t *namefile="") |
static const Char_t * | GetListOfPlugins (const Char_t *base) |
static const Char_t * | GetListOfPluginURIs (const Char_t *base) |
static const Char_t * | GetPluginURI (const Char_t *base, const Char_t *plugin) |
static void | GetTempFileName (TString &base) |
static const Char_t * | GetTEMPLATEDIRFilePath (const Char_t *namefile="") |
static const Char_t * | GetWORKDIRFilePath (const Char_t *namefile="") |
static const Char_t * | gitBranch () |
Returns git branch of sources. | |
static const Char_t * | gitCommit () |
Returns last git commit of sources. | |
static void | InitEnvironment () |
static bool | is_gnuinstall () |
static Bool_t | IsThisAPlugin (const TString &uri, TString &base) |
static TPluginHandler * | LoadPlugin (const Char_t *base, const Char_t *uri="0") |
static Bool_t | OpenContextMenu (const char *method, TObject *obj, const char *alt_method_name="") |
static void | OpenTempFile (TString &base, std::ofstream &fp) |
static void | PrintSplashScreen () |
Prints welcome message and infos on version etc. | |
static Bool_t | SearchAndOpenKVFile (const Char_t *name, KVSQLite::database &dbfile, const Char_t *kvsubdir="") |
static Bool_t | SearchAndOpenKVFile (const Char_t *name, std::ifstream &file, const Char_t *kvsubdir="", KVLockfile *locks=0) |
static Bool_t | SearchAndOpenKVFile (const Char_t *name, std::ofstream &file, const Char_t *kvsubdir="", KVLockfile *locks=0) |
static Bool_t | SearchKVFile (const Char_t *name, TString &fullpath, const Char_t *kvsubdir="") |
static const Char_t * | WorkingDirectory () |
Static Public Member Functions inherited from TNamed | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Static Public Member Functions inherited from TObject | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
static Longptr_t | GetDtorOnly () |
static Bool_t | GetObjectStat () |
static void | SetDtorOnly (void *obj) |
static void | SetObjectStat (Bool_t stat) |
Public Attributes inherited from TObject | |
kBitMask | |
kCanDelete | |
kCannotPick | |
kHasUUID | |
kInconsistent | |
kInvalidObject | |
kIsOnHeap | |
kIsReferenced | |
kMustCleanup | |
kNoContextMenu | |
kNotDeleted | |
kObjInCanvas | |
kOverwrite | |
kSingleKey | |
kWriteDelete | |
kZombie | |
Protected Member Functions inherited from TObject | |
virtual void | DoError (int level, const char *location, const char *fmt, va_list va) const |
void | MakeZombie () |
Protected Attributes inherited from TNamed | |
TString | fName |
TString | fTitle |
Protected Attributes inherited from TObject | |
kOnlyPrepStep | |
Enumerator | |
---|---|
kNoHighlight | |
kHighlightZmax | |
kHighlightParameter |
Definition at line 101 of file KVEventViewer.h.
KVEventViewer::KVEventViewer | ( | Int_t | protoncolor = kRed - 2 , |
Int_t | neutroncolor = kBlue - 2 , |
||
Int_t | highlightprotoncolor = kOrange - 2 , |
||
Int_t | highlightneutroncolor = kGreen - 2 , |
||
Double_t | freenucleonradius = 0.2 , |
||
Double_t | nucleonradius = 0.25 , |
||
Double_t | nuclearradiusparameter = 0.2 |
||
) |
protoncolor = color of protons neutroncolor = color of neutrons highlight...color = color of protons/neutrons in highlighted nuclei freenucleonradius = radius of free nucleons nucleonradius = radius of nucleons in nuclei nuclearradiusparameter = r0 in expression r=r0*A**1/3
Definition at line 27 of file KVEventViewer.cpp.
|
virtual |
Destructor.
Definition at line 68 of file KVEventViewer.cpp.
Draw all particles in event which are "ok".
Definition at line 126 of file KVEventViewer.cpp.
Definition at line 207 of file KVEventViewer.cpp.
void KVEventViewer::DrawNextEvent | ( | ) |
Draw next event read from input source.
Definition at line 324 of file KVEventViewer.cpp.
Draw nucleus.
Definition at line 78 of file KVEventViewer.cpp.
|
inline |
Definition at line 197 of file KVEventViewer.h.
void KVEventViewer::ReadEvent | ( | ) |
Read an event from input source.
Definition at line 252 of file KVEventViewer.cpp.
void KVEventViewer::ReadTextEvent | ( | ) |
Read event from text input We assume a file containing, for each event, the multiplicity, N, followed by N lines containing Z Vx Vy Vz the atomic number and velocity components (in cm/ns)
Definition at line 274 of file KVEventViewer.cpp.
void KVEventViewer::ReadTreeEvent | ( | ) |
Definition at line 310 of file KVEventViewer.cpp.
Show axes or not
Definition at line 191 of file KVEventViewer.h.
Draw event in momentum space (default is velocity space)
Definition at line 160 of file KVEventViewer.h.
Fix size of box used to represent event from "dimensions" of first event viewed, then use the same for all following events
Definition at line 202 of file KVEventViewer.h.
Definition at line 150 of file KVEventViewer.h.
Set radius used to represent free nucleons (default value = 0.2)
Definition at line 136 of file KVEventViewer.h.
Decide whether or not to highlight this nucleus in the event display.
Definition at line 337 of file KVEventViewer.cpp.
Select nuclei to highlight m = KVEventViewer::kHighlightZmax : highlight biggest fragment (Z) m = KVEventViewer::kHighlightParameter : highlight any nucleus for which KVParticle::GetParameters()->IsValue("EventViewer.Highlight",1) returns kTRUE m = KVEventViewer::kNoHighlight : turn off highlighting
Definition at line 179 of file KVEventViewer.h.
Definition at line 126 of file KVEventViewer.h.
Definition at line 122 of file KVEventViewer.h.
void KVEventViewer::SetInput | ( | const char * | filename | ) |
Read events from file.
Definition at line 234 of file KVEventViewer.cpp.
Read events from branch of a TTree.
Definition at line 217 of file KVEventViewer.cpp.
Definition at line 146 of file KVEventViewer.h.
Definition at line 118 of file KVEventViewer.h.
Set radius used to represent nucleons in nuclei (default value = 0.25)
Definition at line 141 of file KVEventViewer.h.
Definition at line 114 of file KVEventViewer.h.
Definition at line 130 of file KVEventViewer.h.
Definition at line 155 of file KVEventViewer.h.
|
private |
Definition at line 79 of file KVEventViewer.h.
|
private |
Definition at line 77 of file KVEventViewer.h.
|
private |
Definition at line 86 of file KVEventViewer.h.
|
private |
Definition at line 85 of file KVEventViewer.h.
|
private |
Definition at line 96 of file KVEventViewer.h.
|
private |
Definition at line 98 of file KVEventViewer.h.
|
private |
Definition at line 63 of file KVEventViewer.h.
|
private |
Definition at line 95 of file KVEventViewer.h.
|
private |
Definition at line 62 of file KVEventViewer.h.
|
private |
kTRUE to show event in momentum space
Definition at line 67 of file KVEventViewer.h.
|
private |
neutron colour
Definition at line 55 of file KVEventViewer.h.
|
private |
neutron colour for highlighted nuclei
Definition at line 57 of file KVEventViewer.h.
|
private |
proton colour
Definition at line 54 of file KVEventViewer.h.
|
private |
proton colour for highlighted nuclei
Definition at line 56 of file KVEventViewer.h.
|
private |
radius of free nucleons
Definition at line 58 of file KVEventViewer.h.
|
private |
Definition at line 64 of file KVEventViewer.h.
|
private |
kTRUE to save in GIF file
Definition at line 71 of file KVEventViewer.h.
|
private |
Definition at line 68 of file KVEventViewer.h.
|
private |
Definition at line 65 of file KVEventViewer.h.
|
private |
Definition at line 66 of file KVEventViewer.h.
|
private |
Definition at line 81 of file KVEventViewer.h.
|
private |
geovolume counter
Definition at line 70 of file KVEventViewer.h.
|
private |
Definition at line 75 of file KVEventViewer.h.
|
private |
Definition at line 73 of file KVEventViewer.h.
|
private |
Definition at line 74 of file KVEventViewer.h.
|
private |
largest velocity of event
Definition at line 92 of file KVEventViewer.h.
|
private |
largest Z of event
Definition at line 93 of file KVEventViewer.h.
|
private |
Definition at line 90 of file KVEventViewer.h.
|
private |
Definition at line 78 of file KVEventViewer.h.
|
private |
to calculate radii of nuclei
Definition at line 60 of file KVEventViewer.h.
|
private |
radius of nucleons in nuclei
Definition at line 59 of file KVEventViewer.h.
|
private |
Definition at line 87 of file KVEventViewer.h.
|
private |
Definition at line 83 of file KVEventViewer.h.
|
private |
Definition at line 89 of file KVEventViewer.h.
|
private |
Definition at line 80 of file KVEventViewer.h.