ROOT logo
// -*- mode: c++ -*-
/**************************************************************************
 * This file is property of and copyright by the Relativistic Heavy Ion   *
 * Group (RHIG),  Department of Physics Yale University, US, 2010         *
 *                                                                        *
 * Author: Per Thomas Hille <perthomas.hille@yale.edu> for the ALICE EMCAL*
 * project. Contributors are mentioned in the code where appropriate.     *
 * Please report bugs to perthomas.hille@yale.edu                         *
 *                                                                        *
 * 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.                *
 **************************************************************************/

//Container class for Peak Finder vectors

#include "AliCaloPeakFinderVectors.h"
#include <iostream>


using namespace std;



ClassImp( AliCaloPeakFinderVectors)



AliCaloPeakFinderVectors::AliCaloPeakFinderVectors()
{
  ResetVectors();
}


AliCaloPeakFinderVectors::~AliCaloPeakFinderVectors()
{
  
}


void 
AliCaloPeakFinderVectors::ResetVectors()
{
  // As implied by function name
  for(int i=0; i < PF::MAXSTART; i++ )
    {
      for(int j=0; j < PF::SAMPLERANGE; j++)
	{
	  if(i < PF::MAXSTART  && j < PF::SAMPLERANGE )
	    {
	      for(int k = 0;  k < 100; k++)
		{
		  fPFAmpV[i][j][k]   =  0 ;
		  fPFTofV[i][j][k]   =  0 ;
		  fPFAmpVC[i][j][k]  =  0 ;
		  fPFTofVC[i][j][k]  =  0 ;
		}
	    }
	}	
    }
}


void 
AliCaloPeakFinderVectors::SetVector(const int i, const int j, const Double_t  *const a, const Double_t *const t,   
				    const Double_t *const ac, const Double_t *const tc )
{
  // As implied by function name
  if(i < PF::MAXSTART  && j < PF::SAMPLERANGE )
    {
      for(int k = 0;  k < 100; k++)
	{
	  fPFAmpV[i][j][k] =  a[k];
	  fPFTofV[i][j][k] =  t[k];
	  fPFAmpVC[i][j][k] = ac[k];
	  fPFTofVC[i][j][k] = tc[k];
	}
    }
}


void 
AliCaloPeakFinderVectors::GetVector(const int i, const int j, Double_t *const a, Double_t *const t,   
				    Double_t *const ac, Double_t *const tc ) const
{
  // As implied by function name
  if(i < PF::MAXSTART  && j < PF::SAMPLERANGE )
    {
      for( int k = 0;  k < 100; k++)
	{
	  a[k]  = fPFAmpV[i][j][k];
	  t[k]  = fPFTofV[i][j][k];
	  ac[k] = fPFAmpVC[i][j][k];
	  tc[k] = fPFTofVC[i][j][k];
	}
    }
}


void 
AliCaloPeakFinderVectors::PrintVectors() const
{
  // As implied by function name
  cout << __FILE__ << __LINE__ << __FUNCTION__ << endl;
  for(int i= 0; i < PF::MAXSTART; i++ )
    {
      for(int j=0; j < PF::SAMPLERANGE; j++ )
	{
	  for(int k=0; k < 10; k++ )
	    {
	      cout << fPFAmpV[i][j][k] << "\t";
	    }
	  cout << endl;
	}
      cout << endl; 
    }
}  

 AliCaloPeakFinderVectors.cxx:1
 AliCaloPeakFinderVectors.cxx:2
 AliCaloPeakFinderVectors.cxx:3
 AliCaloPeakFinderVectors.cxx:4
 AliCaloPeakFinderVectors.cxx:5
 AliCaloPeakFinderVectors.cxx:6
 AliCaloPeakFinderVectors.cxx:7
 AliCaloPeakFinderVectors.cxx:8
 AliCaloPeakFinderVectors.cxx:9
 AliCaloPeakFinderVectors.cxx:10
 AliCaloPeakFinderVectors.cxx:11
 AliCaloPeakFinderVectors.cxx:12
 AliCaloPeakFinderVectors.cxx:13
 AliCaloPeakFinderVectors.cxx:14
 AliCaloPeakFinderVectors.cxx:15
 AliCaloPeakFinderVectors.cxx:16
 AliCaloPeakFinderVectors.cxx:17
 AliCaloPeakFinderVectors.cxx:18
 AliCaloPeakFinderVectors.cxx:19
 AliCaloPeakFinderVectors.cxx:20
 AliCaloPeakFinderVectors.cxx:21
 AliCaloPeakFinderVectors.cxx:22
 AliCaloPeakFinderVectors.cxx:23
 AliCaloPeakFinderVectors.cxx:24
 AliCaloPeakFinderVectors.cxx:25
 AliCaloPeakFinderVectors.cxx:26
 AliCaloPeakFinderVectors.cxx:27
 AliCaloPeakFinderVectors.cxx:28
 AliCaloPeakFinderVectors.cxx:29
 AliCaloPeakFinderVectors.cxx:30
 AliCaloPeakFinderVectors.cxx:31
 AliCaloPeakFinderVectors.cxx:32
 AliCaloPeakFinderVectors.cxx:33
 AliCaloPeakFinderVectors.cxx:34
 AliCaloPeakFinderVectors.cxx:35
 AliCaloPeakFinderVectors.cxx:36
 AliCaloPeakFinderVectors.cxx:37
 AliCaloPeakFinderVectors.cxx:38
 AliCaloPeakFinderVectors.cxx:39
 AliCaloPeakFinderVectors.cxx:40
 AliCaloPeakFinderVectors.cxx:41
 AliCaloPeakFinderVectors.cxx:42
 AliCaloPeakFinderVectors.cxx:43
 AliCaloPeakFinderVectors.cxx:44
 AliCaloPeakFinderVectors.cxx:45
 AliCaloPeakFinderVectors.cxx:46
 AliCaloPeakFinderVectors.cxx:47
 AliCaloPeakFinderVectors.cxx:48
 AliCaloPeakFinderVectors.cxx:49
 AliCaloPeakFinderVectors.cxx:50
 AliCaloPeakFinderVectors.cxx:51
 AliCaloPeakFinderVectors.cxx:52
 AliCaloPeakFinderVectors.cxx:53
 AliCaloPeakFinderVectors.cxx:54
 AliCaloPeakFinderVectors.cxx:55
 AliCaloPeakFinderVectors.cxx:56
 AliCaloPeakFinderVectors.cxx:57
 AliCaloPeakFinderVectors.cxx:58
 AliCaloPeakFinderVectors.cxx:59
 AliCaloPeakFinderVectors.cxx:60
 AliCaloPeakFinderVectors.cxx:61
 AliCaloPeakFinderVectors.cxx:62
 AliCaloPeakFinderVectors.cxx:63
 AliCaloPeakFinderVectors.cxx:64
 AliCaloPeakFinderVectors.cxx:65
 AliCaloPeakFinderVectors.cxx:66
 AliCaloPeakFinderVectors.cxx:67
 AliCaloPeakFinderVectors.cxx:68
 AliCaloPeakFinderVectors.cxx:69
 AliCaloPeakFinderVectors.cxx:70
 AliCaloPeakFinderVectors.cxx:71
 AliCaloPeakFinderVectors.cxx:72
 AliCaloPeakFinderVectors.cxx:73
 AliCaloPeakFinderVectors.cxx:74
 AliCaloPeakFinderVectors.cxx:75
 AliCaloPeakFinderVectors.cxx:76
 AliCaloPeakFinderVectors.cxx:77
 AliCaloPeakFinderVectors.cxx:78
 AliCaloPeakFinderVectors.cxx:79
 AliCaloPeakFinderVectors.cxx:80
 AliCaloPeakFinderVectors.cxx:81
 AliCaloPeakFinderVectors.cxx:82
 AliCaloPeakFinderVectors.cxx:83
 AliCaloPeakFinderVectors.cxx:84
 AliCaloPeakFinderVectors.cxx:85
 AliCaloPeakFinderVectors.cxx:86
 AliCaloPeakFinderVectors.cxx:87
 AliCaloPeakFinderVectors.cxx:88
 AliCaloPeakFinderVectors.cxx:89
 AliCaloPeakFinderVectors.cxx:90
 AliCaloPeakFinderVectors.cxx:91
 AliCaloPeakFinderVectors.cxx:92
 AliCaloPeakFinderVectors.cxx:93
 AliCaloPeakFinderVectors.cxx:94
 AliCaloPeakFinderVectors.cxx:95
 AliCaloPeakFinderVectors.cxx:96
 AliCaloPeakFinderVectors.cxx:97
 AliCaloPeakFinderVectors.cxx:98
 AliCaloPeakFinderVectors.cxx:99
 AliCaloPeakFinderVectors.cxx:100
 AliCaloPeakFinderVectors.cxx:101
 AliCaloPeakFinderVectors.cxx:102
 AliCaloPeakFinderVectors.cxx:103
 AliCaloPeakFinderVectors.cxx:104
 AliCaloPeakFinderVectors.cxx:105
 AliCaloPeakFinderVectors.cxx:106
 AliCaloPeakFinderVectors.cxx:107
 AliCaloPeakFinderVectors.cxx:108
 AliCaloPeakFinderVectors.cxx:109
 AliCaloPeakFinderVectors.cxx:110
 AliCaloPeakFinderVectors.cxx:111
 AliCaloPeakFinderVectors.cxx:112
 AliCaloPeakFinderVectors.cxx:113
 AliCaloPeakFinderVectors.cxx:114
 AliCaloPeakFinderVectors.cxx:115
 AliCaloPeakFinderVectors.cxx:116
 AliCaloPeakFinderVectors.cxx:117
 AliCaloPeakFinderVectors.cxx:118
 AliCaloPeakFinderVectors.cxx:119
 AliCaloPeakFinderVectors.cxx:120
 AliCaloPeakFinderVectors.cxx:121
 AliCaloPeakFinderVectors.cxx:122