From 4ec7ca34eb93569e458f52ac2ebf61030eaf9d83 Mon Sep 17 00:00:00 2001
From: matta <matta@npt>
Date: Mon, 10 Dec 2012 16:27:28 +0000
Subject: [PATCH] * Adding Trifoil detector to NPLib

---
 NPLib/Trifoil/Makefile                |   42 +
 NPLib/Trifoil/TTrifoilData.cxx        |   97 +++
 NPLib/Trifoil/TTrifoilData.h          |   74 ++
 NPLib/Trifoil/TTrifoilDataDict.cxx    |  977 +++++++++++++++++++++++
 NPLib/Trifoil/TTrifoilDataDict.h      |   62 ++
 NPLib/Trifoil/TTrifoilPhysics.cxx     |  105 +++
 NPLib/Trifoil/TTrifoilPhysics.h       |  102 +++
 NPLib/Trifoil/TTrifoilPhysicsDict.cxx | 1041 +++++++++++++++++++++++++
 NPLib/Trifoil/TTrifoilPhysicsDict.h   |   87 +++
 9 files changed, 2587 insertions(+)
 create mode 100644 NPLib/Trifoil/Makefile
 create mode 100644 NPLib/Trifoil/TTrifoilData.cxx
 create mode 100644 NPLib/Trifoil/TTrifoilData.h
 create mode 100644 NPLib/Trifoil/TTrifoilDataDict.cxx
 create mode 100644 NPLib/Trifoil/TTrifoilDataDict.h
 create mode 100644 NPLib/Trifoil/TTrifoilPhysics.cxx
 create mode 100644 NPLib/Trifoil/TTrifoilPhysics.h
 create mode 100644 NPLib/Trifoil/TTrifoilPhysicsDict.cxx
 create mode 100644 NPLib/Trifoil/TTrifoilPhysicsDict.h

diff --git a/NPLib/Trifoil/Makefile b/NPLib/Trifoil/Makefile
new file mode 100644
index 000000000..a403334b6
--- /dev/null
+++ b/NPLib/Trifoil/Makefile
@@ -0,0 +1,42 @@
+include ../Makefile.arch
+ 
+#------------------------------------------------------------------------------
+SHARELIB      =  libTrifoilData.so libTrifoilPhysics.so
+
+all:            $(SHARELIB)
+#------------------------------------------------------------------------------
+############### Detector ##############
+
+## Trifoil ##
+libTrifoilData.so:	TTrifoilData.o	TTrifoilDataDict.o
+		$(LD) $(SOFLAGS) $^ $(OutPutOpt) $@
+
+TTrifoilDataDict.cxx:	TTrifoilData.h
+			rootcint -f $@ -c $^
+
+libTrifoilPhysics.so:	TTrifoilPhysics.o	TTrifoilPhysicsDict.o
+		$(LD) $(SOFLAGS) $^ $(OutPutOpt) $@
+
+TTrifoilPhysicsDict.cxx:	TTrifoilPhysics.h
+			rootcint -f $@ -c $^
+			
+# dependances
+TTrifoilData.o:		TTrifoilData.cxx	TTrifoilData.h
+TTrifoilPhysics.o:	TTrifoilPhysics.cxx	TTrifoilPhysics.h
+#######################################
+
+############# Clean and More ##########
+clean:
+	@rm -f core *~ *.o *Dict*
+
+distclean:
+	  make clean; rm -f *.so
+
+.SUFFIXES: .$(SrcSuf)
+
+###
+
+.$(SrcSuf).$(ObjSuf):
+	$(CXX) $(CXXFLAGS) $(INCLUDE) -c $<
+
+
diff --git a/NPLib/Trifoil/TTrifoilData.cxx b/NPLib/Trifoil/TTrifoilData.cxx
new file mode 100644
index 000000000..53011988b
--- /dev/null
+++ b/NPLib/Trifoil/TTrifoilData.cxx
@@ -0,0 +1,97 @@
+/*****************************************************************************
+ * Copyright (C) 2009-2012   this file is part of the NPTool Project         *
+ *                                                                           *
+ * For the licensing terms see $NPTOOL/Licence/NPTool_Licence                *
+ * For the list of contributors see $NPTOOL/Licence/Contributors             *
+ *****************************************************************************/
+
+/*****************************************************************************
+ * Original Author: Adrien MATTA  contact address: matta@ipno.in2p3.fr       *
+ *                                                                           *
+ * Creation Date  : December 2012                                            *
+ * Last update    :                                                          *
+ *---------------------------------------------------------------------------*
+ * Decription:                                                               *
+ *  This class hold Trifoil Raw data                                         *
+ *                                                                           *
+ *---------------------------------------------------------------------------*
+ * Comment:                                                                  *
+ *                                                                           *   
+ *                                                                           *
+ *****************************************************************************/
+
+// STL
+#include <iostream>
+#include <fstream>
+#include <sstream>
+#include <string>
+using namespace std; 
+
+// NPL
+#include "TTrifoilData.h"
+
+//ROOT
+#include "TDirectory.h"
+
+ClassImp(TTrifoilData)
+
+/////////////////////////
+TTrifoilData::TTrifoilData()
+{
+
+}
+
+/////////////////////////
+TTrifoilData::~TTrifoilData()
+{
+}
+
+/////////////////////////
+void TTrifoilData::Clear()
+{
+  fTrifoil_Waveform.clear();
+  fTrifoil_TimeCFD.clear();
+  fTrifoil_TimeLED.clear();
+}
+/////////////////////////
+void TTrifoilData::Dump() const
+{
+}
+/////////////////////////
+void TTrifoilData::ReadFSPCFile(string FSPCPath){
+  ifstream FSPCFile;
+  FSPCFile.open(FSPCPath.c_str());
+  
+  if(!FSPCFile.is_open()) {cout << "Error: FSPC File: " << FSPCPath << " not found " << endl ; exit(1);}
+  else {cout << "Trifoil is Reading FSPC file : " << FSPCPath << endl ;}
+  
+  string LineBuffer;
+  string DataBuffer;
+  string DetectorName;
+  string ChannelNumberStr;
+  int    ChannelNumber;
+  while(!FSPCFile.eof()){
+    getline(FSPCFile,LineBuffer);
+    /* Typical line to analyse:
+    # 2005: Address 0x00900800, type 8, Trifoil [Trifoil 0x0900800]
+    */
+    stringstream myLine(LineBuffer);
+    myLine >> DataBuffer >> ChannelNumberStr >> DataBuffer >> DataBuffer >> DataBuffer >> DataBuffer >> DetectorName  ;
+    ChannelNumberStr = ChannelNumberStr.substr(0,ChannelNumberStr.length()-1);
+    stringstream(ChannelNumberStr) >> ChannelNumber;
+    
+    if(DetectorName=="Trifoil") m_FSPC_Channel=ChannelNumber;
+  }
+}
+
+
+void TTrifoilData::FillData(TTigEventFragment* TigEvent){
+  vector<int> channel_number = TigEvent->channel_number;
+  for(unsigned int i = 0 ; i < channel_number.size() ; i++){
+    if(channel_number[i] == m_FSPC_Channel){
+      fTrifoil_Waveform.push_back(TigEvent->waveform[i]);
+      fTrifoil_TimeCFD.push_back(TigEvent->cfd_value[i]);
+      fTrifoil_TimeLED.push_back(TigEvent->led_value[i]);
+    }
+  }
+}
diff --git a/NPLib/Trifoil/TTrifoilData.h b/NPLib/Trifoil/TTrifoilData.h
new file mode 100644
index 000000000..36b2d11f9
--- /dev/null
+++ b/NPLib/Trifoil/TTrifoilData.h
@@ -0,0 +1,74 @@
+#ifndef __TrifoilDATA__
+#define __TrifoilDATA__
+/*****************************************************************************
+ * Copyright (C) 2009-2010   this file is part of the NPTool Project         *
+ *                                                                           *
+ * For the licensing terms see $NPTOOL/Licence/NPTool_Licence                *
+ * For the list of contributors see $NPTOOL/Licence/Contributors             *
+ *****************************************************************************/
+
+/*****************************************************************************
+ * Original Author: Adrien MATTA  contact address: a.matta@surrey.ac.uk      *
+ *                                                                           *
+ * Creation Date  : December 2012                                            *
+ * Last update    :                                                          *
+ *---------------------------------------------------------------------------*
+ * Decription:                                                               *
+ *  This class hold the Trifoil Silicon array raw data (Made for TIG64 card)   *
+ *                                                                           *
+ *---------------------------------------------------------------------------*
+ * Comment:                                                                  *
+ *                                                                           *
+ *                                                                           *
+ *****************************************************************************/
+
+// STL
+#include <vector>
+#include <map>
+using namespace std ;
+
+// NPL
+#include "../Tigress/TTigEventFragment.h"
+
+// ROOT
+#include "TObject.h"
+#include "TH1F.h"
+class TTrifoilData : public TObject {
+private:
+  // Trifoil
+  // Energy
+  vector<TH1F> fTrifoil_Waveform;
+  vector<Double_t>  fTrifoil_TimeCFD;
+  vector<Double_t>  fTrifoil_TimeLED;
+  
+  
+public:
+  TTrifoilData();
+  virtual ~TTrifoilData();
+  
+  void Clear();
+  void Clear(const Option_t*) {};
+  void Dump() const;
+  
+  /////////////////////           SETTERS           ////////////////////////
+  void SetWaveform(TH1F Waveform)   {fTrifoil_Waveform.push_back(Waveform);}
+  void SetTimeCFD(Double_t TimeCFD) {fTrifoil_TimeCFD.push_back(TimeCFD);}
+  void SetTimeLED(Double_t TimeLED) {fTrifoil_TimeLED.push_back(TimeLED);}
+  
+  /////////////////////           GETTERS           ////////////////////////
+  TH1F GetWaveform(int i)    {return fTrifoil_Waveform[i];}
+  Double_t GetTimeCFD(int i) {return fTrifoil_TimeCFD[i];}
+  Double_t GetTimeLED(int i) {return fTrifoil_TimeLED[i];}
+
+  unsigned int GetMultiplicity() {return fTrifoil_TimeCFD.size();}
+public: // Method and object to construct to fill the data event from a Tigress DAQ event tree
+  void ReadFSPCFile(string FSPCPath);//!
+  void FillData(TTigEventFragment* TigEvent);//!
+  
+private:
+  int m_FSPC_Channel;//!
+  
+  ClassDef(TTrifoilData,1)  // TrifoilData structure
+};
+
+#endif
diff --git a/NPLib/Trifoil/TTrifoilDataDict.cxx b/NPLib/Trifoil/TTrifoilDataDict.cxx
new file mode 100644
index 000000000..7f5b40890
--- /dev/null
+++ b/NPLib/Trifoil/TTrifoilDataDict.cxx
@@ -0,0 +1,977 @@
+//
+// File generated by rootcint at Wed Dec  5 17:46:05 2012
+
+// Do NOT change. Changes will be lost next time file is generated
+//
+
+#define R__DICTIONARY_FILENAME TTrifoilDataDict
+#include "RConfig.h" //rootcint 4834
+#if !defined(R__ACCESS_IN_SYMBOL)
+//Break the privacy of classes -- Disabled for the moment
+#define private public
+#define protected public
+#endif
+
+// Since CINT ignores the std namespace, we need to do so in this file.
+namespace std {} using namespace std;
+#include "TTrifoilDataDict.h"
+
+#include "TCollectionProxyInfo.h"
+#include "TClass.h"
+#include "TBuffer.h"
+#include "TMemberInspector.h"
+#include "TError.h"
+
+#ifndef G__ROOT
+#define G__ROOT
+#endif
+
+#include "RtypesImp.h"
+#include "TIsAProxy.h"
+#include "TFileMergeInfo.h"
+
+// START OF SHADOWS
+
+namespace ROOT {
+   namespace Shadow {
+   } // of namespace Shadow
+} // of namespace ROOT
+// END OF SHADOWS
+
+namespace ROOT {
+   void TTrifoilData_ShowMembers(void *obj, TMemberInspector &R__insp);
+   static void *new_TTrifoilData(void *p = 0);
+   static void *newArray_TTrifoilData(Long_t size, void *p);
+   static void delete_TTrifoilData(void *p);
+   static void deleteArray_TTrifoilData(void *p);
+   static void destruct_TTrifoilData(void *p);
+   static void streamer_TTrifoilData(TBuffer &buf, void *obj);
+
+   // Function generating the singleton type initializer
+   static TGenericClassInfo *GenerateInitInstanceLocal(const ::TTrifoilData*)
+   {
+      ::TTrifoilData *ptr = 0;
+      static ::TVirtualIsAProxy* isa_proxy = new ::TInstrumentedIsAProxy< ::TTrifoilData >(0);
+      static ::ROOT::TGenericClassInfo 
+         instance("TTrifoilData", ::TTrifoilData::Class_Version(), "./TTrifoilData.h", 36,
+                  typeid(::TTrifoilData), DefineBehavior(ptr, ptr),
+                  &::TTrifoilData::Dictionary, isa_proxy, 0,
+                  sizeof(::TTrifoilData) );
+      instance.SetNew(&new_TTrifoilData);
+      instance.SetNewArray(&newArray_TTrifoilData);
+      instance.SetDelete(&delete_TTrifoilData);
+      instance.SetDeleteArray(&deleteArray_TTrifoilData);
+      instance.SetDestructor(&destruct_TTrifoilData);
+      instance.SetStreamerFunc(&streamer_TTrifoilData);
+      return &instance;
+   }
+   TGenericClassInfo *GenerateInitInstance(const ::TTrifoilData*)
+   {
+      return GenerateInitInstanceLocal((::TTrifoilData*)0);
+   }
+   // Static variable to force the class initialization
+   static ::ROOT::TGenericClassInfo *_R__UNIQUE_(Init) = GenerateInitInstanceLocal((const ::TTrifoilData*)0x0); R__UseDummy(_R__UNIQUE_(Init));
+} // end of namespace ROOT
+
+//______________________________________________________________________________
+TClass *TTrifoilData::fgIsA = 0;  // static to hold class pointer
+
+//______________________________________________________________________________
+const char *TTrifoilData::Class_Name()
+{
+   return "TTrifoilData";
+}
+
+//______________________________________________________________________________
+const char *TTrifoilData::ImplFileName()
+{
+   return ::ROOT::GenerateInitInstanceLocal((const ::TTrifoilData*)0x0)->GetImplFileName();
+}
+
+//______________________________________________________________________________
+int TTrifoilData::ImplFileLine()
+{
+   return ::ROOT::GenerateInitInstanceLocal((const ::TTrifoilData*)0x0)->GetImplFileLine();
+}
+
+//______________________________________________________________________________
+void TTrifoilData::Dictionary()
+{
+   fgIsA = ::ROOT::GenerateInitInstanceLocal((const ::TTrifoilData*)0x0)->GetClass();
+}
+
+//______________________________________________________________________________
+TClass *TTrifoilData::Class()
+{
+   if (!fgIsA) fgIsA = ::ROOT::GenerateInitInstanceLocal((const ::TTrifoilData*)0x0)->GetClass();
+   return fgIsA;
+}
+
+//______________________________________________________________________________
+void TTrifoilData::Streamer(TBuffer &R__b)
+{
+   // Stream an object of class TTrifoilData.
+
+   UInt_t R__s, R__c;
+   if (R__b.IsReading()) {
+      Version_t R__v = R__b.ReadVersion(&R__s, &R__c); if (R__v) { }
+      TObject::Streamer(R__b);
+      {
+         vector<TH1F> &R__stl =  fTrifoil_Waveform;
+         R__stl.clear();
+         int R__i, R__n;
+         R__b >> R__n;
+         R__stl.reserve(R__n);
+         for (R__i = 0; R__i < R__n; R__i++) {
+            TH1F R__t;
+            R__t.Streamer(R__b);
+            R__stl.push_back(R__t);
+         }
+      }
+      {
+         vector<Double_t> &R__stl =  fTrifoil_TimeCFD;
+         R__stl.clear();
+         int R__i, R__n;
+         R__b >> R__n;
+         R__stl.reserve(R__n);
+         for (R__i = 0; R__i < R__n; R__i++) {
+            double R__t;
+            R__b >> R__t;
+            R__stl.push_back(R__t);
+         }
+      }
+      {
+         vector<Double_t> &R__stl =  fTrifoil_TimeLED;
+         R__stl.clear();
+         int R__i, R__n;
+         R__b >> R__n;
+         R__stl.reserve(R__n);
+         for (R__i = 0; R__i < R__n; R__i++) {
+            double R__t;
+            R__b >> R__t;
+            R__stl.push_back(R__t);
+         }
+      }
+      R__b.CheckByteCount(R__s, R__c, TTrifoilData::IsA());
+   } else {
+      R__c = R__b.WriteVersion(TTrifoilData::IsA(), kTRUE);
+      TObject::Streamer(R__b);
+      {
+         vector<TH1F> &R__stl =  fTrifoil_Waveform;
+         int R__n=(&R__stl) ? int(R__stl.size()) : 0;
+         R__b << R__n;
+         if(R__n) {
+            vector<TH1F>::iterator R__k;
+            for (R__k = R__stl.begin(); R__k != R__stl.end(); ++R__k) {
+            ((TH1F&)(*R__k)).Streamer(R__b);
+            }
+         }
+      }
+      {
+         vector<Double_t> &R__stl =  fTrifoil_TimeCFD;
+         int R__n=(&R__stl) ? int(R__stl.size()) : 0;
+         R__b << R__n;
+         if(R__n) {
+            vector<Double_t>::iterator R__k;
+            for (R__k = R__stl.begin(); R__k != R__stl.end(); ++R__k) {
+            R__b << (*R__k);
+            }
+         }
+      }
+      {
+         vector<Double_t> &R__stl =  fTrifoil_TimeLED;
+         int R__n=(&R__stl) ? int(R__stl.size()) : 0;
+         R__b << R__n;
+         if(R__n) {
+            vector<Double_t>::iterator R__k;
+            for (R__k = R__stl.begin(); R__k != R__stl.end(); ++R__k) {
+            R__b << (*R__k);
+            }
+         }
+      }
+      R__b.SetByteCount(R__c, kTRUE);
+   }
+}
+
+//______________________________________________________________________________
+void TTrifoilData::ShowMembers(TMemberInspector &R__insp)
+{
+      // Inspect the data members of an object of class TTrifoilData.
+      TClass *R__cl = ::TTrifoilData::IsA();
+      if (R__cl || R__insp.IsA()) { }
+      R__insp.Inspect(R__cl, R__insp.GetParent(), "fTrifoil_Waveform", (void*)&fTrifoil_Waveform);
+      R__insp.InspectMember("vector<TH1F>", (void*)&fTrifoil_Waveform, "fTrifoil_Waveform.", false);
+      R__insp.Inspect(R__cl, R__insp.GetParent(), "fTrifoil_TimeCFD", (void*)&fTrifoil_TimeCFD);
+      R__insp.InspectMember("vector<Double_t>", (void*)&fTrifoil_TimeCFD, "fTrifoil_TimeCFD.", false);
+      R__insp.Inspect(R__cl, R__insp.GetParent(), "fTrifoil_TimeLED", (void*)&fTrifoil_TimeLED);
+      R__insp.InspectMember("vector<Double_t>", (void*)&fTrifoil_TimeLED, "fTrifoil_TimeLED.", false);
+      R__insp.Inspect(R__cl, R__insp.GetParent(), "m_FSPC_Channel", &m_FSPC_Channel);
+      TObject::ShowMembers(R__insp);
+}
+
+namespace ROOT {
+   // Wrappers around operator new
+   static void *new_TTrifoilData(void *p) {
+      return  p ? new(p) ::TTrifoilData : new ::TTrifoilData;
+   }
+   static void *newArray_TTrifoilData(Long_t nElements, void *p) {
+      return p ? new(p) ::TTrifoilData[nElements] : new ::TTrifoilData[nElements];
+   }
+   // Wrapper around operator delete
+   static void delete_TTrifoilData(void *p) {
+      delete ((::TTrifoilData*)p);
+   }
+   static void deleteArray_TTrifoilData(void *p) {
+      delete [] ((::TTrifoilData*)p);
+   }
+   static void destruct_TTrifoilData(void *p) {
+      typedef ::TTrifoilData current_t;
+      ((current_t*)p)->~current_t();
+   }
+   // Wrapper around a custom streamer member function.
+   static void streamer_TTrifoilData(TBuffer &buf, void *obj) {
+      ((::TTrifoilData*)obj)->::TTrifoilData::Streamer(buf);
+   }
+} // end of namespace ROOT for class ::TTrifoilData
+
+namespace ROOT {
+   void vectorlETH1FgR_ShowMembers(void *obj, TMemberInspector &R__insp);
+   static void vectorlETH1FgR_Dictionary();
+   static void *new_vectorlETH1FgR(void *p = 0);
+   static void *newArray_vectorlETH1FgR(Long_t size, void *p);
+   static void delete_vectorlETH1FgR(void *p);
+   static void deleteArray_vectorlETH1FgR(void *p);
+   static void destruct_vectorlETH1FgR(void *p);
+
+   // Function generating the singleton type initializer
+   static TGenericClassInfo *GenerateInitInstanceLocal(const vector<TH1F>*)
+   {
+      vector<TH1F> *ptr = 0;
+      static ::TVirtualIsAProxy* isa_proxy = new ::TIsAProxy(typeid(vector<TH1F>),0);
+      static ::ROOT::TGenericClassInfo 
+         instance("vector<TH1F>", -2, "prec_stl/vector", 49,
+                  typeid(vector<TH1F>), DefineBehavior(ptr, ptr),
+                  0, &vectorlETH1FgR_Dictionary, isa_proxy, 0,
+                  sizeof(vector<TH1F>) );
+      instance.SetNew(&new_vectorlETH1FgR);
+      instance.SetNewArray(&newArray_vectorlETH1FgR);
+      instance.SetDelete(&delete_vectorlETH1FgR);
+      instance.SetDeleteArray(&deleteArray_vectorlETH1FgR);
+      instance.SetDestructor(&destruct_vectorlETH1FgR);
+      instance.AdoptCollectionProxyInfo(TCollectionProxyInfo::Generate(TCollectionProxyInfo::Pushback< vector<TH1F> >()));
+      return &instance;
+   }
+   // Static variable to force the class initialization
+   static ::ROOT::TGenericClassInfo *_R__UNIQUE_(Init) = GenerateInitInstanceLocal((const vector<TH1F>*)0x0); R__UseDummy(_R__UNIQUE_(Init));
+
+   // Dictionary for non-ClassDef classes
+   static void vectorlETH1FgR_Dictionary() {
+      ::ROOT::GenerateInitInstanceLocal((const vector<TH1F>*)0x0)->GetClass();
+   }
+
+} // end of namespace ROOT
+
+namespace ROOT {
+   // Wrappers around operator new
+   static void *new_vectorlETH1FgR(void *p) {
+      return  p ? ::new((::ROOT::TOperatorNewHelper*)p) vector<TH1F> : new vector<TH1F>;
+   }
+   static void *newArray_vectorlETH1FgR(Long_t nElements, void *p) {
+      return p ? ::new((::ROOT::TOperatorNewHelper*)p) vector<TH1F>[nElements] : new vector<TH1F>[nElements];
+   }
+   // Wrapper around operator delete
+   static void delete_vectorlETH1FgR(void *p) {
+      delete ((vector<TH1F>*)p);
+   }
+   static void deleteArray_vectorlETH1FgR(void *p) {
+      delete [] ((vector<TH1F>*)p);
+   }
+   static void destruct_vectorlETH1FgR(void *p) {
+      typedef vector<TH1F> current_t;
+      ((current_t*)p)->~current_t();
+   }
+} // end of namespace ROOT for class vector<TH1F>
+
+namespace ROOT {
+   void vectorlEdoublegR_ShowMembers(void *obj, TMemberInspector &R__insp);
+   static void vectorlEdoublegR_Dictionary();
+   static void *new_vectorlEdoublegR(void *p = 0);
+   static void *newArray_vectorlEdoublegR(Long_t size, void *p);
+   static void delete_vectorlEdoublegR(void *p);
+   static void deleteArray_vectorlEdoublegR(void *p);
+   static void destruct_vectorlEdoublegR(void *p);
+
+   // Function generating the singleton type initializer
+   static TGenericClassInfo *GenerateInitInstanceLocal(const vector<double>*)
+   {
+      vector<double> *ptr = 0;
+      static ::TVirtualIsAProxy* isa_proxy = new ::TIsAProxy(typeid(vector<double>),0);
+      static ::ROOT::TGenericClassInfo 
+         instance("vector<double>", -2, "vector.dll", 0,
+                  typeid(vector<double>), DefineBehavior(ptr, ptr),
+                  0, &vectorlEdoublegR_Dictionary, isa_proxy, 0,
+                  sizeof(vector<double>) );
+      instance.SetNew(&new_vectorlEdoublegR);
+      instance.SetNewArray(&newArray_vectorlEdoublegR);
+      instance.SetDelete(&delete_vectorlEdoublegR);
+      instance.SetDeleteArray(&deleteArray_vectorlEdoublegR);
+      instance.SetDestructor(&destruct_vectorlEdoublegR);
+      instance.AdoptCollectionProxyInfo(TCollectionProxyInfo::Generate(TCollectionProxyInfo::Pushback< vector<double> >()));
+      return &instance;
+   }
+   // Static variable to force the class initialization
+   static ::ROOT::TGenericClassInfo *_R__UNIQUE_(Init) = GenerateInitInstanceLocal((const vector<double>*)0x0); R__UseDummy(_R__UNIQUE_(Init));
+
+   // Dictionary for non-ClassDef classes
+   static void vectorlEdoublegR_Dictionary() {
+      ::ROOT::GenerateInitInstanceLocal((const vector<double>*)0x0)->GetClass();
+   }
+
+} // end of namespace ROOT
+
+namespace ROOT {
+   // Wrappers around operator new
+   static void *new_vectorlEdoublegR(void *p) {
+      return  p ? ::new((::ROOT::TOperatorNewHelper*)p) vector<double> : new vector<double>;
+   }
+   static void *newArray_vectorlEdoublegR(Long_t nElements, void *p) {
+      return p ? ::new((::ROOT::TOperatorNewHelper*)p) vector<double>[nElements] : new vector<double>[nElements];
+   }
+   // Wrapper around operator delete
+   static void delete_vectorlEdoublegR(void *p) {
+      delete ((vector<double>*)p);
+   }
+   static void deleteArray_vectorlEdoublegR(void *p) {
+      delete [] ((vector<double>*)p);
+   }
+   static void destruct_vectorlEdoublegR(void *p) {
+      typedef vector<double> current_t;
+      ((current_t*)p)->~current_t();
+   }
+} // end of namespace ROOT for class vector<double>
+
+/********************************************************
+* TTrifoilDataDict.cxx
+* CAUTION: DON'T CHANGE THIS FILE. THIS FILE IS AUTOMATICALLY GENERATED
+*          FROM HEADER FILES LISTED IN G__setup_cpp_environmentXXX().
+*          CHANGE THOSE HEADER FILES AND REGENERATE THIS FILE.
+********************************************************/
+
+#ifdef G__MEMTEST
+#undef malloc
+#undef free
+#endif
+
+#if defined(__GNUC__) && __GNUC__ >= 4 && ((__GNUC_MINOR__ == 2 && __GNUC_PATCHLEVEL__ >= 1) || (__GNUC_MINOR__ >= 3))
+#pragma GCC diagnostic ignored "-Wstrict-aliasing"
+#endif
+
+extern "C" void G__cpp_reset_tagtableTTrifoilDataDict();
+
+extern "C" void G__set_cpp_environmentTTrifoilDataDict() {
+  G__add_compiledheader("TObject.h");
+  G__add_compiledheader("TMemberInspector.h");
+  G__add_compiledheader("TTrifoilData.h");
+  G__cpp_reset_tagtableTTrifoilDataDict();
+}
+#include <new>
+extern "C" int G__cpp_dllrevTTrifoilDataDict() { return(30051515); }
+
+/*********************************************************
+* Member function Interface Method
+*********************************************************/
+
+/* TTrifoilData */
+static int G__TTrifoilDataDict_451_0_1(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+   TTrifoilData* p = NULL;
+   char* gvp = (char*) G__getgvp();
+   int n = G__getaryconstruct();
+   if (n) {
+     if ((gvp == (char*)G__PVOID) || (gvp == 0)) {
+       p = new TTrifoilData[n];
+     } else {
+       p = new((void*) gvp) TTrifoilData[n];
+     }
+   } else {
+     if ((gvp == (char*)G__PVOID) || (gvp == 0)) {
+       p = new TTrifoilData;
+     } else {
+       p = new((void*) gvp) TTrifoilData;
+     }
+   }
+   result7->obj.i = (long) p;
+   result7->ref = (long) p;
+   G__set_tagnum(result7,G__get_linked_tagnum(&G__TTrifoilDataDictLN_TTrifoilData));
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilDataDict_451_0_2(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      ((TTrifoilData*) G__getstructoffset())->Clear();
+      G__setnull(result7);
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilDataDict_451_0_5(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      ((TTrifoilData*) G__getstructoffset())->SetWaveform(*((TH1F*) G__int(libp->para[0])));
+      G__setnull(result7);
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilDataDict_451_0_6(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      ((TTrifoilData*) G__getstructoffset())->SetTimeCFD((Double_t) G__double(libp->para[0]));
+      G__setnull(result7);
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilDataDict_451_0_7(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      ((TTrifoilData*) G__getstructoffset())->SetTimeLED((Double_t) G__double(libp->para[0]));
+      G__setnull(result7);
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilDataDict_451_0_8(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      {
+         TH1F* pobj;
+         TH1F xobj = ((TTrifoilData*) G__getstructoffset())->GetWaveform((int) G__int(libp->para[0]));
+         pobj = new TH1F(xobj);
+         result7->obj.i = (long) ((void*) pobj);
+         result7->ref = result7->obj.i;
+         G__store_tempobject(*result7);
+      }
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilDataDict_451_0_9(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      G__letdouble(result7, 100, (double) ((TTrifoilData*) G__getstructoffset())->GetTimeCFD((int) G__int(libp->para[0])));
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilDataDict_451_0_10(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      G__letdouble(result7, 100, (double) ((TTrifoilData*) G__getstructoffset())->GetTimeLED((int) G__int(libp->para[0])));
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilDataDict_451_0_11(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      G__letint(result7, 104, (long) ((TTrifoilData*) G__getstructoffset())->GetMultiplicity());
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilDataDict_451_0_12(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      ((TTrifoilData*) G__getstructoffset())->ReadFSPCFile(*((string*) G__int(libp->para[0])));
+      G__setnull(result7);
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilDataDict_451_0_13(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      ((TTrifoilData*) G__getstructoffset())->FillData((TTigEventFragment*) G__int(libp->para[0]));
+      G__setnull(result7);
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilDataDict_451_0_14(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      G__letint(result7, 85, (long) TTrifoilData::Class());
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilDataDict_451_0_15(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      G__letint(result7, 67, (long) TTrifoilData::Class_Name());
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilDataDict_451_0_16(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      G__letint(result7, 115, (long) TTrifoilData::Class_Version());
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilDataDict_451_0_17(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      TTrifoilData::Dictionary();
+      G__setnull(result7);
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilDataDict_451_0_21(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      ((TTrifoilData*) G__getstructoffset())->StreamerNVirtual(*(TBuffer*) libp->para[0].ref);
+      G__setnull(result7);
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilDataDict_451_0_22(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      G__letint(result7, 67, (long) TTrifoilData::DeclFileName());
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilDataDict_451_0_23(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      G__letint(result7, 105, (long) TTrifoilData::ImplFileLine());
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilDataDict_451_0_24(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      G__letint(result7, 67, (long) TTrifoilData::ImplFileName());
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilDataDict_451_0_25(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      G__letint(result7, 105, (long) TTrifoilData::DeclFileLine());
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+// automatic copy constructor
+static int G__TTrifoilDataDict_451_0_26(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+
+{
+   TTrifoilData* p;
+   void* tmp = (void*) G__int(libp->para[0]);
+   p = new TTrifoilData(*(TTrifoilData*) tmp);
+   result7->obj.i = (long) p;
+   result7->ref = (long) p;
+   G__set_tagnum(result7,G__get_linked_tagnum(&G__TTrifoilDataDictLN_TTrifoilData));
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+// automatic destructor
+typedef TTrifoilData G__TTTrifoilData;
+static int G__TTrifoilDataDict_451_0_27(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+   char* gvp = (char*) G__getgvp();
+   long soff = G__getstructoffset();
+   int n = G__getaryconstruct();
+   //
+   //has_a_delete: 1
+   //has_own_delete1arg: 0
+   //has_own_delete2arg: 0
+   //
+   if (!soff) {
+     return(1);
+   }
+   if (n) {
+     if (gvp == (char*)G__PVOID) {
+       delete[] (TTrifoilData*) soff;
+     } else {
+       G__setgvp((long) G__PVOID);
+       for (int i = n - 1; i >= 0; --i) {
+         ((TTrifoilData*) (soff+(sizeof(TTrifoilData)*i)))->~G__TTTrifoilData();
+       }
+       G__setgvp((long)gvp);
+     }
+   } else {
+     if (gvp == (char*)G__PVOID) {
+       delete (TTrifoilData*) soff;
+     } else {
+       G__setgvp((long) G__PVOID);
+       ((TTrifoilData*) (soff))->~G__TTTrifoilData();
+       G__setgvp((long)gvp);
+     }
+   }
+   G__setnull(result7);
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+// automatic assignment operator
+static int G__TTrifoilDataDict_451_0_28(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+   TTrifoilData* dest = (TTrifoilData*) G__getstructoffset();
+   *dest = *(TTrifoilData*) libp->para[0].ref;
+   const TTrifoilData& obj = *dest;
+   result7->ref = (long) (&obj);
+   result7->obj.i = (long) (&obj);
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+
+/* Setting up global function */
+
+/*********************************************************
+* Member function Stub
+*********************************************************/
+
+/* TTrifoilData */
+
+/*********************************************************
+* Global function Stub
+*********************************************************/
+
+/*********************************************************
+* Get size of pointer to member function
+*********************************************************/
+class G__Sizep2memfuncTTrifoilDataDict {
+ public:
+  G__Sizep2memfuncTTrifoilDataDict(): p(&G__Sizep2memfuncTTrifoilDataDict::sizep2memfunc) {}
+    size_t sizep2memfunc() { return(sizeof(p)); }
+  private:
+    size_t (G__Sizep2memfuncTTrifoilDataDict::*p)();
+};
+
+size_t G__get_sizep2memfuncTTrifoilDataDict()
+{
+  G__Sizep2memfuncTTrifoilDataDict a;
+  G__setsizep2memfunc((int)a.sizep2memfunc());
+  return((size_t)a.sizep2memfunc());
+}
+
+
+/*********************************************************
+* virtual base class offset calculation interface
+*********************************************************/
+
+   /* Setting up class inheritance */
+
+/*********************************************************
+* Inheritance information setup/
+*********************************************************/
+extern "C" void G__cpp_setup_inheritanceTTrifoilDataDict() {
+
+   /* Setting up class inheritance */
+   if(0==G__getnumbaseclass(G__get_linked_tagnum(&G__TTrifoilDataDictLN_TTrifoilData))) {
+     TTrifoilData *G__Lderived;
+     G__Lderived=(TTrifoilData*)0x1000;
+     {
+       TObject *G__Lpbase=(TObject*)G__Lderived;
+       G__inheritance_setup(G__get_linked_tagnum(&G__TTrifoilDataDictLN_TTrifoilData),G__get_linked_tagnum(&G__TTrifoilDataDictLN_TObject),(long)G__Lpbase-(long)G__Lderived,1,1);
+     }
+   }
+}
+
+/*********************************************************
+* typedef information setup/
+*********************************************************/
+extern "C" void G__cpp_setup_typetableTTrifoilDataDict() {
+
+   /* Setting up typedef entry */
+   G__search_typename2("Double_t",100,-1,0,-1);
+   G__setnewtype(-1,"Double 8 bytes",0);
+   G__search_typename2("Version_t",115,-1,0,-1);
+   G__setnewtype(-1,"Class version identifier (short)",0);
+   G__search_typename2("vector<ROOT::TSchemaHelper>",117,G__get_linked_tagnum(&G__TTrifoilDataDictLN_vectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("reverse_iterator<const_iterator>",117,G__get_linked_tagnum(&G__TTrifoilDataDictLN_reverse_iteratorlEvectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgRcLcLiteratorgR),0,G__get_linked_tagnum(&G__TTrifoilDataDictLN_vectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgR));
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("reverse_iterator<iterator>",117,G__get_linked_tagnum(&G__TTrifoilDataDictLN_reverse_iteratorlEvectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgRcLcLiteratorgR),0,G__get_linked_tagnum(&G__TTrifoilDataDictLN_vectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgR));
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("vector<TVirtualArray*>",117,G__get_linked_tagnum(&G__TTrifoilDataDictLN_vectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("reverse_iterator<const_iterator>",117,G__get_linked_tagnum(&G__TTrifoilDataDictLN_reverse_iteratorlEvectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgRcLcLiteratorgR),0,G__get_linked_tagnum(&G__TTrifoilDataDictLN_vectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgR));
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("reverse_iterator<iterator>",117,G__get_linked_tagnum(&G__TTrifoilDataDictLN_reverse_iteratorlEvectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgRcLcLiteratorgR),0,G__get_linked_tagnum(&G__TTrifoilDataDictLN_vectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgR));
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TVectorT<Float_t>",117,G__get_linked_tagnum(&G__TTrifoilDataDictLN_TVectorTlEfloatgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TVectorT<Double_t>",117,G__get_linked_tagnum(&G__TTrifoilDataDictLN_TVectorTlEdoublegR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("vector<int>",117,G__get_linked_tagnum(&G__TTrifoilDataDictLN_vectorlEintcOallocatorlEintgRsPgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("reverse_iterator<const_iterator>",117,G__get_linked_tagnum(&G__TTrifoilDataDictLN_reverse_iteratorlEvectorlEintcOallocatorlEintgRsPgRcLcLiteratorgR),0,G__get_linked_tagnum(&G__TTrifoilDataDictLN_vectorlEintcOallocatorlEintgRsPgR));
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("reverse_iterator<iterator>",117,G__get_linked_tagnum(&G__TTrifoilDataDictLN_reverse_iteratorlEvectorlEintcOallocatorlEintgRsPgRcLcLiteratorgR),0,G__get_linked_tagnum(&G__TTrifoilDataDictLN_vectorlEintcOallocatorlEintgRsPgR));
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("vector<TH1F>",117,G__get_linked_tagnum(&G__TTrifoilDataDictLN_vectorlETH1FcOallocatorlETH1FgRsPgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("reverse_iterator<const_iterator>",117,G__get_linked_tagnum(&G__TTrifoilDataDictLN_reverse_iteratorlEvectorlETH1FcOallocatorlETH1FgRsPgRcLcLiteratorgR),0,G__get_linked_tagnum(&G__TTrifoilDataDictLN_vectorlETH1FcOallocatorlETH1FgRsPgR));
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("reverse_iterator<iterator>",117,G__get_linked_tagnum(&G__TTrifoilDataDictLN_reverse_iteratorlEvectorlETH1FcOallocatorlETH1FgRsPgRcLcLiteratorgR),0,G__get_linked_tagnum(&G__TTrifoilDataDictLN_vectorlETH1FcOallocatorlETH1FgRsPgR));
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("vector<Double_t>",117,G__get_linked_tagnum(&G__TTrifoilDataDictLN_vectorlEdoublecOallocatorlEdoublegRsPgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+}
+
+/*********************************************************
+* Data Member information setup/
+*********************************************************/
+
+   /* Setting up class,struct,union tag member variable */
+
+   /* TTrifoilData */
+static void G__setup_memvarTTrifoilData(void) {
+   G__tag_memvar_setup(G__get_linked_tagnum(&G__TTrifoilDataDictLN_TTrifoilData));
+   { TTrifoilData *p; p=(TTrifoilData*)0x1000; if (p) { }
+   G__memvar_setup((void*)0,117,0,0,G__get_linked_tagnum(&G__TTrifoilDataDictLN_vectorlETH1FcOallocatorlETH1FgRsPgR),G__defined_typename("vector<TH1F>"),-1,4,"fTrifoil_Waveform=",0,(char*)NULL);
+   G__memvar_setup((void*)0,117,0,0,G__get_linked_tagnum(&G__TTrifoilDataDictLN_vectorlEdoublecOallocatorlEdoublegRsPgR),G__defined_typename("vector<Double_t>"),-1,4,"fTrifoil_TimeCFD=",0,(char*)NULL);
+   G__memvar_setup((void*)0,117,0,0,G__get_linked_tagnum(&G__TTrifoilDataDictLN_vectorlEdoublecOallocatorlEdoublegRsPgR),G__defined_typename("vector<Double_t>"),-1,4,"fTrifoil_TimeLED=",0,(char*)NULL);
+   G__memvar_setup((void*)0,105,0,0,-1,-1,-1,4,"m_FSPC_Channel=",0,"!");
+   G__memvar_setup((void*)0,85,0,0,G__get_linked_tagnum(&G__TTrifoilDataDictLN_TClass),-1,-2,4,"fgIsA=",0,(char*)NULL);
+   }
+   G__tag_memvar_reset();
+}
+
+extern "C" void G__cpp_setup_memvarTTrifoilDataDict() {
+}
+/***********************************************************
+************************************************************
+************************************************************
+************************************************************
+************************************************************
+************************************************************
+************************************************************
+***********************************************************/
+
+/*********************************************************
+* Member function information setup for each class
+*********************************************************/
+static void G__setup_memfuncTTrifoilData(void) {
+   /* TTrifoilData */
+   G__tag_memfunc_setup(G__get_linked_tagnum(&G__TTrifoilDataDictLN_TTrifoilData));
+   G__memfunc_setup("TTrifoilData",1191,G__TTrifoilDataDict_451_0_1, 105, G__get_linked_tagnum(&G__TTrifoilDataDictLN_TTrifoilData), -1, 0, 0, 1, 1, 0, "", (char*)NULL, (void*) NULL, 0);
+   G__memfunc_setup("Clear",487,G__TTrifoilDataDict_451_0_2, 121, -1, -1, 0, 0, 1, 1, 0, "", (char*)NULL, (void*) NULL, 0);
+   G__memfunc_setup("Clear",487,(G__InterfaceMethod) NULL,121, -1, -1, 0, 1, 1, 1, 0, "C - 'Option_t' 10 - -", (char*)NULL, (void*) NULL, 1);
+   G__memfunc_setup("Dump",406,(G__InterfaceMethod) NULL,121, -1, -1, 0, 0, 1, 1, 8, "", (char*)NULL, (void*) NULL, 1);
+   G__memfunc_setup("SetWaveform",1139,G__TTrifoilDataDict_451_0_5, 121, -1, -1, 0, 1, 1, 1, 0, "u 'TH1F' - 0 - Waveform", (char*)NULL, (void*) NULL, 0);
+   G__memfunc_setup("SetTimeCFD",904,G__TTrifoilDataDict_451_0_6, 121, -1, -1, 0, 1, 1, 1, 0, "d - 'Double_t' 0 - TimeCFD", (char*)NULL, (void*) NULL, 0);
+   G__memfunc_setup("SetTimeLED",912,G__TTrifoilDataDict_451_0_7, 121, -1, -1, 0, 1, 1, 1, 0, "d - 'Double_t' 0 - TimeLED", (char*)NULL, (void*) NULL, 0);
+   G__memfunc_setup("GetWaveform",1127,G__TTrifoilDataDict_451_0_8, 117, G__get_linked_tagnum(&G__TTrifoilDataDictLN_TH1F), -1, 0, 1, 1, 1, 0, "i - - 0 - i", (char*)NULL, (void*) NULL, 0);
+   G__memfunc_setup("GetTimeCFD",892,G__TTrifoilDataDict_451_0_9, 100, -1, G__defined_typename("Double_t"), 0, 1, 1, 1, 0, "i - - 0 - i", (char*)NULL, (void*) NULL, 0);
+   G__memfunc_setup("GetTimeLED",900,G__TTrifoilDataDict_451_0_10, 100, -1, G__defined_typename("Double_t"), 0, 1, 1, 1, 0, "i - - 0 - i", (char*)NULL, (void*) NULL, 0);
+   G__memfunc_setup("GetMultiplicity",1577,G__TTrifoilDataDict_451_0_11, 104, -1, -1, 0, 0, 1, 1, 0, "", (char*)NULL, (void*) NULL, 0);
+   G__memfunc_setup("ReadFSPCFile",1064,G__TTrifoilDataDict_451_0_12, 121, -1, -1, 0, 1, 1, 1, 0, "u 'string' - 0 - FSPCPath", "!", (void*) NULL, 0);
+   G__memfunc_setup("FillData",769,G__TTrifoilDataDict_451_0_13, 121, -1, -1, 0, 1, 1, 1, 0, "U 'TTigEventFragment' - 0 - TigEvent", "!", (void*) NULL, 0);
+   G__memfunc_setup("Class",502,G__TTrifoilDataDict_451_0_14, 85, G__get_linked_tagnum(&G__TTrifoilDataDictLN_TClass), -1, 0, 0, 3, 1, 0, "", (char*)NULL, (void*) G__func2void( (TClass* (*)())(&TTrifoilData::Class) ), 0);
+   G__memfunc_setup("Class_Name",982,G__TTrifoilDataDict_451_0_15, 67, -1, -1, 0, 0, 3, 1, 1, "", (char*)NULL, (void*) G__func2void( (const char* (*)())(&TTrifoilData::Class_Name) ), 0);
+   G__memfunc_setup("Class_Version",1339,G__TTrifoilDataDict_451_0_16, 115, -1, G__defined_typename("Version_t"), 0, 0, 3, 1, 0, "", (char*)NULL, (void*) G__func2void( (Version_t (*)())(&TTrifoilData::Class_Version) ), 0);
+   G__memfunc_setup("Dictionary",1046,G__TTrifoilDataDict_451_0_17, 121, -1, -1, 0, 0, 3, 1, 0, "", (char*)NULL, (void*) G__func2void( (void (*)())(&TTrifoilData::Dictionary) ), 0);
+   G__memfunc_setup("IsA",253,(G__InterfaceMethod) NULL,85, G__get_linked_tagnum(&G__TTrifoilDataDictLN_TClass), -1, 0, 0, 1, 1, 8, "", (char*)NULL, (void*) NULL, 1);
+   G__memfunc_setup("ShowMembers",1132,(G__InterfaceMethod) NULL,121, -1, -1, 0, 1, 1, 1, 0, "u 'TMemberInspector' - 1 - insp", (char*)NULL, (void*) NULL, 1);
+   G__memfunc_setup("Streamer",835,(G__InterfaceMethod) NULL,121, -1, -1, 0, 1, 1, 1, 0, "u 'TBuffer' - 1 - b", (char*)NULL, (void*) NULL, 1);
+   G__memfunc_setup("StreamerNVirtual",1656,G__TTrifoilDataDict_451_0_21, 121, -1, -1, 0, 1, 1, 1, 0, "u 'TBuffer' - 1 - b", (char*)NULL, (void*) NULL, 0);
+   G__memfunc_setup("DeclFileName",1145,G__TTrifoilDataDict_451_0_22, 67, -1, -1, 0, 0, 3, 1, 1, "", (char*)NULL, (void*) G__func2void( (const char* (*)())(&TTrifoilData::DeclFileName) ), 0);
+   G__memfunc_setup("ImplFileLine",1178,G__TTrifoilDataDict_451_0_23, 105, -1, -1, 0, 0, 3, 1, 0, "", (char*)NULL, (void*) G__func2void( (int (*)())(&TTrifoilData::ImplFileLine) ), 0);
+   G__memfunc_setup("ImplFileName",1171,G__TTrifoilDataDict_451_0_24, 67, -1, -1, 0, 0, 3, 1, 1, "", (char*)NULL, (void*) G__func2void( (const char* (*)())(&TTrifoilData::ImplFileName) ), 0);
+   G__memfunc_setup("DeclFileLine",1152,G__TTrifoilDataDict_451_0_25, 105, -1, -1, 0, 0, 3, 1, 0, "", (char*)NULL, (void*) G__func2void( (int (*)())(&TTrifoilData::DeclFileLine) ), 0);
+   // automatic copy constructor
+   G__memfunc_setup("TTrifoilData", 1191, G__TTrifoilDataDict_451_0_26, (int) ('i'), G__get_linked_tagnum(&G__TTrifoilDataDictLN_TTrifoilData), -1, 0, 1, 1, 1, 0, "u 'TTrifoilData' - 11 - -", (char*) NULL, (void*) NULL, 0);
+   // automatic destructor
+   G__memfunc_setup("~TTrifoilData", 1317, G__TTrifoilDataDict_451_0_27, (int) ('y'), -1, -1, 0, 0, 1, 1, 0, "", (char*) NULL, (void*) NULL, 1);
+   // automatic assignment operator
+   G__memfunc_setup("operator=", 937, G__TTrifoilDataDict_451_0_28, (int) ('u'), G__get_linked_tagnum(&G__TTrifoilDataDictLN_TTrifoilData), -1, 1, 1, 1, 1, 0, "u 'TTrifoilData' - 11 - -", (char*) NULL, (void*) NULL, 0);
+   G__tag_memfunc_reset();
+}
+
+
+/*********************************************************
+* Member function information setup
+*********************************************************/
+extern "C" void G__cpp_setup_memfuncTTrifoilDataDict() {
+}
+
+/*********************************************************
+* Global variable information setup for each class
+*********************************************************/
+static void G__cpp_setup_global0() {
+
+   /* Setting up global variables */
+   G__resetplocal();
+
+}
+
+static void G__cpp_setup_global1() {
+}
+
+static void G__cpp_setup_global2() {
+
+   G__resetglobalenv();
+}
+extern "C" void G__cpp_setup_globalTTrifoilDataDict() {
+  G__cpp_setup_global0();
+  G__cpp_setup_global1();
+  G__cpp_setup_global2();
+}
+
+/*********************************************************
+* Global function information setup for each class
+*********************************************************/
+static void G__cpp_setup_func0() {
+   G__lastifuncposition();
+
+}
+
+static void G__cpp_setup_func1() {
+}
+
+static void G__cpp_setup_func2() {
+}
+
+static void G__cpp_setup_func3() {
+}
+
+static void G__cpp_setup_func4() {
+}
+
+static void G__cpp_setup_func5() {
+}
+
+static void G__cpp_setup_func6() {
+}
+
+static void G__cpp_setup_func7() {
+}
+
+static void G__cpp_setup_func8() {
+}
+
+static void G__cpp_setup_func9() {
+}
+
+static void G__cpp_setup_func10() {
+}
+
+static void G__cpp_setup_func11() {
+}
+
+static void G__cpp_setup_func12() {
+}
+
+static void G__cpp_setup_func13() {
+}
+
+static void G__cpp_setup_func14() {
+}
+
+static void G__cpp_setup_func15() {
+}
+
+static void G__cpp_setup_func16() {
+}
+
+static void G__cpp_setup_func17() {
+}
+
+static void G__cpp_setup_func18() {
+
+   G__resetifuncposition();
+}
+
+extern "C" void G__cpp_setup_funcTTrifoilDataDict() {
+  G__cpp_setup_func0();
+  G__cpp_setup_func1();
+  G__cpp_setup_func2();
+  G__cpp_setup_func3();
+  G__cpp_setup_func4();
+  G__cpp_setup_func5();
+  G__cpp_setup_func6();
+  G__cpp_setup_func7();
+  G__cpp_setup_func8();
+  G__cpp_setup_func9();
+  G__cpp_setup_func10();
+  G__cpp_setup_func11();
+  G__cpp_setup_func12();
+  G__cpp_setup_func13();
+  G__cpp_setup_func14();
+  G__cpp_setup_func15();
+  G__cpp_setup_func16();
+  G__cpp_setup_func17();
+  G__cpp_setup_func18();
+}
+
+/*********************************************************
+* Class,struct,union,enum tag information setup
+*********************************************************/
+/* Setup class/struct taginfo */
+G__linked_taginfo G__TTrifoilDataDictLN_TClass = { "TClass" , 99 , -1 };
+G__linked_taginfo G__TTrifoilDataDictLN_TBuffer = { "TBuffer" , 99 , -1 };
+G__linked_taginfo G__TTrifoilDataDictLN_TMemberInspector = { "TMemberInspector" , 99 , -1 };
+G__linked_taginfo G__TTrifoilDataDictLN_TObject = { "TObject" , 99 , -1 };
+G__linked_taginfo G__TTrifoilDataDictLN_vectorlEdoublecOallocatorlEdoublegRsPgR = { "vector<double,allocator<double> >" , 99 , -1 };
+G__linked_taginfo G__TTrifoilDataDictLN_string = { "string" , 99 , -1 };
+G__linked_taginfo G__TTrifoilDataDictLN_vectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgR = { "vector<ROOT::TSchemaHelper,allocator<ROOT::TSchemaHelper> >" , 99 , -1 };
+G__linked_taginfo G__TTrifoilDataDictLN_reverse_iteratorlEvectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgRcLcLiteratorgR = { "reverse_iterator<vector<ROOT::TSchemaHelper,allocator<ROOT::TSchemaHelper> >::iterator>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilDataDictLN_vectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgR = { "vector<TVirtualArray*,allocator<TVirtualArray*> >" , 99 , -1 };
+G__linked_taginfo G__TTrifoilDataDictLN_reverse_iteratorlEvectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgRcLcLiteratorgR = { "reverse_iterator<vector<TVirtualArray*,allocator<TVirtualArray*> >::iterator>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilDataDictLN_TVectorTlEfloatgR = { "TVectorT<float>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilDataDictLN_TVectorTlEdoublegR = { "TVectorT<double>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilDataDictLN_TH1F = { "TH1F" , 99 , -1 };
+G__linked_taginfo G__TTrifoilDataDictLN_TTigEventFragment = { "TTigEventFragment" , 99 , -1 };
+G__linked_taginfo G__TTrifoilDataDictLN_vectorlEintcOallocatorlEintgRsPgR = { "vector<int,allocator<int> >" , 99 , -1 };
+G__linked_taginfo G__TTrifoilDataDictLN_reverse_iteratorlEvectorlEintcOallocatorlEintgRsPgRcLcLiteratorgR = { "reverse_iterator<vector<int,allocator<int> >::iterator>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilDataDictLN_vectorlETH1FcOallocatorlETH1FgRsPgR = { "vector<TH1F,allocator<TH1F> >" , 99 , -1 };
+G__linked_taginfo G__TTrifoilDataDictLN_reverse_iteratorlEvectorlETH1FcOallocatorlETH1FgRsPgRcLcLiteratorgR = { "reverse_iterator<vector<TH1F,allocator<TH1F> >::iterator>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilDataDictLN_TTrifoilData = { "TTrifoilData" , 99 , -1 };
+
+/* Reset class/struct taginfo */
+extern "C" void G__cpp_reset_tagtableTTrifoilDataDict() {
+  G__TTrifoilDataDictLN_TClass.tagnum = -1 ;
+  G__TTrifoilDataDictLN_TBuffer.tagnum = -1 ;
+  G__TTrifoilDataDictLN_TMemberInspector.tagnum = -1 ;
+  G__TTrifoilDataDictLN_TObject.tagnum = -1 ;
+  G__TTrifoilDataDictLN_vectorlEdoublecOallocatorlEdoublegRsPgR.tagnum = -1 ;
+  G__TTrifoilDataDictLN_string.tagnum = -1 ;
+  G__TTrifoilDataDictLN_vectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgR.tagnum = -1 ;
+  G__TTrifoilDataDictLN_reverse_iteratorlEvectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgRcLcLiteratorgR.tagnum = -1 ;
+  G__TTrifoilDataDictLN_vectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgR.tagnum = -1 ;
+  G__TTrifoilDataDictLN_reverse_iteratorlEvectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgRcLcLiteratorgR.tagnum = -1 ;
+  G__TTrifoilDataDictLN_TVectorTlEfloatgR.tagnum = -1 ;
+  G__TTrifoilDataDictLN_TVectorTlEdoublegR.tagnum = -1 ;
+  G__TTrifoilDataDictLN_TH1F.tagnum = -1 ;
+  G__TTrifoilDataDictLN_TTigEventFragment.tagnum = -1 ;
+  G__TTrifoilDataDictLN_vectorlEintcOallocatorlEintgRsPgR.tagnum = -1 ;
+  G__TTrifoilDataDictLN_reverse_iteratorlEvectorlEintcOallocatorlEintgRsPgRcLcLiteratorgR.tagnum = -1 ;
+  G__TTrifoilDataDictLN_vectorlETH1FcOallocatorlETH1FgRsPgR.tagnum = -1 ;
+  G__TTrifoilDataDictLN_reverse_iteratorlEvectorlETH1FcOallocatorlETH1FgRsPgRcLcLiteratorgR.tagnum = -1 ;
+  G__TTrifoilDataDictLN_TTrifoilData.tagnum = -1 ;
+}
+
+
+extern "C" void G__cpp_setup_tagtableTTrifoilDataDict() {
+
+   /* Setting up class,struct,union tag entry */
+   G__get_linked_tagnum_fwd(&G__TTrifoilDataDictLN_TClass);
+   G__get_linked_tagnum_fwd(&G__TTrifoilDataDictLN_TBuffer);
+   G__get_linked_tagnum_fwd(&G__TTrifoilDataDictLN_TMemberInspector);
+   G__get_linked_tagnum_fwd(&G__TTrifoilDataDictLN_TObject);
+   G__get_linked_tagnum_fwd(&G__TTrifoilDataDictLN_vectorlEdoublecOallocatorlEdoublegRsPgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilDataDictLN_string);
+   G__get_linked_tagnum_fwd(&G__TTrifoilDataDictLN_vectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilDataDictLN_reverse_iteratorlEvectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgRcLcLiteratorgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilDataDictLN_vectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilDataDictLN_reverse_iteratorlEvectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgRcLcLiteratorgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilDataDictLN_TVectorTlEfloatgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilDataDictLN_TVectorTlEdoublegR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilDataDictLN_TH1F);
+   G__get_linked_tagnum_fwd(&G__TTrifoilDataDictLN_TTigEventFragment);
+   G__get_linked_tagnum_fwd(&G__TTrifoilDataDictLN_vectorlEintcOallocatorlEintgRsPgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilDataDictLN_reverse_iteratorlEvectorlEintcOallocatorlEintgRsPgRcLcLiteratorgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilDataDictLN_vectorlETH1FcOallocatorlETH1FgRsPgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilDataDictLN_reverse_iteratorlEvectorlETH1FcOallocatorlETH1FgRsPgRcLcLiteratorgR);
+   G__tagtable_setup(G__get_linked_tagnum_fwd(&G__TTrifoilDataDictLN_TTrifoilData),sizeof(TTrifoilData),-1,29952,"TrifoilData structure",G__setup_memvarTTrifoilData,G__setup_memfuncTTrifoilData);
+}
+extern "C" void G__cpp_setupTTrifoilDataDict(void) {
+  G__check_setup_version(30051515,"G__cpp_setupTTrifoilDataDict()");
+  G__set_cpp_environmentTTrifoilDataDict();
+  G__cpp_setup_tagtableTTrifoilDataDict();
+
+  G__cpp_setup_inheritanceTTrifoilDataDict();
+
+  G__cpp_setup_typetableTTrifoilDataDict();
+
+  G__cpp_setup_memvarTTrifoilDataDict();
+
+  G__cpp_setup_memfuncTTrifoilDataDict();
+  G__cpp_setup_globalTTrifoilDataDict();
+  G__cpp_setup_funcTTrifoilDataDict();
+
+   if(0==G__getsizep2memfunc()) G__get_sizep2memfuncTTrifoilDataDict();
+  return;
+}
+class G__cpp_setup_initTTrifoilDataDict {
+  public:
+    G__cpp_setup_initTTrifoilDataDict() { G__add_setup_func("TTrifoilDataDict",(G__incsetup)(&G__cpp_setupTTrifoilDataDict)); G__call_setup_funcs(); }
+   ~G__cpp_setup_initTTrifoilDataDict() { G__remove_setup_func("TTrifoilDataDict"); }
+};
+G__cpp_setup_initTTrifoilDataDict G__cpp_setup_initializerTTrifoilDataDict;
+
diff --git a/NPLib/Trifoil/TTrifoilDataDict.h b/NPLib/Trifoil/TTrifoilDataDict.h
new file mode 100644
index 000000000..b1be43aa0
--- /dev/null
+++ b/NPLib/Trifoil/TTrifoilDataDict.h
@@ -0,0 +1,62 @@
+/********************************************************************
+* TTrifoilDataDict.h
+* CAUTION: DON'T CHANGE THIS FILE. THIS FILE IS AUTOMATICALLY GENERATED
+*          FROM HEADER FILES LISTED IN G__setup_cpp_environmentXXX().
+*          CHANGE THOSE HEADER FILES AND REGENERATE THIS FILE.
+********************************************************************/
+#ifdef __CINT__
+#error TTrifoilDataDict.h/C is only for compilation. Abort cint.
+#endif
+#include <stddef.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <math.h>
+#include <string.h>
+#define G__ANSIHEADER
+#define G__DICTIONARY
+#define G__PRIVATE_GVALUE
+#include "G__ci.h"
+#include "FastAllocString.h"
+extern "C" {
+extern void G__cpp_setup_tagtableTTrifoilDataDict();
+extern void G__cpp_setup_inheritanceTTrifoilDataDict();
+extern void G__cpp_setup_typetableTTrifoilDataDict();
+extern void G__cpp_setup_memvarTTrifoilDataDict();
+extern void G__cpp_setup_globalTTrifoilDataDict();
+extern void G__cpp_setup_memfuncTTrifoilDataDict();
+extern void G__cpp_setup_funcTTrifoilDataDict();
+extern void G__set_cpp_environmentTTrifoilDataDict();
+}
+
+
+#include "TObject.h"
+#include "TMemberInspector.h"
+#include "TTrifoilData.h"
+#include <algorithm>
+namespace std { }
+using namespace std;
+
+#ifndef G__MEMFUNCBODY
+#endif
+
+extern G__linked_taginfo G__TTrifoilDataDictLN_TClass;
+extern G__linked_taginfo G__TTrifoilDataDictLN_TBuffer;
+extern G__linked_taginfo G__TTrifoilDataDictLN_TMemberInspector;
+extern G__linked_taginfo G__TTrifoilDataDictLN_TObject;
+extern G__linked_taginfo G__TTrifoilDataDictLN_vectorlEdoublecOallocatorlEdoublegRsPgR;
+extern G__linked_taginfo G__TTrifoilDataDictLN_string;
+extern G__linked_taginfo G__TTrifoilDataDictLN_vectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgR;
+extern G__linked_taginfo G__TTrifoilDataDictLN_reverse_iteratorlEvectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgRcLcLiteratorgR;
+extern G__linked_taginfo G__TTrifoilDataDictLN_vectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgR;
+extern G__linked_taginfo G__TTrifoilDataDictLN_reverse_iteratorlEvectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgRcLcLiteratorgR;
+extern G__linked_taginfo G__TTrifoilDataDictLN_TVectorTlEfloatgR;
+extern G__linked_taginfo G__TTrifoilDataDictLN_TVectorTlEdoublegR;
+extern G__linked_taginfo G__TTrifoilDataDictLN_TH1F;
+extern G__linked_taginfo G__TTrifoilDataDictLN_TTigEventFragment;
+extern G__linked_taginfo G__TTrifoilDataDictLN_vectorlEintcOallocatorlEintgRsPgR;
+extern G__linked_taginfo G__TTrifoilDataDictLN_reverse_iteratorlEvectorlEintcOallocatorlEintgRsPgRcLcLiteratorgR;
+extern G__linked_taginfo G__TTrifoilDataDictLN_vectorlETH1FcOallocatorlETH1FgRsPgR;
+extern G__linked_taginfo G__TTrifoilDataDictLN_reverse_iteratorlEvectorlETH1FcOallocatorlETH1FgRsPgRcLcLiteratorgR;
+extern G__linked_taginfo G__TTrifoilDataDictLN_TTrifoilData;
+
+/* STUB derived class for protected member access */
diff --git a/NPLib/Trifoil/TTrifoilPhysics.cxx b/NPLib/Trifoil/TTrifoilPhysics.cxx
new file mode 100644
index 000000000..970622394
--- /dev/null
+++ b/NPLib/Trifoil/TTrifoilPhysics.cxx
@@ -0,0 +1,105 @@
+/*****************************************************************************
+ * Copyright (C) 2009-2010   this file is part of the NPTool Project         *
+ *                                                                           *
+ * For the licensing terms see $NPTOOL/Licence/NPTool_Licence                *
+ * For the list of contributors see $NPTOOL/Licence/Contributors             *
+ *****************************************************************************/
+
+/*****************************************************************************
+ * Original Author: Adrien MATTA  contact address: matta@ipno.in2p3.fr       *
+ *                                                                           *
+ * Creation Date  : November 2012                                            *
+ * Last update    :                                                          *
+ *---------------------------------------------------------------------------*
+ * Decription:                                                               *
+ *  This class hold Trifoil treated data                                     *
+ *                                                                           *
+ *---------------------------------------------------------------------------*
+ * Comment:                                                                  *
+ *                                                                           *
+ *****************************************************************************/
+#include "TTrifoilPhysics.h"
+
+//   STL
+#include <sstream>
+#include <iostream>
+#include <cmath>
+#include <stdlib.h>
+#include <limits>
+
+//   NPL
+#include "RootInput.h"
+#include "RootOutput.h"
+#include "TAsciiFile.h"
+//   ROOT
+#include "TChain.h"
+///////////////////////////////////////////////////////////////////////////
+
+ClassImp(TTrifoilPhysics)
+///////////////////////////////////////////////////////////////////////////
+TTrifoilPhysics::TTrifoilPhysics() 
+   { 
+      
+   }
+      
+///////////////////////////////////////////////////////////////////////////
+void TTrifoilPhysics::BuildSimplePhysicalEvent()
+   { 
+     BuildPhysicalEvent();
+   }
+   
+///////////////////////////////////////////////////////////////////////////
+   
+void TTrifoilPhysics::BuildPhysicalEvent()
+   { 
+  
+   }
+
+
+///////////////////////////////////////////////////////////////////////////
+void TTrifoilPhysics::Clear(){
+  EventType.clear() ;
+  Time.clear() ;
+  m_EventData->Clear();
+
+}
+///////////////////////////////////////////////////////////////////////////
+
+////   Innherited from VDetector Class   ////            
+            
+///////////////////////////////////////////////////////////////////////////
+void TTrifoilPhysics::ReadConfiguration(string Path)  
+{
+ /*Trifoil has only one key word, so do nothing*/
+  Path.clear();
+}
+
+///////////////////////////////////////////////////////////////////////////
+void TTrifoilPhysics::AddParameterToCalibrationManager()   
+   {
+   
+   }
+
+///////////////////////////////////////////////////////////////////////////
+void TTrifoilPhysics::InitializeRootInputRaw() 
+   {
+      TChain* inputChain = RootInput::getInstance()->GetChain()   ;
+      inputChain->SetBranchStatus( "Trifoil" , true )               ;
+      inputChain->SetBranchStatus( "fTrifoil_*" , true )               ;
+      inputChain->SetBranchAddress( "Trifoil" , &m_EventData )      ;
+   }
+   
+///////////////////////////////////////////////////////////////////////////
+void TTrifoilPhysics::InitializeRootInputPhysics() 
+   {
+      TChain* inputChain = RootInput::getInstance()->GetChain();
+      inputChain->SetBranchStatus( "EventType" , true );
+      inputChain->SetBranchStatus( "Time" , true );
+   }
+
+///////////////////////////////////////////////////////////////////////////
+void TTrifoilPhysics::InitializeRootOutput()    
+   {
+      TTree* outputTree = RootOutput::getInstance()->GetTree();
+      outputTree->Branch( "Trifoil" , "TTrifoilPhysics" , &m_EventPhysics );
+   }
\ No newline at end of file
diff --git a/NPLib/Trifoil/TTrifoilPhysics.h b/NPLib/Trifoil/TTrifoilPhysics.h
new file mode 100644
index 000000000..be72c6ee0
--- /dev/null
+++ b/NPLib/Trifoil/TTrifoilPhysics.h
@@ -0,0 +1,102 @@
+#ifndef TTrifoilPHYSICS_H
+#define TTrifoilPHYSICS_H
+/*****************************************************************************
+ * Copyright (C) 2009-2010   this file is part of the NPTool Project         *
+ *                 *
+ * For the licensing terms see $NPTOOL/Licence/NPTool_Licence                *
+ * For the list of contributors see $NPTOOL/Licence/Contributors             *
+ *****************************************************************************/
+
+/*****************************************************************************
+ * Original Author: Adrien MATTA  contact address: matta@ipno.in2p3.fr       *
+ *                                                                           *
+ * Creation Date  : Devember 2012                                            *
+ * Last update    :                                                          *
+ *---------------------------------------------------------------------------*
+ * Decription:                                                               *
+ *  This class hold Trifoil treated data                                     *
+ *                                                                           *
+ *---------------------------------------------------------------------------*
+ * Comment:                                                                  *
+ *                                                                           *
+ *                                                                           *
+ *                                                                           *
+ *****************************************************************************/
+// STL
+#include <vector>
+
+// NPL
+#include "TTrifoilData.h"
+#include "../include/CalibrationManager.h"
+#include "../include/VDetector.h"
+// ROOT 
+#include "TVector2.h" 
+#include "TVector3.h" 
+#include "TObject.h"
+
+using namespace std ;
+
+class TTrifoilPhysics : public TObject, public NPA::VDetector
+{
+   public:
+      TTrifoilPhysics();
+      ~TTrifoilPhysics() {};
+
+   public: 
+      void Clear();   
+      void Clear(const Option_t*) {};
+         
+   public:
+      // EventType is True if the wave form analysis return a valid Trifoil event
+      vector<bool>    EventType ;
+      vector<double>  Time ;
+  
+   public:      //   Innherited from VDetector Class
+         
+      //   Read stream at ConfigFile to pick-up parameters of detector (Position,...) using Token
+      void ReadConfiguration(string) ;
+      
+      //   Add Parameter to the CalibrationManger
+      void AddParameterToCalibrationManager() ;      
+
+      //   Activated associated Branches and link it to the private member DetectorData address
+      //   In this method mother Branches (Detector) AND daughter leaf (fDetector_parameter) have to be activated
+      void InitializeRootInputRaw() ;
+      
+      //   Activated associated Branches and link it to the private member DetectorPhysics address
+      //   In this method mother Branches (Detector) AND daughter leaf (parameter) have to be activated
+      void InitializeRootInputPhysics() ;
+
+      //   Create associated branches and associated private member DetectorPhysics address
+      void InitializeRootOutput() ;
+      
+      //   This method is called at each event read from the Input Tree. Aime is to build treat Raw dat in order to extract physical parameter. 
+      void BuildPhysicalEvent() ;
+      
+      //   Same as above, but only the simplest event and/or simple method are used (low multiplicity, faster algorythm but less efficient ...).
+      //   This method aimed to be used for analysis performed during experiment, when speed is requiered.
+      //   NB: This method can eventually be the same as BuildPhysicalEvent.
+      void BuildSimplePhysicalEvent() ;
+
+      // Same as above but for online analysis
+      void BuildOnlinePhysicalEvent()  {BuildPhysicalEvent();};
+
+      //   Those two method all to clear the Event Physics or Data
+      void ClearEventPhysics() {Clear();}      
+      void ClearEventData()    {m_EventData->Clear();}   
+   
+   public:      //   Specific to Trifoil
+  
+      // Retrieve raw and pre-treated data
+      TTrifoilData* GetRawData()        const {return m_EventData;}  
+
+    private:   //   Root Input and Output tree classes
+            
+         TTrifoilData*         m_EventData;//!
+         TTrifoilPhysics*      m_EventPhysics;//!
+
+        
+   ClassDef(TTrifoilPhysics,1)  // TrifoilPhysics structure
+};
+
+#endif
diff --git a/NPLib/Trifoil/TTrifoilPhysicsDict.cxx b/NPLib/Trifoil/TTrifoilPhysicsDict.cxx
new file mode 100644
index 000000000..4b5fe67fd
--- /dev/null
+++ b/NPLib/Trifoil/TTrifoilPhysicsDict.cxx
@@ -0,0 +1,1041 @@
+//
+// File generated by rootcint at Wed Dec  5 17:46:07 2012
+
+// Do NOT change. Changes will be lost next time file is generated
+//
+
+#define R__DICTIONARY_FILENAME TTrifoilPhysicsDict
+#include "RConfig.h" //rootcint 4834
+#if !defined(R__ACCESS_IN_SYMBOL)
+//Break the privacy of classes -- Disabled for the moment
+#define private public
+#define protected public
+#endif
+
+// Since CINT ignores the std namespace, we need to do so in this file.
+namespace std {} using namespace std;
+#include "TTrifoilPhysicsDict.h"
+
+#include "TCollectionProxyInfo.h"
+#include "TClass.h"
+#include "TBuffer.h"
+#include "TMemberInspector.h"
+#include "TError.h"
+
+#ifndef G__ROOT
+#define G__ROOT
+#endif
+
+#include "RtypesImp.h"
+#include "TIsAProxy.h"
+#include "TFileMergeInfo.h"
+
+// START OF SHADOWS
+
+namespace ROOT {
+   namespace Shadow {
+   } // of namespace Shadow
+} // of namespace ROOT
+// END OF SHADOWS
+
+namespace ROOT {
+   void TTrifoilPhysics_ShowMembers(void *obj, TMemberInspector &R__insp);
+   static void *new_TTrifoilPhysics(void *p = 0);
+   static void *newArray_TTrifoilPhysics(Long_t size, void *p);
+   static void delete_TTrifoilPhysics(void *p);
+   static void deleteArray_TTrifoilPhysics(void *p);
+   static void destruct_TTrifoilPhysics(void *p);
+   static void streamer_TTrifoilPhysics(TBuffer &buf, void *obj);
+
+   // Function generating the singleton type initializer
+   static TGenericClassInfo *GenerateInitInstanceLocal(const ::TTrifoilPhysics*)
+   {
+      ::TTrifoilPhysics *ptr = 0;
+      static ::TVirtualIsAProxy* isa_proxy = new ::TInstrumentedIsAProxy< ::TTrifoilPhysics >(0);
+      static ::ROOT::TGenericClassInfo 
+         instance("TTrifoilPhysics", ::TTrifoilPhysics::Class_Version(), "./TTrifoilPhysics.h", 40,
+                  typeid(::TTrifoilPhysics), DefineBehavior(ptr, ptr),
+                  &::TTrifoilPhysics::Dictionary, isa_proxy, 0,
+                  sizeof(::TTrifoilPhysics) );
+      instance.SetNew(&new_TTrifoilPhysics);
+      instance.SetNewArray(&newArray_TTrifoilPhysics);
+      instance.SetDelete(&delete_TTrifoilPhysics);
+      instance.SetDeleteArray(&deleteArray_TTrifoilPhysics);
+      instance.SetDestructor(&destruct_TTrifoilPhysics);
+      instance.SetStreamerFunc(&streamer_TTrifoilPhysics);
+      return &instance;
+   }
+   TGenericClassInfo *GenerateInitInstance(const ::TTrifoilPhysics*)
+   {
+      return GenerateInitInstanceLocal((::TTrifoilPhysics*)0);
+   }
+   // Static variable to force the class initialization
+   static ::ROOT::TGenericClassInfo *_R__UNIQUE_(Init) = GenerateInitInstanceLocal((const ::TTrifoilPhysics*)0x0); R__UseDummy(_R__UNIQUE_(Init));
+} // end of namespace ROOT
+
+//______________________________________________________________________________
+TClass *TTrifoilPhysics::fgIsA = 0;  // static to hold class pointer
+
+//______________________________________________________________________________
+const char *TTrifoilPhysics::Class_Name()
+{
+   return "TTrifoilPhysics";
+}
+
+//______________________________________________________________________________
+const char *TTrifoilPhysics::ImplFileName()
+{
+   return ::ROOT::GenerateInitInstanceLocal((const ::TTrifoilPhysics*)0x0)->GetImplFileName();
+}
+
+//______________________________________________________________________________
+int TTrifoilPhysics::ImplFileLine()
+{
+   return ::ROOT::GenerateInitInstanceLocal((const ::TTrifoilPhysics*)0x0)->GetImplFileLine();
+}
+
+//______________________________________________________________________________
+void TTrifoilPhysics::Dictionary()
+{
+   fgIsA = ::ROOT::GenerateInitInstanceLocal((const ::TTrifoilPhysics*)0x0)->GetClass();
+}
+
+//______________________________________________________________________________
+TClass *TTrifoilPhysics::Class()
+{
+   if (!fgIsA) fgIsA = ::ROOT::GenerateInitInstanceLocal((const ::TTrifoilPhysics*)0x0)->GetClass();
+   return fgIsA;
+}
+
+//______________________________________________________________________________
+void TTrifoilPhysics::Streamer(TBuffer &R__b)
+{
+   // Stream an object of class TTrifoilPhysics.
+
+   UInt_t R__s, R__c;
+   if (R__b.IsReading()) {
+      Version_t R__v = R__b.ReadVersion(&R__s, &R__c); if (R__v) { }
+      TObject::Streamer(R__b);
+      {
+         vector<bool> &R__stl =  EventType;
+         R__stl.clear();
+         int R__i, R__n;
+         R__b >> R__n;
+         R__stl.reserve(R__n);
+         for (R__i = 0; R__i < R__n; R__i++) {
+            bool R__t;
+            R__b >> R__t;
+            R__stl.push_back(R__t);
+         }
+      }
+      {
+         vector<double> &R__stl =  Time;
+         R__stl.clear();
+         int R__i, R__n;
+         R__b >> R__n;
+         R__stl.reserve(R__n);
+         for (R__i = 0; R__i < R__n; R__i++) {
+            double R__t;
+            R__b >> R__t;
+            R__stl.push_back(R__t);
+         }
+      }
+      R__b.CheckByteCount(R__s, R__c, TTrifoilPhysics::IsA());
+   } else {
+      R__c = R__b.WriteVersion(TTrifoilPhysics::IsA(), kTRUE);
+      TObject::Streamer(R__b);
+      {
+         vector<bool> &R__stl =  EventType;
+         int R__n=(&R__stl) ? int(R__stl.size()) : 0;
+         R__b << R__n;
+         if(R__n) {
+            vector<bool>::iterator R__k;
+            for (R__k = R__stl.begin(); R__k != R__stl.end(); ++R__k) {
+            R__b << (*R__k);
+            }
+         }
+      }
+      {
+         vector<double> &R__stl =  Time;
+         int R__n=(&R__stl) ? int(R__stl.size()) : 0;
+         R__b << R__n;
+         if(R__n) {
+            vector<double>::iterator R__k;
+            for (R__k = R__stl.begin(); R__k != R__stl.end(); ++R__k) {
+            R__b << (*R__k);
+            }
+         }
+      }
+      R__b.SetByteCount(R__c, kTRUE);
+   }
+}
+
+//______________________________________________________________________________
+void TTrifoilPhysics::ShowMembers(TMemberInspector &R__insp)
+{
+      // Inspect the data members of an object of class TTrifoilPhysics.
+      TClass *R__cl = ::TTrifoilPhysics::IsA();
+      if (R__cl || R__insp.IsA()) { }
+      R__insp.Inspect(R__cl, R__insp.GetParent(), "EventType", (void*)&EventType);
+      R__insp.InspectMember("vector<bool>", (void*)&EventType, "EventType.", false);
+      R__insp.Inspect(R__cl, R__insp.GetParent(), "Time", (void*)&Time);
+      R__insp.InspectMember("vector<double>", (void*)&Time, "Time.", false);
+      R__insp.Inspect(R__cl, R__insp.GetParent(), "*m_EventData", &m_EventData);
+      R__insp.Inspect(R__cl, R__insp.GetParent(), "*m_EventPhysics", &m_EventPhysics);
+      TObject::ShowMembers(R__insp);
+      R__insp.GenericShowMembers("NPA::VDetector", ( ::NPA::VDetector *) (this ), false);
+}
+
+namespace ROOT {
+   // Wrappers around operator new
+   static void *new_TTrifoilPhysics(void *p) {
+      return  p ? new(p) ::TTrifoilPhysics : new ::TTrifoilPhysics;
+   }
+   static void *newArray_TTrifoilPhysics(Long_t nElements, void *p) {
+      return p ? new(p) ::TTrifoilPhysics[nElements] : new ::TTrifoilPhysics[nElements];
+   }
+   // Wrapper around operator delete
+   static void delete_TTrifoilPhysics(void *p) {
+      delete ((::TTrifoilPhysics*)p);
+   }
+   static void deleteArray_TTrifoilPhysics(void *p) {
+      delete [] ((::TTrifoilPhysics*)p);
+   }
+   static void destruct_TTrifoilPhysics(void *p) {
+      typedef ::TTrifoilPhysics current_t;
+      ((current_t*)p)->~current_t();
+   }
+   // Wrapper around a custom streamer member function.
+   static void streamer_TTrifoilPhysics(TBuffer &buf, void *obj) {
+      ((::TTrifoilPhysics*)obj)->::TTrifoilPhysics::Streamer(buf);
+   }
+} // end of namespace ROOT for class ::TTrifoilPhysics
+
+namespace ROOT {
+   void vectorlEboolgR_ShowMembers(void *obj, TMemberInspector &R__insp);
+   static void vectorlEboolgR_Dictionary();
+   static void *new_vectorlEboolgR(void *p = 0);
+   static void *newArray_vectorlEboolgR(Long_t size, void *p);
+   static void delete_vectorlEboolgR(void *p);
+   static void deleteArray_vectorlEboolgR(void *p);
+   static void destruct_vectorlEboolgR(void *p);
+
+   // Function generating the singleton type initializer
+   static TGenericClassInfo *GenerateInitInstanceLocal(const vector<bool>*)
+   {
+      vector<bool> *ptr = 0;
+      static ::TVirtualIsAProxy* isa_proxy = new ::TIsAProxy(typeid(vector<bool>),0);
+      static ::ROOT::TGenericClassInfo 
+         instance("vector<bool>", -2, "vectorbool.dll", 0,
+                  typeid(vector<bool>), DefineBehavior(ptr, ptr),
+                  0, &vectorlEboolgR_Dictionary, isa_proxy, 0,
+                  sizeof(vector<bool>) );
+      instance.SetNew(&new_vectorlEboolgR);
+      instance.SetNewArray(&newArray_vectorlEboolgR);
+      instance.SetDelete(&delete_vectorlEboolgR);
+      instance.SetDeleteArray(&deleteArray_vectorlEboolgR);
+      instance.SetDestructor(&destruct_vectorlEboolgR);
+      instance.AdoptCollectionProxyInfo(TCollectionProxyInfo::Generate(TCollectionProxyInfo::Pushback< vector<bool> >()));
+      return &instance;
+   }
+   // Static variable to force the class initialization
+   static ::ROOT::TGenericClassInfo *_R__UNIQUE_(Init) = GenerateInitInstanceLocal((const vector<bool>*)0x0); R__UseDummy(_R__UNIQUE_(Init));
+
+   // Dictionary for non-ClassDef classes
+   static void vectorlEboolgR_Dictionary() {
+      ::ROOT::GenerateInitInstanceLocal((const vector<bool>*)0x0)->GetClass();
+   }
+
+} // end of namespace ROOT
+
+namespace ROOT {
+   // Wrappers around operator new
+   static void *new_vectorlEboolgR(void *p) {
+      return  p ? ::new((::ROOT::TOperatorNewHelper*)p) vector<bool> : new vector<bool>;
+   }
+   static void *newArray_vectorlEboolgR(Long_t nElements, void *p) {
+      return p ? ::new((::ROOT::TOperatorNewHelper*)p) vector<bool>[nElements] : new vector<bool>[nElements];
+   }
+   // Wrapper around operator delete
+   static void delete_vectorlEboolgR(void *p) {
+      delete ((vector<bool>*)p);
+   }
+   static void deleteArray_vectorlEboolgR(void *p) {
+      delete [] ((vector<bool>*)p);
+   }
+   static void destruct_vectorlEboolgR(void *p) {
+      typedef vector<bool> current_t;
+      ((current_t*)p)->~current_t();
+   }
+} // end of namespace ROOT for class vector<bool>
+
+namespace ROOT {
+   void vectorlEdoublegR_ShowMembers(void *obj, TMemberInspector &R__insp);
+   static void vectorlEdoublegR_Dictionary();
+   static void *new_vectorlEdoublegR(void *p = 0);
+   static void *newArray_vectorlEdoublegR(Long_t size, void *p);
+   static void delete_vectorlEdoublegR(void *p);
+   static void deleteArray_vectorlEdoublegR(void *p);
+   static void destruct_vectorlEdoublegR(void *p);
+
+   // Function generating the singleton type initializer
+   static TGenericClassInfo *GenerateInitInstanceLocal(const vector<double>*)
+   {
+      vector<double> *ptr = 0;
+      static ::TVirtualIsAProxy* isa_proxy = new ::TIsAProxy(typeid(vector<double>),0);
+      static ::ROOT::TGenericClassInfo 
+         instance("vector<double>", -2, "vector.dll", 0,
+                  typeid(vector<double>), DefineBehavior(ptr, ptr),
+                  0, &vectorlEdoublegR_Dictionary, isa_proxy, 0,
+                  sizeof(vector<double>) );
+      instance.SetNew(&new_vectorlEdoublegR);
+      instance.SetNewArray(&newArray_vectorlEdoublegR);
+      instance.SetDelete(&delete_vectorlEdoublegR);
+      instance.SetDeleteArray(&deleteArray_vectorlEdoublegR);
+      instance.SetDestructor(&destruct_vectorlEdoublegR);
+      instance.AdoptCollectionProxyInfo(TCollectionProxyInfo::Generate(TCollectionProxyInfo::Pushback< vector<double> >()));
+      return &instance;
+   }
+   // Static variable to force the class initialization
+   static ::ROOT::TGenericClassInfo *_R__UNIQUE_(Init) = GenerateInitInstanceLocal((const vector<double>*)0x0); R__UseDummy(_R__UNIQUE_(Init));
+
+   // Dictionary for non-ClassDef classes
+   static void vectorlEdoublegR_Dictionary() {
+      ::ROOT::GenerateInitInstanceLocal((const vector<double>*)0x0)->GetClass();
+   }
+
+} // end of namespace ROOT
+
+namespace ROOT {
+   // Wrappers around operator new
+   static void *new_vectorlEdoublegR(void *p) {
+      return  p ? ::new((::ROOT::TOperatorNewHelper*)p) vector<double> : new vector<double>;
+   }
+   static void *newArray_vectorlEdoublegR(Long_t nElements, void *p) {
+      return p ? ::new((::ROOT::TOperatorNewHelper*)p) vector<double>[nElements] : new vector<double>[nElements];
+   }
+   // Wrapper around operator delete
+   static void delete_vectorlEdoublegR(void *p) {
+      delete ((vector<double>*)p);
+   }
+   static void deleteArray_vectorlEdoublegR(void *p) {
+      delete [] ((vector<double>*)p);
+   }
+   static void destruct_vectorlEdoublegR(void *p) {
+      typedef vector<double> current_t;
+      ((current_t*)p)->~current_t();
+   }
+} // end of namespace ROOT for class vector<double>
+
+/********************************************************
+* TTrifoilPhysicsDict.cxx
+* CAUTION: DON'T CHANGE THIS FILE. THIS FILE IS AUTOMATICALLY GENERATED
+*          FROM HEADER FILES LISTED IN G__setup_cpp_environmentXXX().
+*          CHANGE THOSE HEADER FILES AND REGENERATE THIS FILE.
+********************************************************/
+
+#ifdef G__MEMTEST
+#undef malloc
+#undef free
+#endif
+
+#if defined(__GNUC__) && __GNUC__ >= 4 && ((__GNUC_MINOR__ == 2 && __GNUC_PATCHLEVEL__ >= 1) || (__GNUC_MINOR__ >= 3))
+#pragma GCC diagnostic ignored "-Wstrict-aliasing"
+#endif
+
+extern "C" void G__cpp_reset_tagtableTTrifoilPhysicsDict();
+
+extern "C" void G__set_cpp_environmentTTrifoilPhysicsDict() {
+  G__add_compiledheader("TObject.h");
+  G__add_compiledheader("TMemberInspector.h");
+  G__add_compiledheader("TTrifoilPhysics.h");
+  G__cpp_reset_tagtableTTrifoilPhysicsDict();
+}
+#include <new>
+extern "C" int G__cpp_dllrevTTrifoilPhysicsDict() { return(30051515); }
+
+/*********************************************************
+* Member function Interface Method
+*********************************************************/
+
+/* TTrifoilPhysics */
+static int G__TTrifoilPhysicsDict_508_0_1(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+   TTrifoilPhysics* p = NULL;
+   char* gvp = (char*) G__getgvp();
+   int n = G__getaryconstruct();
+   if (n) {
+     if ((gvp == (char*)G__PVOID) || (gvp == 0)) {
+       p = new TTrifoilPhysics[n];
+     } else {
+       p = new((void*) gvp) TTrifoilPhysics[n];
+     }
+   } else {
+     if ((gvp == (char*)G__PVOID) || (gvp == 0)) {
+       p = new TTrifoilPhysics;
+     } else {
+       p = new((void*) gvp) TTrifoilPhysics;
+     }
+   }
+   result7->obj.i = (long) p;
+   result7->ref = (long) p;
+   G__set_tagnum(result7,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TTrifoilPhysics));
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilPhysicsDict_508_0_2(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      ((TTrifoilPhysics*) G__getstructoffset())->Clear();
+      G__setnull(result7);
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilPhysicsDict_508_0_11(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      ((TTrifoilPhysics*) G__getstructoffset())->BuildOnlinePhysicalEvent();
+      G__setnull(result7);
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilPhysicsDict_508_0_14(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      G__letint(result7, 85, (long) ((const TTrifoilPhysics*) G__getstructoffset())->GetRawData());
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilPhysicsDict_508_0_15(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      G__letint(result7, 85, (long) TTrifoilPhysics::Class());
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilPhysicsDict_508_0_16(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      G__letint(result7, 67, (long) TTrifoilPhysics::Class_Name());
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilPhysicsDict_508_0_17(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      G__letint(result7, 115, (long) TTrifoilPhysics::Class_Version());
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilPhysicsDict_508_0_18(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      TTrifoilPhysics::Dictionary();
+      G__setnull(result7);
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilPhysicsDict_508_0_22(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      ((TTrifoilPhysics*) G__getstructoffset())->StreamerNVirtual(*(TBuffer*) libp->para[0].ref);
+      G__setnull(result7);
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilPhysicsDict_508_0_23(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      G__letint(result7, 67, (long) TTrifoilPhysics::DeclFileName());
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilPhysicsDict_508_0_24(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      G__letint(result7, 105, (long) TTrifoilPhysics::ImplFileLine());
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilPhysicsDict_508_0_25(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      G__letint(result7, 67, (long) TTrifoilPhysics::ImplFileName());
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+static int G__TTrifoilPhysicsDict_508_0_26(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+      G__letint(result7, 105, (long) TTrifoilPhysics::DeclFileLine());
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+// automatic copy constructor
+static int G__TTrifoilPhysicsDict_508_0_27(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+
+{
+   TTrifoilPhysics* p;
+   void* tmp = (void*) G__int(libp->para[0]);
+   p = new TTrifoilPhysics(*(TTrifoilPhysics*) tmp);
+   result7->obj.i = (long) p;
+   result7->ref = (long) p;
+   G__set_tagnum(result7,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TTrifoilPhysics));
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+// automatic destructor
+typedef TTrifoilPhysics G__TTTrifoilPhysics;
+static int G__TTrifoilPhysicsDict_508_0_28(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+   char* gvp = (char*) G__getgvp();
+   long soff = G__getstructoffset();
+   int n = G__getaryconstruct();
+   //
+   //has_a_delete: 1
+   //has_own_delete1arg: 0
+   //has_own_delete2arg: 0
+   //
+   if (!soff) {
+     return(1);
+   }
+   if (n) {
+     if (gvp == (char*)G__PVOID) {
+       delete[] (TTrifoilPhysics*) soff;
+     } else {
+       G__setgvp((long) G__PVOID);
+       for (int i = n - 1; i >= 0; --i) {
+         ((TTrifoilPhysics*) (soff+(sizeof(TTrifoilPhysics)*i)))->~G__TTTrifoilPhysics();
+       }
+       G__setgvp((long)gvp);
+     }
+   } else {
+     if (gvp == (char*)G__PVOID) {
+       delete (TTrifoilPhysics*) soff;
+     } else {
+       G__setgvp((long) G__PVOID);
+       ((TTrifoilPhysics*) (soff))->~G__TTTrifoilPhysics();
+       G__setgvp((long)gvp);
+     }
+   }
+   G__setnull(result7);
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+// automatic assignment operator
+static int G__TTrifoilPhysicsDict_508_0_29(G__value* result7, G__CONST char* funcname, struct G__param* libp, int hash)
+{
+   TTrifoilPhysics* dest = (TTrifoilPhysics*) G__getstructoffset();
+   *dest = *(TTrifoilPhysics*) libp->para[0].ref;
+   const TTrifoilPhysics& obj = *dest;
+   result7->ref = (long) (&obj);
+   result7->obj.i = (long) (&obj);
+   return(1 || funcname || hash || result7 || libp) ;
+}
+
+
+/* Setting up global function */
+
+/*********************************************************
+* Member function Stub
+*********************************************************/
+
+/* TTrifoilPhysics */
+
+/*********************************************************
+* Global function Stub
+*********************************************************/
+
+/*********************************************************
+* Get size of pointer to member function
+*********************************************************/
+class G__Sizep2memfuncTTrifoilPhysicsDict {
+ public:
+  G__Sizep2memfuncTTrifoilPhysicsDict(): p(&G__Sizep2memfuncTTrifoilPhysicsDict::sizep2memfunc) {}
+    size_t sizep2memfunc() { return(sizeof(p)); }
+  private:
+    size_t (G__Sizep2memfuncTTrifoilPhysicsDict::*p)();
+};
+
+size_t G__get_sizep2memfuncTTrifoilPhysicsDict()
+{
+  G__Sizep2memfuncTTrifoilPhysicsDict a;
+  G__setsizep2memfunc((int)a.sizep2memfunc());
+  return((size_t)a.sizep2memfunc());
+}
+
+
+/*********************************************************
+* virtual base class offset calculation interface
+*********************************************************/
+
+   /* Setting up class inheritance */
+
+/*********************************************************
+* Inheritance information setup/
+*********************************************************/
+extern "C" void G__cpp_setup_inheritanceTTrifoilPhysicsDict() {
+
+   /* Setting up class inheritance */
+   if(0==G__getnumbaseclass(G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TTrifoilPhysics))) {
+     TTrifoilPhysics *G__Lderived;
+     G__Lderived=(TTrifoilPhysics*)0x1000;
+     {
+       TObject *G__Lpbase=(TObject*)G__Lderived;
+       G__inheritance_setup(G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TTrifoilPhysics),G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TObject),(long)G__Lpbase-(long)G__Lderived,1,1);
+     }
+     {
+       NPA::VDetector *G__Lpbase=(NPA::VDetector*)G__Lderived;
+       G__inheritance_setup(G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TTrifoilPhysics),G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_NPAcLcLVDetector),(long)G__Lpbase-(long)G__Lderived,1,1);
+     }
+   }
+}
+
+/*********************************************************
+* typedef information setup/
+*********************************************************/
+extern "C" void G__cpp_setup_typetableTTrifoilPhysicsDict() {
+
+   /* Setting up typedef entry */
+   G__search_typename2("Version_t",115,-1,0,-1);
+   G__setnewtype(-1,"Class version identifier (short)",0);
+   G__search_typename2("vector<ROOT::TSchemaHelper>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_vectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("reverse_iterator<const_iterator>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgRcLcLiteratorgR),0,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_vectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgR));
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("reverse_iterator<iterator>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgRcLcLiteratorgR),0,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_vectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgR));
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("vector<TVirtualArray*>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_vectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("reverse_iterator<const_iterator>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgRcLcLiteratorgR),0,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_vectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgR));
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("reverse_iterator<iterator>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgRcLcLiteratorgR),0,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_vectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgR));
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TVectorT<Float_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TVectorTlEfloatgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TVectorT<Double_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TVectorTlEdoublegR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("vector<int>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_vectorlEintcOallocatorlEintgRsPgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("reverse_iterator<const_iterator>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlEintcOallocatorlEintgRsPgRcLcLiteratorgR),0,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_vectorlEintcOallocatorlEintgRsPgR));
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("reverse_iterator<iterator>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlEintcOallocatorlEintgRsPgRcLcLiteratorgR),0,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_vectorlEintcOallocatorlEintgRsPgR));
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("vector<TH1F>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_vectorlETH1FcOallocatorlETH1FgRsPgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("reverse_iterator<const_iterator>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlETH1FcOallocatorlETH1FgRsPgRcLcLiteratorgR),0,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_vectorlETH1FcOallocatorlETH1FgRsPgR));
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("reverse_iterator<iterator>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlETH1FcOallocatorlETH1FgRsPgRcLcLiteratorgR),0,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_vectorlETH1FcOallocatorlETH1FgRsPgR));
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("vector<Double_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_vectorlEdoublecOallocatorlEdoublegRsPgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("map<string,vector<double> >",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_maplEstringcOvectorlEdoublecOallocatorlEdoublegRsPgRcOlesslEstringgRcOallocatorlEpairlEconstsPstringcOvectorlEdoublecOallocatorlEdoublegRsPgRsPgRsPgRsPgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("map<string,vector<double,allocator<double> > >",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_maplEstringcOvectorlEdoublecOallocatorlEdoublegRsPgRcOlesslEstringgRcOallocatorlEpairlEconstsPstringcOvectorlEdoublecOallocatorlEdoublegRsPgRsPgRsPgRsPgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("map<string,vector<double,allocator<double> >,less<string> >",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_maplEstringcOvectorlEdoublecOallocatorlEdoublegRsPgRcOlesslEstringgRcOallocatorlEpairlEconstsPstringcOvectorlEdoublecOallocatorlEdoublegRsPgRsPgRsPgRsPgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("vector<string>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_vectorlEstringcOallocatorlEstringgRsPgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("reverse_iterator<const_iterator>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlEstringcOallocatorlEstringgRsPgRcLcLiteratorgR),0,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_vectorlEstringcOallocatorlEstringgRsPgR));
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("reverse_iterator<iterator>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlEstringcOallocatorlEstringgRsPgRcLcLiteratorgR),0,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_vectorlEstringcOallocatorlEstringgRsPgR));
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("map<string,string>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_maplEstringcOstringcOlesslEstringgRcOallocatorlEpairlEconstsPstringcOstringgRsPgRsPgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("map<string,string,less<string> >",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_maplEstringcOstringcOlesslEstringgRcOallocatorlEpairlEconstsPstringcOstringgRsPgRsPgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TMatrixTBase<Float_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TMatrixTBaselEfloatgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TMatrixTBase<Double_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TMatrixTBaselEdoublegR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TMatrixT<Float_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TMatrixTlEfloatgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TMatrixTRow_const<Float_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TMatrixTRow_constlEfloatgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TMatrixTColumn_const<Float_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TMatrixTColumn_constlEfloatgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TMatrixTDiag_const<Float_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TMatrixTDiag_constlEfloatgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TMatrixTFlat_const<Float_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TMatrixTFlat_constlEfloatgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TMatrixTSub_const<Float_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TMatrixTSub_constlEfloatgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TMatrixTSparseRow_const<Float_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TMatrixTSparseRow_constlEfloatgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TMatrixTSparseDiag_const<Float_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TMatrixTSparseDiag_constlEfloatgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TMatrixTRow<Float_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TMatrixTRowlEfloatgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TMatrixTColumn<Float_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TMatrixTColumnlEfloatgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TMatrixTDiag<Float_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TMatrixTDiaglEfloatgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TMatrixTFlat<Float_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TMatrixTFlatlEfloatgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TMatrixTSub<Float_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TMatrixTSublEfloatgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TMatrixTSparseRow<Float_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TMatrixTSparseRowlEfloatgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TMatrixTSparseDiag<Float_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TMatrixTSparseDiaglEfloatgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TElementActionT<Float_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TElementActionTlEfloatgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+   G__search_typename2("TElementPosActionT<Float_t>",117,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TElementPosActionTlEfloatgR),0,-1);
+   G__setnewtype(-1,NULL,0);
+}
+
+/*********************************************************
+* Data Member information setup/
+*********************************************************/
+
+   /* Setting up class,struct,union tag member variable */
+
+   /* TTrifoilPhysics */
+static void G__setup_memvarTTrifoilPhysics(void) {
+   G__tag_memvar_setup(G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TTrifoilPhysics));
+   { TTrifoilPhysics *p; p=(TTrifoilPhysics*)0x1000; if (p) { }
+   G__memvar_setup((void*)((long)(&p->EventType)-(long)(p)),117,0,0,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_vectorlEboolcOallocatorlEboolgRsPgR),G__defined_typename("vector<bool>"),-1,1,"EventType=",0,(char*)NULL);
+   G__memvar_setup((void*)((long)(&p->Time)-(long)(p)),117,0,0,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_vectorlEdoublecOallocatorlEdoublegRsPgR),G__defined_typename("vector<double>"),-1,1,"Time=",0,(char*)NULL);
+   G__memvar_setup((void*)0,85,0,0,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TTrifoilData),-1,-1,4,"m_EventData=",0,"!");
+   G__memvar_setup((void*)0,85,0,0,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TTrifoilPhysics),-1,-1,4,"m_EventPhysics=",0,"!");
+   G__memvar_setup((void*)0,85,0,0,G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TClass),-1,-2,4,"fgIsA=",0,(char*)NULL);
+   }
+   G__tag_memvar_reset();
+}
+
+extern "C" void G__cpp_setup_memvarTTrifoilPhysicsDict() {
+}
+/***********************************************************
+************************************************************
+************************************************************
+************************************************************
+************************************************************
+************************************************************
+************************************************************
+***********************************************************/
+
+/*********************************************************
+* Member function information setup for each class
+*********************************************************/
+static void G__setup_memfuncTTrifoilPhysics(void) {
+   /* TTrifoilPhysics */
+   G__tag_memfunc_setup(G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TTrifoilPhysics));
+   G__memfunc_setup("TTrifoilPhysics",1552,G__TTrifoilPhysicsDict_508_0_1, 105, G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TTrifoilPhysics), -1, 0, 0, 1, 1, 0, "", (char*)NULL, (void*) NULL, 0);
+   G__memfunc_setup("Clear",487,G__TTrifoilPhysicsDict_508_0_2, 121, -1, -1, 0, 0, 1, 1, 0, "", (char*)NULL, (void*) NULL, 0);
+   G__memfunc_setup("Clear",487,(G__InterfaceMethod) NULL,121, -1, -1, 0, 1, 1, 1, 0, "C - 'Option_t' 10 - -", (char*)NULL, (void*) NULL, 1);
+   G__memfunc_setup("ReadConfiguration",1748,(G__InterfaceMethod) NULL,121, -1, -1, 0, 1, 1, 1, 0, "u 'string' - 0 - -", (char*)NULL, (void*) NULL, 1);
+   G__memfunc_setup("AddParameterToCalibrationManager",3216,(G__InterfaceMethod) NULL,121, -1, -1, 0, 0, 1, 1, 0, "", (char*)NULL, (void*) NULL, 1);
+   G__memfunc_setup("InitializeRootInputRaw",2288,(G__InterfaceMethod) NULL,121, -1, -1, 0, 0, 1, 1, 0, "", (char*)NULL, (void*) NULL, 1);
+   G__memfunc_setup("InitializeRootInputPhysics",2729,(G__InterfaceMethod) NULL,121, -1, -1, 0, 0, 1, 1, 0, "", (char*)NULL, (void*) NULL, 1);
+   G__memfunc_setup("InitializeRootOutput",2119,(G__InterfaceMethod) NULL,121, -1, -1, 0, 0, 1, 1, 0, "", (char*)NULL, (void*) NULL, 1);
+   G__memfunc_setup("BuildPhysicalEvent",1839,(G__InterfaceMethod) NULL,121, -1, -1, 0, 0, 1, 1, 0, "", (char*)NULL, (void*) NULL, 1);
+   G__memfunc_setup("BuildSimplePhysicalEvent",2457,(G__InterfaceMethod) NULL,121, -1, -1, 0, 0, 1, 1, 0, "", (char*)NULL, (void*) NULL, 1);
+   G__memfunc_setup("BuildOnlinePhysicalEvent",2452,G__TTrifoilPhysicsDict_508_0_11, 121, -1, -1, 0, 0, 1, 1, 0, "", (char*)NULL, (void*) NULL, 0);
+   G__memfunc_setup("ClearEventPhysics",1740,(G__InterfaceMethod) NULL,121, -1, -1, 0, 0, 1, 1, 0, "", (char*)NULL, (void*) NULL, 1);
+   G__memfunc_setup("ClearEventData",1379,(G__InterfaceMethod) NULL,121, -1, -1, 0, 0, 1, 1, 0, "", (char*)NULL, (void*) NULL, 1);
+   G__memfunc_setup("GetRawData",964,G__TTrifoilPhysicsDict_508_0_14, 85, G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TTrifoilData), -1, 0, 0, 1, 1, 8, "", (char*)NULL, (void*) NULL, 0);
+   G__memfunc_setup("Class",502,G__TTrifoilPhysicsDict_508_0_15, 85, G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TClass), -1, 0, 0, 3, 1, 0, "", (char*)NULL, (void*) G__func2void( (TClass* (*)())(&TTrifoilPhysics::Class) ), 0);
+   G__memfunc_setup("Class_Name",982,G__TTrifoilPhysicsDict_508_0_16, 67, -1, -1, 0, 0, 3, 1, 1, "", (char*)NULL, (void*) G__func2void( (const char* (*)())(&TTrifoilPhysics::Class_Name) ), 0);
+   G__memfunc_setup("Class_Version",1339,G__TTrifoilPhysicsDict_508_0_17, 115, -1, G__defined_typename("Version_t"), 0, 0, 3, 1, 0, "", (char*)NULL, (void*) G__func2void( (Version_t (*)())(&TTrifoilPhysics::Class_Version) ), 0);
+   G__memfunc_setup("Dictionary",1046,G__TTrifoilPhysicsDict_508_0_18, 121, -1, -1, 0, 0, 3, 1, 0, "", (char*)NULL, (void*) G__func2void( (void (*)())(&TTrifoilPhysics::Dictionary) ), 0);
+   G__memfunc_setup("IsA",253,(G__InterfaceMethod) NULL,85, G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TClass), -1, 0, 0, 1, 1, 8, "", (char*)NULL, (void*) NULL, 1);
+   G__memfunc_setup("ShowMembers",1132,(G__InterfaceMethod) NULL,121, -1, -1, 0, 1, 1, 1, 0, "u 'TMemberInspector' - 1 - insp", (char*)NULL, (void*) NULL, 1);
+   G__memfunc_setup("Streamer",835,(G__InterfaceMethod) NULL,121, -1, -1, 0, 1, 1, 1, 0, "u 'TBuffer' - 1 - b", (char*)NULL, (void*) NULL, 1);
+   G__memfunc_setup("StreamerNVirtual",1656,G__TTrifoilPhysicsDict_508_0_22, 121, -1, -1, 0, 1, 1, 1, 0, "u 'TBuffer' - 1 - b", (char*)NULL, (void*) NULL, 0);
+   G__memfunc_setup("DeclFileName",1145,G__TTrifoilPhysicsDict_508_0_23, 67, -1, -1, 0, 0, 3, 1, 1, "", (char*)NULL, (void*) G__func2void( (const char* (*)())(&TTrifoilPhysics::DeclFileName) ), 0);
+   G__memfunc_setup("ImplFileLine",1178,G__TTrifoilPhysicsDict_508_0_24, 105, -1, -1, 0, 0, 3, 1, 0, "", (char*)NULL, (void*) G__func2void( (int (*)())(&TTrifoilPhysics::ImplFileLine) ), 0);
+   G__memfunc_setup("ImplFileName",1171,G__TTrifoilPhysicsDict_508_0_25, 67, -1, -1, 0, 0, 3, 1, 1, "", (char*)NULL, (void*) G__func2void( (const char* (*)())(&TTrifoilPhysics::ImplFileName) ), 0);
+   G__memfunc_setup("DeclFileLine",1152,G__TTrifoilPhysicsDict_508_0_26, 105, -1, -1, 0, 0, 3, 1, 0, "", (char*)NULL, (void*) G__func2void( (int (*)())(&TTrifoilPhysics::DeclFileLine) ), 0);
+   // automatic copy constructor
+   G__memfunc_setup("TTrifoilPhysics", 1552, G__TTrifoilPhysicsDict_508_0_27, (int) ('i'), G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TTrifoilPhysics), -1, 0, 1, 1, 1, 0, "u 'TTrifoilPhysics' - 11 - -", (char*) NULL, (void*) NULL, 0);
+   // automatic destructor
+   G__memfunc_setup("~TTrifoilPhysics", 1678, G__TTrifoilPhysicsDict_508_0_28, (int) ('y'), -1, -1, 0, 0, 1, 1, 0, "", (char*) NULL, (void*) NULL, 1);
+   // automatic assignment operator
+   G__memfunc_setup("operator=", 937, G__TTrifoilPhysicsDict_508_0_29, (int) ('u'), G__get_linked_tagnum(&G__TTrifoilPhysicsDictLN_TTrifoilPhysics), -1, 1, 1, 1, 1, 0, "u 'TTrifoilPhysics' - 11 - -", (char*) NULL, (void*) NULL, 0);
+   G__tag_memfunc_reset();
+}
+
+
+/*********************************************************
+* Member function information setup
+*********************************************************/
+extern "C" void G__cpp_setup_memfuncTTrifoilPhysicsDict() {
+}
+
+/*********************************************************
+* Global variable information setup for each class
+*********************************************************/
+static void G__cpp_setup_global0() {
+
+   /* Setting up global variables */
+   G__resetplocal();
+
+}
+
+static void G__cpp_setup_global1() {
+}
+
+static void G__cpp_setup_global2() {
+}
+
+static void G__cpp_setup_global3() {
+
+   G__resetglobalenv();
+}
+extern "C" void G__cpp_setup_globalTTrifoilPhysicsDict() {
+  G__cpp_setup_global0();
+  G__cpp_setup_global1();
+  G__cpp_setup_global2();
+  G__cpp_setup_global3();
+}
+
+/*********************************************************
+* Global function information setup for each class
+*********************************************************/
+static void G__cpp_setup_func0() {
+   G__lastifuncposition();
+
+}
+
+static void G__cpp_setup_func1() {
+}
+
+static void G__cpp_setup_func2() {
+}
+
+static void G__cpp_setup_func3() {
+}
+
+static void G__cpp_setup_func4() {
+}
+
+static void G__cpp_setup_func5() {
+}
+
+static void G__cpp_setup_func6() {
+}
+
+static void G__cpp_setup_func7() {
+}
+
+static void G__cpp_setup_func8() {
+}
+
+static void G__cpp_setup_func9() {
+}
+
+static void G__cpp_setup_func10() {
+}
+
+static void G__cpp_setup_func11() {
+}
+
+static void G__cpp_setup_func12() {
+}
+
+static void G__cpp_setup_func13() {
+}
+
+static void G__cpp_setup_func14() {
+}
+
+static void G__cpp_setup_func15() {
+}
+
+static void G__cpp_setup_func16() {
+}
+
+static void G__cpp_setup_func17() {
+}
+
+static void G__cpp_setup_func18() {
+}
+
+static void G__cpp_setup_func19() {
+
+   G__resetifuncposition();
+}
+
+extern "C" void G__cpp_setup_funcTTrifoilPhysicsDict() {
+  G__cpp_setup_func0();
+  G__cpp_setup_func1();
+  G__cpp_setup_func2();
+  G__cpp_setup_func3();
+  G__cpp_setup_func4();
+  G__cpp_setup_func5();
+  G__cpp_setup_func6();
+  G__cpp_setup_func7();
+  G__cpp_setup_func8();
+  G__cpp_setup_func9();
+  G__cpp_setup_func10();
+  G__cpp_setup_func11();
+  G__cpp_setup_func12();
+  G__cpp_setup_func13();
+  G__cpp_setup_func14();
+  G__cpp_setup_func15();
+  G__cpp_setup_func16();
+  G__cpp_setup_func17();
+  G__cpp_setup_func18();
+  G__cpp_setup_func19();
+}
+
+/*********************************************************
+* Class,struct,union,enum tag information setup
+*********************************************************/
+/* Setup class/struct taginfo */
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TClass = { "TClass" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TBuffer = { "TBuffer" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TMemberInspector = { "TMemberInspector" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TObject = { "TObject" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_vectorlEdoublecOallocatorlEdoublegRsPgR = { "vector<double,allocator<double> >" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_vectorlEboolcOallocatorlEboolgRsPgR = { "vector<bool,allocator<bool> >" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_string = { "string" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_vectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgR = { "vector<ROOT::TSchemaHelper,allocator<ROOT::TSchemaHelper> >" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgRcLcLiteratorgR = { "reverse_iterator<vector<ROOT::TSchemaHelper,allocator<ROOT::TSchemaHelper> >::iterator>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_vectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgR = { "vector<TVirtualArray*,allocator<TVirtualArray*> >" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgRcLcLiteratorgR = { "reverse_iterator<vector<TVirtualArray*,allocator<TVirtualArray*> >::iterator>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TVectorTlEfloatgR = { "TVectorT<float>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TVectorTlEdoublegR = { "TVectorT<double>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_vectorlEintcOallocatorlEintgRsPgR = { "vector<int,allocator<int> >" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlEintcOallocatorlEintgRsPgRcLcLiteratorgR = { "reverse_iterator<vector<int,allocator<int> >::iterator>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_vectorlETH1FcOallocatorlETH1FgRsPgR = { "vector<TH1F,allocator<TH1F> >" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlETH1FcOallocatorlETH1FgRsPgRcLcLiteratorgR = { "reverse_iterator<vector<TH1F,allocator<TH1F> >::iterator>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TTrifoilData = { "TTrifoilData" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_maplEstringcOvectorlEdoublecOallocatorlEdoublegRsPgRcOlesslEstringgRcOallocatorlEpairlEconstsPstringcOvectorlEdoublecOallocatorlEdoublegRsPgRsPgRsPgRsPgR = { "map<string,vector<double,allocator<double> >,less<string>,allocator<pair<const string,vector<double,allocator<double> > > > >" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_vectorlEstringcOallocatorlEstringgRsPgR = { "vector<string,allocator<string> >" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlEstringcOallocatorlEstringgRsPgRcLcLiteratorgR = { "reverse_iterator<vector<string,allocator<string> >::iterator>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_maplEstringcOstringcOlesslEstringgRcOallocatorlEpairlEconstsPstringcOstringgRsPgRsPgR = { "map<string,string,less<string>,allocator<pair<const string,string> > >" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_NPA = { "NPA" , 110 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_NPAcLcLVDetector = { "NPA::VDetector" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTBaselEfloatgR = { "TMatrixTBase<float>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTBaselEdoublegR = { "TMatrixTBase<double>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TElementActionTlEfloatgR = { "TElementActionT<float>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TElementPosActionTlEfloatgR = { "TElementPosActionT<float>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTlEfloatgR = { "TMatrixT<float>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTRow_constlEfloatgR = { "TMatrixTRow_const<float>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTRowlEfloatgR = { "TMatrixTRow<float>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTDiag_constlEfloatgR = { "TMatrixTDiag_const<float>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTColumn_constlEfloatgR = { "TMatrixTColumn_const<float>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTFlat_constlEfloatgR = { "TMatrixTFlat_const<float>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTSub_constlEfloatgR = { "TMatrixTSub_const<float>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTSparseRow_constlEfloatgR = { "TMatrixTSparseRow_const<float>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTSparseDiag_constlEfloatgR = { "TMatrixTSparseDiag_const<float>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTColumnlEfloatgR = { "TMatrixTColumn<float>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTDiaglEfloatgR = { "TMatrixTDiag<float>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTFlatlEfloatgR = { "TMatrixTFlat<float>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTSublEfloatgR = { "TMatrixTSub<float>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTSparseRowlEfloatgR = { "TMatrixTSparseRow<float>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTSparseDiaglEfloatgR = { "TMatrixTSparseDiag<float>" , 99 , -1 };
+G__linked_taginfo G__TTrifoilPhysicsDictLN_TTrifoilPhysics = { "TTrifoilPhysics" , 99 , -1 };
+
+/* Reset class/struct taginfo */
+extern "C" void G__cpp_reset_tagtableTTrifoilPhysicsDict() {
+  G__TTrifoilPhysicsDictLN_TClass.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TBuffer.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TMemberInspector.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TObject.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_vectorlEdoublecOallocatorlEdoublegRsPgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_vectorlEboolcOallocatorlEboolgRsPgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_string.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_vectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgRcLcLiteratorgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_vectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgRcLcLiteratorgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TVectorTlEfloatgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TVectorTlEdoublegR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_vectorlEintcOallocatorlEintgRsPgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlEintcOallocatorlEintgRsPgRcLcLiteratorgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_vectorlETH1FcOallocatorlETH1FgRsPgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlETH1FcOallocatorlETH1FgRsPgRcLcLiteratorgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TTrifoilData.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_maplEstringcOvectorlEdoublecOallocatorlEdoublegRsPgRcOlesslEstringgRcOallocatorlEpairlEconstsPstringcOvectorlEdoublecOallocatorlEdoublegRsPgRsPgRsPgRsPgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_vectorlEstringcOallocatorlEstringgRsPgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlEstringcOallocatorlEstringgRsPgRcLcLiteratorgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_maplEstringcOstringcOlesslEstringgRcOallocatorlEpairlEconstsPstringcOstringgRsPgRsPgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_NPA.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_NPAcLcLVDetector.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TMatrixTBaselEfloatgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TMatrixTBaselEdoublegR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TElementActionTlEfloatgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TElementPosActionTlEfloatgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TMatrixTlEfloatgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TMatrixTRow_constlEfloatgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TMatrixTRowlEfloatgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TMatrixTDiag_constlEfloatgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TMatrixTColumn_constlEfloatgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TMatrixTFlat_constlEfloatgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TMatrixTSub_constlEfloatgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TMatrixTSparseRow_constlEfloatgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TMatrixTSparseDiag_constlEfloatgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TMatrixTColumnlEfloatgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TMatrixTDiaglEfloatgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TMatrixTFlatlEfloatgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TMatrixTSublEfloatgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TMatrixTSparseRowlEfloatgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TMatrixTSparseDiaglEfloatgR.tagnum = -1 ;
+  G__TTrifoilPhysicsDictLN_TTrifoilPhysics.tagnum = -1 ;
+}
+
+
+extern "C" void G__cpp_setup_tagtableTTrifoilPhysicsDict() {
+
+   /* Setting up class,struct,union tag entry */
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TClass);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TBuffer);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TMemberInspector);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TObject);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_vectorlEdoublecOallocatorlEdoublegRsPgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_vectorlEboolcOallocatorlEboolgRsPgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_string);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_vectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgRcLcLiteratorgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_vectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgRcLcLiteratorgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TVectorTlEfloatgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TVectorTlEdoublegR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_vectorlEintcOallocatorlEintgRsPgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlEintcOallocatorlEintgRsPgRcLcLiteratorgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_vectorlETH1FcOallocatorlETH1FgRsPgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlETH1FcOallocatorlETH1FgRsPgRcLcLiteratorgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TTrifoilData);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_maplEstringcOvectorlEdoublecOallocatorlEdoublegRsPgRcOlesslEstringgRcOallocatorlEpairlEconstsPstringcOvectorlEdoublecOallocatorlEdoublegRsPgRsPgRsPgRsPgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_vectorlEstringcOallocatorlEstringgRsPgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlEstringcOallocatorlEstringgRsPgRcLcLiteratorgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_maplEstringcOstringcOlesslEstringgRcOallocatorlEpairlEconstsPstringcOstringgRsPgRsPgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_NPA);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_NPAcLcLVDetector);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TMatrixTBaselEfloatgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TMatrixTBaselEdoublegR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TElementActionTlEfloatgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TElementPosActionTlEfloatgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TMatrixTlEfloatgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TMatrixTRow_constlEfloatgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TMatrixTRowlEfloatgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TMatrixTDiag_constlEfloatgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TMatrixTColumn_constlEfloatgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TMatrixTFlat_constlEfloatgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TMatrixTSub_constlEfloatgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TMatrixTSparseRow_constlEfloatgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TMatrixTSparseDiag_constlEfloatgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TMatrixTColumnlEfloatgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TMatrixTDiaglEfloatgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TMatrixTFlatlEfloatgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TMatrixTSublEfloatgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TMatrixTSparseRowlEfloatgR);
+   G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TMatrixTSparseDiaglEfloatgR);
+   G__tagtable_setup(G__get_linked_tagnum_fwd(&G__TTrifoilPhysicsDictLN_TTrifoilPhysics),sizeof(TTrifoilPhysics),-1,29952,"TrifoilPhysics structure",G__setup_memvarTTrifoilPhysics,G__setup_memfuncTTrifoilPhysics);
+}
+extern "C" void G__cpp_setupTTrifoilPhysicsDict(void) {
+  G__check_setup_version(30051515,"G__cpp_setupTTrifoilPhysicsDict()");
+  G__set_cpp_environmentTTrifoilPhysicsDict();
+  G__cpp_setup_tagtableTTrifoilPhysicsDict();
+
+  G__cpp_setup_inheritanceTTrifoilPhysicsDict();
+
+  G__cpp_setup_typetableTTrifoilPhysicsDict();
+
+  G__cpp_setup_memvarTTrifoilPhysicsDict();
+
+  G__cpp_setup_memfuncTTrifoilPhysicsDict();
+  G__cpp_setup_globalTTrifoilPhysicsDict();
+  G__cpp_setup_funcTTrifoilPhysicsDict();
+
+   if(0==G__getsizep2memfunc()) G__get_sizep2memfuncTTrifoilPhysicsDict();
+  return;
+}
+class G__cpp_setup_initTTrifoilPhysicsDict {
+  public:
+    G__cpp_setup_initTTrifoilPhysicsDict() { G__add_setup_func("TTrifoilPhysicsDict",(G__incsetup)(&G__cpp_setupTTrifoilPhysicsDict)); G__call_setup_funcs(); }
+   ~G__cpp_setup_initTTrifoilPhysicsDict() { G__remove_setup_func("TTrifoilPhysicsDict"); }
+};
+G__cpp_setup_initTTrifoilPhysicsDict G__cpp_setup_initializerTTrifoilPhysicsDict;
+
diff --git a/NPLib/Trifoil/TTrifoilPhysicsDict.h b/NPLib/Trifoil/TTrifoilPhysicsDict.h
new file mode 100644
index 000000000..713c00b2f
--- /dev/null
+++ b/NPLib/Trifoil/TTrifoilPhysicsDict.h
@@ -0,0 +1,87 @@
+/********************************************************************
+* TTrifoilPhysicsDict.h
+* CAUTION: DON'T CHANGE THIS FILE. THIS FILE IS AUTOMATICALLY GENERATED
+*          FROM HEADER FILES LISTED IN G__setup_cpp_environmentXXX().
+*          CHANGE THOSE HEADER FILES AND REGENERATE THIS FILE.
+********************************************************************/
+#ifdef __CINT__
+#error TTrifoilPhysicsDict.h/C is only for compilation. Abort cint.
+#endif
+#include <stddef.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <math.h>
+#include <string.h>
+#define G__ANSIHEADER
+#define G__DICTIONARY
+#define G__PRIVATE_GVALUE
+#include "G__ci.h"
+#include "FastAllocString.h"
+extern "C" {
+extern void G__cpp_setup_tagtableTTrifoilPhysicsDict();
+extern void G__cpp_setup_inheritanceTTrifoilPhysicsDict();
+extern void G__cpp_setup_typetableTTrifoilPhysicsDict();
+extern void G__cpp_setup_memvarTTrifoilPhysicsDict();
+extern void G__cpp_setup_globalTTrifoilPhysicsDict();
+extern void G__cpp_setup_memfuncTTrifoilPhysicsDict();
+extern void G__cpp_setup_funcTTrifoilPhysicsDict();
+extern void G__set_cpp_environmentTTrifoilPhysicsDict();
+}
+
+
+#include "TObject.h"
+#include "TMemberInspector.h"
+#include "TTrifoilPhysics.h"
+#include <algorithm>
+namespace std { }
+using namespace std;
+
+#ifndef G__MEMFUNCBODY
+#endif
+
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TClass;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TBuffer;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TMemberInspector;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TObject;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_vectorlEdoublecOallocatorlEdoublegRsPgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_vectorlEboolcOallocatorlEboolgRsPgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_string;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_vectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlEROOTcLcLTSchemaHelpercOallocatorlEROOTcLcLTSchemaHelpergRsPgRcLcLiteratorgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_vectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlETVirtualArraymUcOallocatorlETVirtualArraymUgRsPgRcLcLiteratorgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TVectorTlEfloatgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TVectorTlEdoublegR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_vectorlEintcOallocatorlEintgRsPgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlEintcOallocatorlEintgRsPgRcLcLiteratorgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_vectorlETH1FcOallocatorlETH1FgRsPgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlETH1FcOallocatorlETH1FgRsPgRcLcLiteratorgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TTrifoilData;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_maplEstringcOvectorlEdoublecOallocatorlEdoublegRsPgRcOlesslEstringgRcOallocatorlEpairlEconstsPstringcOvectorlEdoublecOallocatorlEdoublegRsPgRsPgRsPgRsPgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_vectorlEstringcOallocatorlEstringgRsPgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_reverse_iteratorlEvectorlEstringcOallocatorlEstringgRsPgRcLcLiteratorgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_maplEstringcOstringcOlesslEstringgRcOallocatorlEpairlEconstsPstringcOstringgRsPgRsPgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_NPA;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_NPAcLcLVDetector;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTBaselEfloatgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTBaselEdoublegR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TElementActionTlEfloatgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TElementPosActionTlEfloatgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTlEfloatgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTRow_constlEfloatgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTRowlEfloatgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTDiag_constlEfloatgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTColumn_constlEfloatgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTFlat_constlEfloatgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTSub_constlEfloatgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTSparseRow_constlEfloatgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTSparseDiag_constlEfloatgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTColumnlEfloatgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTDiaglEfloatgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTFlatlEfloatgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTSublEfloatgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTSparseRowlEfloatgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TMatrixTSparseDiaglEfloatgR;
+extern G__linked_taginfo G__TTrifoilPhysicsDictLN_TTrifoilPhysics;
+
+/* STUB derived class for protected member access */
-- 
GitLab