ROOT logo
//////////////////////////////////////////////////////////////////////////////
//
// @(#)hydraTrans/richNew:$Id: $
//
//*-- Author  : Witold Przygoda (przygoda@psja1.if.uj.edu.pl)
//*-- Revised : Martin Jurkovic <martin.jurkovic@ph.tum.de> 2010
//
//_HADES_CLASS_DESCRIPTION
//////////////////////////////////////////////////////////////////////////////
//
//  HRichParAsciiFileIo
//
//  For plain i/o ascii. Used only partially in RICH.
//
//////////////////////////////////////////////////////////////////////////////


#include "hdetparasciifileio.h"
#include "hparset.h"
#include "hrichcalpar.h"
#include "hrichmappingpar.h"
#include "hrichparasciifileio.h"
#include "hrichthresholdpar.h"

#include "hrich700trb3lookup.h"
#include "hrich700thresholdpar.h"
#include "hrich700geompar.h"


#include <fstream>

using namespace std;

ClassImp(HRichParAsciiFileIo)

HRichParAsciiFileIo::HRichParAsciiFileIo(fstream* f)
   : HDetParAsciiFileIo(f)
{
   fName = "HRichParIo";
}

Bool_t HRichParAsciiFileIo::init(HParSet* pPar, Int_t* set)
{
   // calls the appropriate read function for the container
   const Text_t* name = pPar->GetName();
   if (NULL != pFile) {
      if (0 == strncmp(name, "RichCalPar", strlen("RichCalPar"))) {
         return readFile<HRichCalPar>((HRichCalPar*)pPar);
      }
      if (0 == strncmp(name, "RichMappingParameters", strlen("RichMappingParameters"))) {
         return readFile<HRichMappingPar>((HRichMappingPar*)pPar);
      }
      if (0 == strncmp(name, "RichThresholdParameters", strlen("RichThresholdParameters"))) {
         return readFile<HRichThresholdPar>((HRichThresholdPar*)pPar);
      }
      if (0 == strncmp(name, "Rich700Trb3Lookup", strlen("Rich700Trb3Lookup"))) {
	  return readFile<HRich700Trb3Lookup>((HRich700Trb3Lookup*)pPar);
      }
      if (0 == strncmp(name, "Rich700ThresholdPar", strlen("Rich700ThresholdPar"))) {
	  return readFile<HRich700ThresholdPar>((HRich700ThresholdPar*)pPar);
      }
      if (0 == strncmp(name,"Rich700GeomPar", strlen("Rich700GeomPar"))){
	  return HDetParAsciiFileIo::read((HDetGeomPar*)pPar,set);
      }
      if (0 == strncmp(name,"Rich700DigiPar", strlen("Rich700DigiPar"))){
	  return HDetParAsciiFileIo::read((HDetGeomPar*)pPar,set);
      }
      if (0 == strncmp(name,"Rich700RingFinderPar", strlen("Rich700RingFinderPar"))){
	  return HDetParAsciiFileIo::read((HDetGeomPar*)pPar,set);
      }

   }
   Error("init", "Initialization of %s not possible from ASCII file!", name);
   return kFALSE;

}

Int_t HRichParAsciiFileIo::write(HParSet* pPar)
{
   // calls the appropriate write function for the container

   const Text_t* name = pPar->GetName();
   if (NULL != pFile) {
      if (0 == strncmp(name, "RichCalPar", strlen("RichCalPar"))) {
         return writeFile<HRichCalPar>((HRichCalPar*)pPar);
      }
      if (0 == strncmp(name, "RichMappingParameters", strlen("RichMappingParameters"))) {
         return writeFile<HRichMappingPar>((HRichMappingPar*)pPar);
      }
      if (0 == strncmp(name, "RichThresholdParameters", strlen("RichThresholdParameters"))) {
         return writeFile<HRichThresholdPar>((HRichThresholdPar*)pPar);
      }
      if (0 == strncmp(name, "Rich700Trb3Lookup", strlen("Rich700Trb3Lookup"))) {
    	  return writeFile<HRich700Trb3Lookup>((HRich700Trb3Lookup*)pPar);
      }

      if (0 == strncmp(name, "Rich700ThresholdPar", strlen("Rich700ThresholdPar"))) {
	  return writeFile<HRich700ThresholdPar>((HRich700ThresholdPar*)pPar);
      }

      if (0 == strncmp(name,"Rich700GeomPar", strlen("Rich700GeomPar"))){
	  return HDetParAsciiFileIo::writeFile((HDetGeomPar*)pPar);
      }

      //      if (0 == strncmp(name,"Rich700DigiPar", strlen("Rich700DigiPar"))){
      //          return writeFile<HRich700DigiPar>((HRich700DigiPar*)pPar);
      //                }
      //
      //      if (0 == strncmp(name,"Rich700RingFinderPar", strlen("Rich700RingFinderPar"))){
      //          return writeFile<HRich700RingFinderPar>((HRich700RingFinderPar*)pPar);
      //      }
   }
   Error("write", "%s could not be written to ASCII file", name);
   return kFALSE;
}
 hrichparasciifileio.cc:1
 hrichparasciifileio.cc:2
 hrichparasciifileio.cc:3
 hrichparasciifileio.cc:4
 hrichparasciifileio.cc:5
 hrichparasciifileio.cc:6
 hrichparasciifileio.cc:7
 hrichparasciifileio.cc:8
 hrichparasciifileio.cc:9
 hrichparasciifileio.cc:10
 hrichparasciifileio.cc:11
 hrichparasciifileio.cc:12
 hrichparasciifileio.cc:13
 hrichparasciifileio.cc:14
 hrichparasciifileio.cc:15
 hrichparasciifileio.cc:16
 hrichparasciifileio.cc:17
 hrichparasciifileio.cc:18
 hrichparasciifileio.cc:19
 hrichparasciifileio.cc:20
 hrichparasciifileio.cc:21
 hrichparasciifileio.cc:22
 hrichparasciifileio.cc:23
 hrichparasciifileio.cc:24
 hrichparasciifileio.cc:25
 hrichparasciifileio.cc:26
 hrichparasciifileio.cc:27
 hrichparasciifileio.cc:28
 hrichparasciifileio.cc:29
 hrichparasciifileio.cc:30
 hrichparasciifileio.cc:31
 hrichparasciifileio.cc:32
 hrichparasciifileio.cc:33
 hrichparasciifileio.cc:34
 hrichparasciifileio.cc:35
 hrichparasciifileio.cc:36
 hrichparasciifileio.cc:37
 hrichparasciifileio.cc:38
 hrichparasciifileio.cc:39
 hrichparasciifileio.cc:40
 hrichparasciifileio.cc:41
 hrichparasciifileio.cc:42
 hrichparasciifileio.cc:43
 hrichparasciifileio.cc:44
 hrichparasciifileio.cc:45
 hrichparasciifileio.cc:46
 hrichparasciifileio.cc:47
 hrichparasciifileio.cc:48
 hrichparasciifileio.cc:49
 hrichparasciifileio.cc:50
 hrichparasciifileio.cc:51
 hrichparasciifileio.cc:52
 hrichparasciifileio.cc:53
 hrichparasciifileio.cc:54
 hrichparasciifileio.cc:55
 hrichparasciifileio.cc:56
 hrichparasciifileio.cc:57
 hrichparasciifileio.cc:58
 hrichparasciifileio.cc:59
 hrichparasciifileio.cc:60
 hrichparasciifileio.cc:61
 hrichparasciifileio.cc:62
 hrichparasciifileio.cc:63
 hrichparasciifileio.cc:64
 hrichparasciifileio.cc:65
 hrichparasciifileio.cc:66
 hrichparasciifileio.cc:67
 hrichparasciifileio.cc:68
 hrichparasciifileio.cc:69
 hrichparasciifileio.cc:70
 hrichparasciifileio.cc:71
 hrichparasciifileio.cc:72
 hrichparasciifileio.cc:73
 hrichparasciifileio.cc:74
 hrichparasciifileio.cc:75
 hrichparasciifileio.cc:76
 hrichparasciifileio.cc:77
 hrichparasciifileio.cc:78
 hrichparasciifileio.cc:79
 hrichparasciifileio.cc:80
 hrichparasciifileio.cc:81
 hrichparasciifileio.cc:82
 hrichparasciifileio.cc:83
 hrichparasciifileio.cc:84
 hrichparasciifileio.cc:85
 hrichparasciifileio.cc:86
 hrichparasciifileio.cc:87
 hrichparasciifileio.cc:88
 hrichparasciifileio.cc:89
 hrichparasciifileio.cc:90
 hrichparasciifileio.cc:91
 hrichparasciifileio.cc:92
 hrichparasciifileio.cc:93
 hrichparasciifileio.cc:94
 hrichparasciifileio.cc:95
 hrichparasciifileio.cc:96
 hrichparasciifileio.cc:97
 hrichparasciifileio.cc:98
 hrichparasciifileio.cc:99
 hrichparasciifileio.cc:100
 hrichparasciifileio.cc:101
 hrichparasciifileio.cc:102
 hrichparasciifileio.cc:103
 hrichparasciifileio.cc:104
 hrichparasciifileio.cc:105
 hrichparasciifileio.cc:106
 hrichparasciifileio.cc:107
 hrichparasciifileio.cc:108
 hrichparasciifileio.cc:109
 hrichparasciifileio.cc:110
 hrichparasciifileio.cc:111
 hrichparasciifileio.cc:112
 hrichparasciifileio.cc:113
 hrichparasciifileio.cc:114
 hrichparasciifileio.cc:115