#include "digiRootData/AcdDigi.h" #include "digiRootData/ACDTile.h" #include "digiRootData/TileID.h" //#include "TClass.h" TClonesArray *AcdDigi::m_staticArray = 0; ClassImp(AcdDigi) AcdDigi::AcdDigi() { if (!m_staticArray) m_staticArray = new TClonesArray("ACDTile", 24); m_tiles = m_staticArray; m_numTiles = -1; m_eventId = 0; m_timerWord = 0; m_TREQ_VETO_status = 0; m_deadTime = 0; m_deadTimeCause = 0; } AcdDigi::~AcdDigi() { // Destructor if (m_tiles == m_staticArray) m_staticArray = 0; m_tiles->Delete(); delete m_tiles; } ACDTile* AcdDigi::Add(TileID *id) { ++m_numTiles; TClonesArray &tiles = *m_tiles; new(tiles[m_numTiles]) ACDTile(id); return ((ACDTile*)(tiles[m_numTiles])); } void AcdDigi::Clear(Option_t *option) { // Call Delete rather than Clear // since the elements in this array // have allocated memory m_tiles->Delete(option); }