ROOT logo
// Author: Cvetan Cheshkov 27/03/2007

/**************************************************************************
 * Copyright(c) 1998-2003, 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.                  *
 **************************************************************************/

//////////////////////////////////////////////////////////////////////////
//                                                                      //
// AliRawDataArrayV2                                                    //
// A container object which is used in order to write the sub-detector  //
// raw-data payloads into a separate branches                           //
//                                                                      //
//////////////////////////////////////////////////////////////////////////

#include "AliRawDataArrayV2.h"
#include "AliRawData.h"


ClassImp(AliRawDataArrayV2)

AliRawDataArrayV2::AliRawDataArrayV2():
fRawDataArray("AliRawData",100),
fNAlloc(0)
{
  // Default constructor
}

AliRawDataArrayV2::AliRawDataArrayV2(Int_t n):
fRawDataArray("AliRawData",n),
fNAlloc(0)
{
  // Default constructor
}

AliRawDataArrayV2::~AliRawDataArrayV2()
{
  fRawDataArray.Delete();
}

void AliRawDataArrayV2::ClearData()
{
  fRawDataArray.Clear();
}

AliRawData *AliRawDataArrayV2::Add()
{
  Int_t nEntries = fRawDataArray.GetEntriesFast();
  if (nEntries < fNAlloc) {
    return (AliRawData *)fRawDataArray[nEntries];
  }
  else {
    fNAlloc = nEntries + 1;
    return new (fRawDataArray[nEntries]) AliRawData();
  }
}
 AliRawDataArrayV2.cxx:1
 AliRawDataArrayV2.cxx:2
 AliRawDataArrayV2.cxx:3
 AliRawDataArrayV2.cxx:4
 AliRawDataArrayV2.cxx:5
 AliRawDataArrayV2.cxx:6
 AliRawDataArrayV2.cxx:7
 AliRawDataArrayV2.cxx:8
 AliRawDataArrayV2.cxx:9
 AliRawDataArrayV2.cxx:10
 AliRawDataArrayV2.cxx:11
 AliRawDataArrayV2.cxx:12
 AliRawDataArrayV2.cxx:13
 AliRawDataArrayV2.cxx:14
 AliRawDataArrayV2.cxx:15
 AliRawDataArrayV2.cxx:16
 AliRawDataArrayV2.cxx:17
 AliRawDataArrayV2.cxx:18
 AliRawDataArrayV2.cxx:19
 AliRawDataArrayV2.cxx:20
 AliRawDataArrayV2.cxx:21
 AliRawDataArrayV2.cxx:22
 AliRawDataArrayV2.cxx:23
 AliRawDataArrayV2.cxx:24
 AliRawDataArrayV2.cxx:25
 AliRawDataArrayV2.cxx:26
 AliRawDataArrayV2.cxx:27
 AliRawDataArrayV2.cxx:28
 AliRawDataArrayV2.cxx:29
 AliRawDataArrayV2.cxx:30
 AliRawDataArrayV2.cxx:31
 AliRawDataArrayV2.cxx:32
 AliRawDataArrayV2.cxx:33
 AliRawDataArrayV2.cxx:34
 AliRawDataArrayV2.cxx:35
 AliRawDataArrayV2.cxx:36
 AliRawDataArrayV2.cxx:37
 AliRawDataArrayV2.cxx:38
 AliRawDataArrayV2.cxx:39
 AliRawDataArrayV2.cxx:40
 AliRawDataArrayV2.cxx:41
 AliRawDataArrayV2.cxx:42
 AliRawDataArrayV2.cxx:43
 AliRawDataArrayV2.cxx:44
 AliRawDataArrayV2.cxx:45
 AliRawDataArrayV2.cxx:46
 AliRawDataArrayV2.cxx:47
 AliRawDataArrayV2.cxx:48
 AliRawDataArrayV2.cxx:49
 AliRawDataArrayV2.cxx:50
 AliRawDataArrayV2.cxx:51
 AliRawDataArrayV2.cxx:52
 AliRawDataArrayV2.cxx:53
 AliRawDataArrayV2.cxx:54
 AliRawDataArrayV2.cxx:55
 AliRawDataArrayV2.cxx:56
 AliRawDataArrayV2.cxx:57
 AliRawDataArrayV2.cxx:58
 AliRawDataArrayV2.cxx:59
 AliRawDataArrayV2.cxx:60
 AliRawDataArrayV2.cxx:61
 AliRawDataArrayV2.cxx:62
 AliRawDataArrayV2.cxx:63
 AliRawDataArrayV2.cxx:64
 AliRawDataArrayV2.cxx:65
 AliRawDataArrayV2.cxx:66