File indexing completed on 2025-08-05 08:16:09
0001 #include "MvtxRawHitContainerv1.h"
0002 #include "MvtxRawHitv1.h"
0003
0004 #include <TClonesArray.h>
0005
0006 static const int NMVTXHITS = 100;
0007
0008 MvtxRawHitContainerv1::MvtxRawHitContainerv1()
0009 : MvtxRawHitsTCArray(new TClonesArray("MvtxRawHitv1", NMVTXHITS))
0010 {
0011 }
0012
0013 MvtxRawHitContainerv1::~MvtxRawHitContainerv1()
0014 {
0015 delete MvtxRawHitsTCArray;
0016 }
0017
0018 void MvtxRawHitContainerv1::Reset()
0019 {
0020 MvtxRawHitsTCArray->Clear();
0021 MvtxRawHitsTCArray->Expand(NMVTXHITS);
0022 }
0023
0024 void MvtxRawHitContainerv1::identify(std::ostream &os) const
0025 {
0026 os << "MvtxRawHitContainerv1" << std::endl;
0027 os << "containing " << MvtxRawHitsTCArray->GetEntriesFast() << " Mvtx hits" << std::endl;
0028
0029 MvtxRawHit *mvtxhit = static_cast<MvtxRawHit *>(MvtxRawHitsTCArray->At(0));
0030 if (mvtxhit)
0031 {
0032 os << "for beam clock: " << std::hex << mvtxhit->get_bco() << std::dec << std::endl;
0033 }
0034 }
0035
0036 int MvtxRawHitContainerv1::isValid() const
0037 {
0038 return MvtxRawHitsTCArray->GetSize();
0039 }
0040
0041 unsigned int MvtxRawHitContainerv1::get_nhits()
0042 {
0043 return MvtxRawHitsTCArray->GetEntriesFast();
0044 }
0045
0046 MvtxRawHit *MvtxRawHitContainerv1::AddHit()
0047 {
0048 MvtxRawHit *newhit = new ((*MvtxRawHitsTCArray)[MvtxRawHitsTCArray->GetLast() + 1]) MvtxRawHitv1();
0049 return newhit;
0050 }
0051
0052 MvtxRawHit *MvtxRawHitContainerv1::AddHit(MvtxRawHit *mvtxhit)
0053 {
0054 MvtxRawHit *newhit = new ((*MvtxRawHitsTCArray)[MvtxRawHitsTCArray->GetLast() + 1]) MvtxRawHitv1(mvtxhit);
0055 return newhit;
0056 }
0057
0058 MvtxRawHit *MvtxRawHitContainerv1::get_hit(unsigned int index)
0059 {
0060 return (MvtxRawHit *) MvtxRawHitsTCArray->At(index);
0061 }