diff --git a/NPLib/Tiara/Makefile b/NPLib/Tiara/Makefile
index 06b0916bf6e9785b0a581ca58295634fb7c71de7..423704968c7276754b291fb92d66f38dc9ab3fd8 100644
--- a/NPLib/Tiara/Makefile
+++ b/NPLib/Tiara/Makefile
@@ -9,13 +9,20 @@ all:            $(SHARELIB)
 ############### Detector ##############
 
 ## Sharc ##
-libTiara.so:	TTiaraBarrelData.o	TTiaraBarrelDataDict.o
+libTiara.so:	TTiaraBarrelData.o	TTiaraBarrelDataDict.o TTiaraHyballData.o	TTiaraHyballDataDict.o
+
 		$(LD) $(SOFLAGS) $^ $(OutPutOpt) $@
 
 TTiaraBarrelDataDict.cxx:	TTiaraBarrelData.h
 			rootcint -f $@ -c $^
+
+TTiaraHyballDataDict.cxx:	TTiaraHyballData.h
+			rootcint -f $@ -c $^
+
 # dependances
 TTiaraBarrelData.o:		TTiaraBarrelData.cxx	TTiaraBarrelData.h
+TTiaraHyballData.o:		TTiaraHyballData.cxx	TTiaraHyballData.h
+
 #######################################
 
 ############# Clean and More ##########
diff --git a/NPLib/Tiara/TTiaraBarrelData.h b/NPLib/Tiara/TTiaraBarrelData.h
index 3526d2bdcfa0d71cda7ac6906c10df2b7e6c58f0..2667befb63ed52e28541ccdee803e0f20937c357 100644
--- a/NPLib/Tiara/TTiaraBarrelData.h
+++ b/NPLib/Tiara/TTiaraBarrelData.h
@@ -96,77 +96,77 @@ class TTiaraBarrelData : public TNamed {
     /////////////////////           SETTERS           ////////////////////////
     inline void Set_Front_Upstream_DetectorNbr(const unsigned short& Front_Upstream_DetectorNbr)
     {fTiaraBarrel_Front_Upstream_DetectorNbr.push_back(Front_Upstream_DetectorNbr);}
-    inline unsigned short Get_Front_Upstream_DetectorNbr(unsigned int i)
+    inline unsigned short Get_Front_Upstream_DetectorNbr(const unsigned int& i) const 
     {return fTiaraBarrel_Front_Upstream_DetectorNbr[i];}
 
     inline void Set_Front_Upstream_StripNbr(const unsigned short& Front_Upstream_StripNbr)
     {fTiaraBarrel_Front_Upstream_StripNbr.push_back(Front_Upstream_StripNbr);}
-    inline unsigned short Get_Front_Upstream_StripNbr(unsigned int i)
+    inline unsigned short Get_Front_Upstream_StripNbr(const unsigned int& i) const
     {return fTiaraBarrel_Front_Upstream_StripNbr[i];}
 
     inline void Set_Front_Upstream_Energy(const double& Front_Upstream_Energy)
     {fTiaraBarrel_Front_Upstream_Energy.push_back(Front_Upstream_Energy);}
-    inline double Get_Front_Upstream_Energy(unsigned int i)
+    inline double Get_Front_Upstream_Energy(const unsigned int& i) const
     {return fTiaraBarrel_Front_Upstream_Energy[i];}
 
     inline void Set_Front_Upstream_Time(const double& Front_Upstream_Time)
     {fTiaraBarrel_Front_Upstream_Time.push_back(Front_Upstream_Time);}
-    inline double Get_Front_Upstream_Time(unsigned int i)
+    inline double Get_Front_Upstream_Time(const unsigned int& i) const 
     {return fTiaraBarrel_Front_Upstream_Time[i];}
 
     inline void Set_Front_Downstream_DetectorNbr(const unsigned short& Front_Downstream_DetectorNbr)
     {fTiaraBarrel_Front_Downstream_DetectorNbr.push_back(Front_Downstream_DetectorNbr);}
-    inline unsigned short Get_Front_Downstream_DetectorNbr(unsigned int i)
+    inline unsigned short Get_Front_Downstream_DetectorNbr(const unsigned int& i) const
     {return fTiaraBarrel_Front_Downstream_DetectorNbr[i];}
 
     inline void Set_Front_Downstream_StripNbr(const unsigned short& Front_Downstream_StripNbr)
     {fTiaraBarrel_Front_Downstream_StripNbr.push_back(Front_Downstream_StripNbr);}
-    inline unsigned short Get_Front_Downstream_StripNbr(unsigned int i)
+    inline unsigned short Get_Front_Downstream_StripNbr(const unsigned int& i) const
     {return fTiaraBarrel_Front_Downstream_StripNbr[i];}
 
     inline void Set_Front_Downstream_Energy(const double& Front_Downstream_Energy)
     {fTiaraBarrel_Front_Downstream_Energy.push_back(Front_Downstream_Energy);}
-    inline double Get_Front_Downstream_Energy(unsigned int i)
+    inline double Get_Front_Downstream_Energy(const unsigned int& i) const 
     {return fTiaraBarrel_Front_Downstream_Energy[i];}
 
     inline void Set_Front_Downstream_Time(const double& Front_Downstream_Time)
     {fTiaraBarrel_Front_Downstream_Time.push_back(Front_Downstream_Time);}
-    inline double Get_Front_Downstream_Time(unsigned int i)
+    inline double Get_Front_Downstream_Time(const unsigned int& i) const 
     {return fTiaraBarrel_Front_Downstream_Time[i];}
 
     inline void Set_Back_DetectorNbr(const unsigned short& Back_DetectorNbr)
     {fTiaraBarrel_Back_DetectorNbr.push_back(Back_DetectorNbr);}
-    inline unsigned short Get_Back_DetectorNbr(unsigned int i)
+    inline unsigned short Get_Back_DetectorNbr(const unsigned int& i) const 
     {return fTiaraBarrel_Back_DetectorNbr[i];}
 
     inline void Set_Back_Energy(const double& Back_Energy)
     {fTiaraBarrel_Back_Energy.push_back(Back_Energy);}
-    inline double Get_Back_Energy(unsigned int i)
+    inline double Get_Back_Energy(const unsigned int& i) const 
     {return fTiaraBarrel_Back_Energy[i];}
 
     inline void Set_Back_Time(const double& Back_Time)
     {fTiaraBarrel_Back_Time.push_back(Back_Time);}
-    inline double Get_Back_Time(unsigned int i)
+    inline double Get_Back_Time(const unsigned int& i) const 
     {return fTiaraBarrel_Back_Time[i];}
 
     inline void Set_Outer_DetectorNbr(const unsigned short& Outer_DetectorNbr)
     {fTiaraBarrel_Outer_DetectorNbr.push_back(Outer_DetectorNbr);}
-    inline unsigned short Get_Outer_DetectorNbr(unsigned int i)
+    inline unsigned short Get_Outer_DetectorNbr(const unsigned int& i) const 
     {return fTiaraBarrel_Outer_DetectorNbr[i];}
 
     inline void Set_Outer_StripNbr(const unsigned short& Outer_StripNbr)
     {fTiaraBarrel_Outer_StripNbr.push_back(Outer_StripNbr);}
-    inline unsigned short Get_Outer_StripNbr(unsigned int i)
+    inline unsigned short Get_Outer_StripNbr(const unsigned int& i) const 
     {return fTiaraBarrel_Outer_StripNbr[i];}
 
     inline void Set_Outer_Energy(const double& Outer_Energy)
     {fTiaraBarrel_Outer_Energy.push_back(Outer_Energy);}
-    inline double Get_Outer_Energy(unsigned int i)
+    inline double Get_Outer_Energy(const unsigned int& i) const 
     {return fTiaraBarrel_Outer_Energy[i];}
 
     inline void Set_Outer_Time(const double& Outer_Time)
     {fTiaraBarrel_Outer_Time.push_back(Outer_Time);}
-    inline double Get_Outer_Time(unsigned int i)
+    inline double Get_Outer_Time(const unsigned int& i) const 
     {return fTiaraBarrel_Outer_Time[i];}
 
     ClassDef(TTiaraBarrelData,1)  // TiaraData structure
diff --git a/NPLib/Tiara/TTiaraHyballData.h b/NPLib/Tiara/TTiaraHyballData.h
index f839013606dd50ba4a2d455e98e387ff46aafc53..f886a5f3b7ab4d13213a8be1f11bd8428aebd8ae 100644
--- a/NPLib/Tiara/TTiaraHyballData.h
+++ b/NPLib/Tiara/TTiaraHyballData.h
@@ -10,7 +10,7 @@
 /*****************************************************************************
  * Original Author: Adrien MATTA  contact address: a.matta@surrey.ac.uk      *
  *                                                                           *
- * Creation Date  : November 2012                                            *
+ * Creation Date  : November 2013                                            *
  * Last update    :                                                          *
  *---------------------------------------------------------------------------*
  * Decription:                                                               *
@@ -32,6 +32,16 @@ using namespace std ;
 #include "TNamed.h"
 
 class TTiaraHyballData : public TNamed {
+  
+  public: 
+    TTiaraHyballData();
+    ~TTiaraHyballData();
+ 
+  public:
+    void Clear();
+    void Clear(const Option_t*) {};
+    void Dump() const;
+
   private:
     vector<unsigned short>   fTiaraHyball_Ring_DetectorNbr;
     vector<unsigned short>   fTiaraHyball_Ring_StripNbr;
@@ -45,49 +55,61 @@ class TTiaraHyballData : public TNamed {
 
     ///////////// Fast Setters ////////////////////
   public:
+     inline void Set_Ring(const unsigned short& DetNbr, const unsigned short& StripNbr, const double& Energy, const double& Time){
+      Set_Ring_DetectorNbr(DetNbr);
+      Set_Ring_StripNbr(StripNbr);
+      Set_Ring_Energy(Energy);
+      Set_Ring_Time(Time);
+    };
 
+   inline void Set_Sector(const unsigned short& DetNbr, const unsigned short& StripNbr, const double& Energy, const double& Time){
+      Set_Sector_DetectorNbr(DetNbr);
+      Set_Sector_StripNbr(StripNbr);
+      Set_Sector_Energy(Energy);
+      Set_Sector_Time(Time);
+    };
 
 
     ///////////// Getter and Setter ////////////////
   public:
-    inline void Set_Ring_DetectorNbr(unsigned short& Ring_DetectorNbr)
+    inline void Set_Ring_DetectorNbr(const unsigned short& Ring_DetectorNbr)
     {fTiaraHyball_Ring_DetectorNbr.push_back(Ring_DetectorNbr);}
-    inline unsigned short Get_Ring_DetectorNbr(unsigned int& i)
+    inline unsigned short Get_Ring_DetectorNbr(const unsigned int& i) const 
     {return fTiaraHyball_Ring_DetectorNbr[i];}
 
-    inline void Set_Ring_StripNbr(unsigned short& Ring_StripNbr)
+    inline void Set_Ring_StripNbr(const unsigned short& Ring_StripNbr)
     {fTiaraHyball_Ring_StripNbr.push_back(Ring_StripNbr);}
-    inline unsigned short Get_Ring_StripNbr(unsigned int& i)
+    inline unsigned short Get_Ring_StripNbr(const unsigned int& i) const 
     {return fTiaraHyball_Ring_StripNbr[i];}
 
-    inline void Set_Ring_Energy(double& Ring_Energy)
+    inline void Set_Ring_Energy(const double& Ring_Energy)
     {fTiaraHyball_Ring_Energy.push_back(Ring_Energy);}
-    inline double Get_Ring_Energy(unsigned int& i)
+    inline double Get_Ring_Energy(const unsigned int& i) const 
     {return fTiaraHyball_Ring_Energy[i];}
 
-    inline void Set_Ring_Time(double& Ring_Time)
+    inline void Set_Ring_Time(const double& Ring_Time)
     {fTiaraHyball_Ring_Time.push_back(Ring_Time);}
-    inline double Get_Ring_Time(unsigned int& i)
+    inline double Get_Ring_Time(const unsigned int& i) const 
     {return fTiaraHyball_Ring_Time[i];}
 
-    inline void Set_Sector_DetectorNbr(unsigned short& Sector_DetectorNbr)
+    inline void Set_Sector_DetectorNbr(const unsigned short& Sector_DetectorNbr)
     {fTiaraHyball_Sector_DetectorNbr.push_back(Sector_DetectorNbr);}
-    inline unsigned short Get_Sector_DetectorNbr(unsigned int& i)
+    inline unsigned short Get_Sector_DetectorNbr(const unsigned int& i) const
     {return fTiaraHyball_Sector_DetectorNbr[i];}
 
-    inline void Set_Sector_StripNbr(unsigned short& Sector_StripNbr)
+    inline void Set_Sector_StripNbr(const unsigned short& Sector_StripNbr)
     {fTiaraHyball_Sector_StripNbr.push_back(Sector_StripNbr);}
-    inline unsigned short Get_Sector_StripNbr(unsigned int& i)
+    inline unsigned short Get_Sector_StripNbr(const unsigned int& i) const
     {return fTiaraHyball_Sector_StripNbr[i];}
 
-    inline void Set_Sector_Energy(double& Sector_Energy)
+    inline void Set_Sector_Energy(const double& Sector_Energy)
     {fTiaraHyball_Sector_Energy.push_back(Sector_Energy);}
-    inline double Get_Sector_Energy(unsigned int& i)
+    inline double Get_Sector_Energy(const unsigned int& i) const
     {return fTiaraHyball_Sector_Energy[i];}
 
-    inline void Set_Sector_Time(double& Sector_Time)
+    inline void Set_Sector_Time(const double& Sector_Time)
     {fTiaraHyball_Sector_Time.push_back(Sector_Time);}
-    inline double Get_Sector_Time(unsigned int& i)
+    inline double Get_Sector_Time(const unsigned int& i) const 
     {return fTiaraHyball_Sector_Time[i];}
 
 
diff --git a/NPLib/Tiara/libTiara.so b/NPLib/Tiara/libTiara.so
index 579fd1f5c9e818a4e6a40f48ee3840a3c4e3e503..2c92361e4f8b46ba009bfcf7289e8bfe1b6633fa 100755
Binary files a/NPLib/Tiara/libTiara.so and b/NPLib/Tiara/libTiara.so differ