/usr/include/root/TVolume.h is in libroot-misc-table-dev 5.34.14-1build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 | // @(#)root/table:$Id$
// Author: Valery Fine 10/12/98
/*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. *
* *
* For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/
//////////////////////////////////////////////////////////////////////////
// //
// TVolume //
// //
// Description of parameters to position a 3-D geometry object //
// //
//////////////////////////////////////////////////////////////////////////
#ifndef ROOT_TVolume
#define ROOT_TVolume
#include "TObjectSet.h"
#include "TNode.h"
#ifndef ROOT_TShape
#include "TShape.h"
#endif
#ifndef ROOT_TAttLine
#include "TAttLine.h"
#endif
#ifndef ROOT_TAttFill
#include "TAttFill.h"
#endif
class TBrowser;
class TVolumePosition;
class TRotMatrix;
class TList;
class TVolume : public TObjectSet, public TAttLine, public TAttFill, public TAtt3D {
public:
enum ENodeSEEN {kBothVisible = 00, //'00'
kSonUnvisible = 1, //'01'
kThisUnvisible= 2, //'10'
kNoneVisible = kThisUnvisible | kSonUnvisible}; //'11'
protected:
TShape *fShape; //Pointer to the "master" shape definition
TList *fListOfShapes; //Pointer to the list of the shape definitions
TString fOption; //List of options if any
ENodeSEEN fVisibility; //Visibility flag 00 - everything visible,
// 10 - this unvisible, but sons are visible
// 01 - this visible but sons
// 11 - neither this nor its sons are visible
virtual void Add(TDataSet *dataset);
virtual void Add(TVolumePosition *position);
virtual TVolumePosition *Add(TVolume *node, TVolumePosition *nodePosition);
virtual Int_t DistancetoNodePrimitive(Int_t px, Int_t py,TVolumePosition *position=0);
void SetPositionsList(TList *list=0){AddObject((TObject *)list);}
virtual void PaintNodePosition(Option_t *option="",TVolumePosition *postion=0);
friend class TPolyLineShape;
public:
TVolume();
TVolume(const char *name, const char *title, const char *shapename, Option_t *option="");
TVolume(const char *name, const char *title, TShape *shape, Option_t *option="");
TVolume(TNode &node);
virtual ~TVolume();
virtual TVolumePosition *Add(TVolume *node, Double_t x=0, Double_t y=0, Double_t z=0, TRotMatrix *matrix=0, UInt_t id=0, Option_t *option="");
virtual TVolumePosition *Add(TVolume *node, Double_t x, Double_t y, Double_t z, const char *matrixname, UInt_t id=0, Option_t *option="");
static Int_t MapStNode2GEANTVis(ENodeSEEN vis);
static Int_t MapGEANT2StNodeVis(Int_t vis);
virtual void Add(TShape *shape, Bool_t IsMaster=kFALSE);
virtual void Browse(TBrowser *b);
virtual TNode *CreateTNode(const TVolumePosition *position=0);
virtual void DeletePosition(TVolumePosition *position);
virtual Int_t DistancetoPrimitive(Int_t px, Int_t py);
virtual void Draw(Option_t *depth="3"); // *MENU*
virtual void DrawOnly(Option_t *option="");
virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py);
static TRotMatrix *GetIdentity();
virtual char *GetObjectInfo(Int_t px, Int_t py) const;
const Option_t *GetOption() const { return fOption.Data();}
TShape *GetShape() const {return fShape;}
TList *GetListOfShapes() const {return fListOfShapes;}
virtual void GetLocalRange(Float_t *min, Float_t *max);
virtual ENodeSEEN GetVisibility() const {return fVisibility;}
virtual TList *GetListOfPositions() { return (TList *)(GetObject());}
virtual ULong_t Hash() const { return TObject::Hash();}
virtual void ImportShapeAttributes();
virtual Bool_t IsMarked() const;
virtual Bool_t Is3D() const {return kTRUE;}
virtual TList *Nodes() const { return GetList(); }
virtual void Paint(Option_t *option="");
virtual void PaintShape(Option_t *option="");
virtual void SetVisibility(ENodeSEEN vis=TVolume::kBothVisible); // *MENU*
virtual void Sizeof3D() const;
ClassDef(TVolume,1) //Description of parameters to position a 3-D geometry object
};
inline void TVolume::Add(TDataSet *dataset){ TDataSet::Add(dataset);}
inline Bool_t TVolume::IsMarked() const { return TestBit(kMark); }
#endif
|