#ifndef HGEOMVOLUME_H
#define HGEOMVOLUME_H
#include "hgeomtransform.h"
#include "TNamed.h"
#include "TObjArray.h"
class HGeomVolume : public TNamed {
protected:
TString shape;
TString mother;
TObjArray* points;
HGeomTransform transform;
Int_t nPoints;
public:
inline HGeomVolume();
HGeomVolume(HGeomVolume&);
inline virtual ~HGeomVolume();
const TString& getName() const { return fName; }
const TString& getShape() const { return shape; }
const TString& getMother() const { return mother; }
HGeomTransform& getTransform() { return transform; }
Int_t getNumPoints() { return nPoints;}
inline HGeomVector* getPoint(const Int_t n);
inline void setName(const Text_t* s);
void setVolumePar(HGeomVolume&);
inline void setShape(const Text_t* s);
inline void setMother(const Text_t* s);
void createPoints(const Int_t);
void setPoint(const Int_t,const Double_t,const Double_t,const Double_t);
void setPoint(const Int_t,const HGeomVector&);
virtual void clear();
virtual void print();
ClassDef(HGeomVolume,1)
};
inline HGeomVolume::HGeomVolume() {
nPoints=0;
points=0;
}
inline HGeomVolume::~HGeomVolume() {
if (points) {
points->Delete();
delete points;
points=0;
}
}
inline HGeomVector* HGeomVolume::getPoint(const Int_t n) {
if (points && n<nPoints) return (HGeomVector*)points->At(n);
else return 0;
}
inline void HGeomVolume::setName(const Text_t* s) {
fName=s;
fName.ToUpper();
}
inline void HGeomVolume::setShape(const Text_t* s) {
shape=s;
shape.ToUpper();
}
inline void HGeomVolume::setMother(const Text_t* s) {
mother=s;
mother.ToUpper();
}
#endif /* !HGEOMVOLUME_H */
Last change: Sat May 22 12:56:54 2010
Last generated: 2010-05-22 12:56
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.