#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)
{
   
   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)
{
   
   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);
      }
      
      
      
      
      
      
      
   }
   Error("write", "%s could not be written to ASCII file", name);
   return kFALSE;
}
 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