25 void TDataLoader<MatrixInput_t, TReference<Real_t>>::CopyInput(TMatrixT<Real_t> &matrix, IndexIterator_t sampleIterator)
 
   27    const TMatrixT<Real_t> &input = std::get<0>(fData);
 
   28    Int_t m = matrix.GetNrows();
 
   29    Int_t n = input.GetNcols();
 
   31    for (Int_t i = 0; i < m; i++) {
 
   32       Int_t sampleIndex = *sampleIterator;
 
   33       for (Int_t j = 0; j < n; j++) {
 
   34          matrix(i, j) = 
static_cast<Real_t
>(input(sampleIndex, j));
 
   42 void TDataLoader<MatrixInput_t, TReference<Real_t>>::CopyOutput(TMatrixT<Real_t> &matrix,
 
   43                                                                 IndexIterator_t sampleIterator)
 
   45    const TMatrixT<Real_t> &output = std::get<1>(fData);
 
   46    Int_t m = matrix.GetNrows();
 
   47    Int_t n = output.GetNcols();
 
   49    for (Int_t i = 0; i < m; i++) {
 
   50       Int_t sampleIndex = *sampleIterator;
 
   51       for (Int_t j = 0; j < n; j++) {
 
   52          matrix(i, j) = 
static_cast<Real_t
>(output(sampleIndex, j));
 
   60 void TDataLoader<MatrixInput_t, TReference<Real_t>>::CopyWeights(TMatrixT<Real_t> &matrix,
 
   61                                                                  IndexIterator_t sampleIterator)
 
   63    const TMatrixT<Real_t> &weights = std::get<2>(fData);
 
   64    Int_t m = matrix.GetNrows();
 
   66    for (Int_t i = 0; i < m; i++) {
 
   67       Int_t sampleIndex = *sampleIterator;
 
   68       matrix(i, 0) = 
static_cast<Real_t
>(weights(sampleIndex, 0));
 
   75 void TDataLoader<MatrixInput_t, TReference<Double_t>>::CopyInput(TMatrixT<Double_t> &matrix,
 
   76                                                                  IndexIterator_t sampleIterator)
 
   78    const TMatrixT<Double_t> &input = std::get<0>(fData);
 
   79    Int_t m = matrix.GetNrows();
 
   80    Int_t n = input.GetNcols();
 
   82    for (Int_t i = 0; i < m; i++) {
 
   83       Int_t sampleIndex = *sampleIterator;
 
   84       for (Int_t j = 0; j < n; j++) {
 
   85          matrix(i, j) = 
static_cast<Double_t
>(input(sampleIndex, j));
 
   93 void TDataLoader<MatrixInput_t, TReference<Double_t>>::CopyOutput(TMatrixT<Double_t> &matrix,
 
   94                                                                   IndexIterator_t sampleIterator)
 
   96    const TMatrixT<Double_t> &output = std::get<1>(fData);
 
   97    Int_t m = matrix.GetNrows();
 
   98    Int_t n = output.GetNcols();
 
  100    for (Int_t i = 0; i < m; i++) {
 
  101       Int_t sampleIndex = *sampleIterator;
 
  102       for (Int_t j = 0; j < n; j++) {
 
  103          matrix(i, j) = 
static_cast<Double_t
>(output(sampleIndex, j));
 
  111 void TDataLoader<MatrixInput_t, TReference<Double_t>>::CopyWeights(TMatrixT<Double_t> &matrix,
 
  112                                                                    IndexIterator_t sampleIterator)
 
  114    const TMatrixT<Double_t> &output = std::get<2>(fData);
 
  115    Int_t m = matrix.GetNrows();
 
  117    for (Int_t i = 0; i < m; i++) {
 
  118       Int_t sampleIndex = *sampleIterator;
 
  119       matrix(i, 0) = 
static_cast<Double_t
>(output(sampleIndex, 0));
 
  126 void TDataLoader<TMVAInput_t, TReference<Real_t>>::CopyInput(TMatrixT<Real_t> &matrix, IndexIterator_t sampleIterator)
 
  128    Event *
event = 
nullptr;
 
  130    Int_t m = matrix.GetNrows();
 
  131    Int_t n = 
event->GetNVariables();
 
  135    for (Int_t i = 0; i < m; i++) {
 
  136       Int_t sampleIndex = *sampleIterator++;
 
  137       event = std::get<0>(fData)[sampleIndex];
 
  138       for (Int_t j = 0; j < n; j++) {
 
  139          matrix(i, j) = 
event->GetValue(j);
 
  146 void TDataLoader<TMVAInput_t, TReference<Real_t>>::CopyOutput(TMatrixT<Real_t> &matrix, IndexIterator_t sampleIterator)
 
  148    Event *
event = std::get<0>(fData).front();
 
  149    const DataSetInfo &info = std::get<1>(fData);
 
  150    Int_t m = matrix.GetNrows();
 
  151    Int_t n = matrix.GetNcols();
 
  153    for (Int_t i = 0; i < m; i++) {
 
  154       Int_t sampleIndex = *sampleIterator++;
 
  155       event = std::get<0>(fData)[sampleIndex];
 
  156       for (Int_t j = 0; j < n; j++) {
 
  158          if (event->GetNTargets() == 0) {
 
  161                matrix(i, j) = (info.IsSignal(event)) ? 1.0 : 0.0;
 
  165                if (j == static_cast<Int_t>(event->GetClass())) {
 
  170             matrix(i, j) = 
static_cast<Real_t
>(
event->GetTarget(j));
 
  178 void TDataLoader<TMVAInput_t, TReference<Real_t>>::CopyWeights(TMatrixT<Real_t> &matrix, IndexIterator_t sampleIterator)
 
  180    Event *
event = std::get<0>(fData).front();
 
  181    for (Int_t i = 0; i < matrix.GetNrows(); i++) {
 
  182       Int_t sampleIndex = *sampleIterator++;
 
  183       event = std::get<0>(fData)[sampleIndex];
 
  184       matrix(i, 0) = 
event->GetWeight();
 
  190 void TDataLoader<TMVAInput_t, TReference<Double_t>>::CopyInput(TMatrixT<Double_t> &matrix,
 
  191                                                                IndexIterator_t sampleIterator)
 
  193    Event *
event = std::get<0>(fData).front();
 
  194    Int_t m = matrix.GetNrows();
 
  195    Int_t n = 
event->GetNVariables();
 
  199    for (Int_t i = 0; i < m; i++) {
 
  200       Int_t sampleIndex = *sampleIterator++;
 
  201       event = std::get<0>(fData)[sampleIndex];
 
  202       for (Int_t j = 0; j < n; j++) {
 
  203          matrix(i, j) = 
event->GetValue(j);
 
  210 void TDataLoader<TMVAInput_t, TReference<Double_t>>::CopyOutput(TMatrixT<Double_t> &matrix,
 
  211                                                                 IndexIterator_t sampleIterator)
 
  213    Event *
event = std::get<0>(fData).front();
 
  214    const DataSetInfo &info = std::get<1>(fData);
 
  215    Int_t m = matrix.GetNrows();
 
  216    Int_t n = matrix.GetNcols();
 
  218    for (Int_t i = 0; i < m; i++) {
 
  219       Int_t sampleIndex = *sampleIterator++;
 
  220       event = std::get<0>(fData)[sampleIndex];
 
  221       for (Int_t j = 0; j < n; j++) {
 
  223          if (event->GetNTargets() == 0) {
 
  226                matrix(i, j) = (info.IsSignal(event)) ? 1.0 : 0.0;
 
  230                if (j == static_cast<Int_t>(event->GetClass())) {
 
  235             matrix(i, j) = 
static_cast<Real_t
>(
event->GetTarget(j));
 
  243 void TDataLoader<TMVAInput_t, TReference<Double_t>>::CopyWeights(TMatrixT<Double_t> &matrix,
 
  244                                                                  IndexIterator_t sampleIterator)
 
  246    Event *
event = 
nullptr;
 
  248    for (Int_t i = 0; i < matrix.GetNrows(); i++) {
 
  249       Int_t sampleIndex = *sampleIterator++;
 
  250       event = std::get<0>(fData)[sampleIndex];
 
  251       matrix(i, 0) = 
event->GetWeight();
 
  256 template class TDataLoader<MatrixInput_t, TReference<Real_t>>;
 
  257 template class TDataLoader<TMVAInput_t, TReference<Real_t>>;
 
  258 template class TDataLoader<MatrixInput_t, TReference<Double_t>>;
 
  259 template class TDataLoader<TMVAInput_t, TReference<Double_t>>;