]> git.uio.no Git - u/mrichter/AliRoot.git/blame - RALICE/AliDevice.h
01-jul-2004 NvE AliCalorimeter derived from AliDevice to extend functionality (e...
[u/mrichter/AliRoot.git] / RALICE / AliDevice.h
CommitLineData
7a086578 1#ifndef ALIDEVICE_H
2#define ALIDEVICE_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6// $Id$
7
8#include "AliSignal.h"
9
10class AliDevice : public AliSignal
11{
12 public:
13 AliDevice(); // Default constructor
14 virtual ~AliDevice(); // Default destructor
15 AliDevice(const AliDevice& dev); // Copy constructor
16 virtual TObject* Clone(const char* name="") const; // Make a deep copy and provide its pointer
17 void SetHitCopy(Int_t j); // (De)activate creation of private copies of hits
18 Int_t GetHitCopy() const; // Provide HitCopy flag value
19 void AddHit(AliSignal& s); // Register an AliSignal object as a hit to this module
b055c99d 20 void AddHit(AliSignal* s) { if (s) AddHit(*s); }
7a086578 21 void RemoveHit(AliSignal& s); // Remove AliSignal object as hit from this module
b055c99d 22 void RemoveHit(AliSignal* s) { if (s) RemoveHit(*s); }
7a086578 23 void RemoveHits(); // Remove all AliSignals as hits from this module
24 Int_t GetNhits() const; // Provide number of registered hits
25 AliSignal* GetHit(Int_t j) const; // Access to the AliSignal registered as hit number j
26 TObjArray* GetHits(); // Provide the references to all the registered hits
27 virtual void Reset(Int_t mode=0); // Reset registered hits and AliSignal attributes
28 void ShowHit(Int_t j=0) const; // Show data of the j-th hit (j=0 means all hits)
29 virtual void Data(TString f="car") const; // Print device and all signal info for coord. frame f
30 TObjArray SortHits(TString name,Int_t mode=-1,TObjArray* hits=0) const; // Sort hits by named signal value
31 TObjArray SortHits(Int_t idx=1,Int_t mode=-1,TObjArray* hits=0) const; // Sort hits by indexed signal value
32
33 protected:
34 Int_t fHitCopy; // Flag to denote making private copies of added hits
35 TObjArray* fHits; // Array to hold the associated hits
36
b055c99d 37 ClassDef(AliDevice,2) // Signal (Hit) handling of a generic device.
7a086578 38};
39#endif