From 6eb8ed37197ab3509a979ee2e13a8012797238b4 Mon Sep 17 00:00:00 2001 From: morsch Date: Fri, 11 May 2001 13:21:16 +0000 Subject: [PATCH] Geom. volume data class. Can be used during lego run for debugging. --- STEER/AliDebugVolume.cxx | 85 ++++++++++++++++++++++++++++++++++++++++ STEER/AliDebugVolume.h | 45 +++++++++++++++++++++ 2 files changed, 130 insertions(+) create mode 100644 STEER/AliDebugVolume.cxx create mode 100644 STEER/AliDebugVolume.h diff --git a/STEER/AliDebugVolume.cxx b/STEER/AliDebugVolume.cxx new file mode 100644 index 00000000000..dc0e23593e1 --- /dev/null +++ b/STEER/AliDebugVolume.cxx @@ -0,0 +1,85 @@ +/* + * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * + * * + * Author: The ALICE Off-line Project. * + * Contributors are mentioned in the code where appropriate. * + * * + * Permission to use, copy, modify and distribute this software and its * + * documentation strictly for non-commercial purposes is hereby granted * + * without fee, provided that the above copyright notice appears in all * + * copies and that both the copyright notice and this permission notice * + * appear in the supporting documentation. The authors make no claims * + * about the suitability of this software for any purpose. It is * + * provided "as is" without express or implied warranty. * + **************************************************************************/ + +/* +$Log$ +*/ + +#include "AliDebugVolume.h" + +ClassImp(AliDebugVolume) + + + +AliDebugVolume::AliDebugVolume() +{ + // + // Default constructor + // +} + + +AliDebugVolume::AliDebugVolume(const char *name, + Int_t copy, Float_t step, Float_t x, Float_t y, Float_t z, Int_t status) + : TNamed(name, "Debug Volume") +{ +// +// Constructor +// + fCopy = copy; + fX = x; + fY = y; + fZ = z; + fStep = step; + fStatus = status; +} + + + +Bool_t AliDebugVolume::IsEqual(const char* name, const Int_t copy) +{ + return (copy == fCopy && strcmp(name, fName) == 0); +} + +char* AliDebugVolume::Status() const +{ + char* tmp; + tmp = "Undefined"; + if (fStatus == 1) tmp = "Entering"; + if (fStatus == 2) tmp = "Exiting"; + return tmp; +} + + +void AliDebugVolume::Copy(AliDebugVolume &volume) const +{ + // + // Copy *this onto debug volume -- not implemented + // + Fatal("Copy","Not implemented!\n"); +} + + + + + + + + + + + + + diff --git a/STEER/AliDebugVolume.h b/STEER/AliDebugVolume.h new file mode 100644 index 00000000000..e324b311f96 --- /dev/null +++ b/STEER/AliDebugVolume.h @@ -0,0 +1,45 @@ +#ifndef ALIDEBUGVOLUME_H +#define ALIDEBUGVOLUME_H +/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * + * See cxx source for full Copyright notice */ + +/* $Id$ */ + +#include "TNamed.h" +class AliDebugVolume : public TNamed { + +public: + AliDebugVolume(); + AliDebugVolume(const char *name, Int_t copy, + Float_t step, Float_t x, Float_t y, Float_t z, Int_t status); + AliDebugVolume(const AliDebugVolume &volume) {volume.Copy(*this);} + virtual ~AliDebugVolume(){;} + + void Copy(AliDebugVolume &lego) const; + virtual AliDebugVolume &operator=(const AliDebugVolume &volume) + {volume.Copy(*this); return(*this);} + + Int_t CopyNumber() const {return fCopy;} + Float_t Step() const {return fStep;} + Float_t X() const {return fX;} + Float_t Y() const {return fY;} + Float_t Z() const {return fZ;} + char* Status() const; + + + Bool_t IsEqual(const char* name, const Int_t copy); +private: + Int_t fCopy; //!Volume copy number + Float_t fStep; //!Stepsize to volume boundary + Float_t fX; // x + Float_t fY; // y + Float_t fZ; // z of boundary crossing + Int_t fStatus; // tracking status + + ClassDef(AliDebugVolume,1) //Utility class to store volume information + //during debugging + +}; + + +#endif -- 2.43.0