00001 //--------------------------------------------------------------- 00002 // Go4 Release Package v2.10-5 (build 21005) 00003 // 03-Nov-2005 00004 //--------------------------------------------------------------- 00005 // The GSI Online Offline Object Oriented (Go4) Project 00006 // Experiment Data Processing at DVEE department, GSI 00007 //--------------------------------------------------------------- 00008 // 00009 //Copyright (C) 2000- Gesellschaft f. Schwerionenforschung, GSI 00010 // Planckstr. 1, 64291 Darmstadt, Germany 00011 //Contact: http://go4.gsi.de 00012 //---------------------------------------------------------------- 00013 //This software can be used under the license agreements as stated 00014 //in Go4License.txt file which is part of the distribution. 00015 //---------------------------------------------------------------- 00016 #ifndef TGO4FITDATARIDGE_H 00017 #define TGO4FITDATARIDGE_H 00018 #include "TArrayI.h" 00019 #include "TGo4FitData.h" 00020 #include "TGo4FitSlot.h" 00021 00033 class TGo4FitDataRidge : public TGo4FitData { 00034 public: 00035 00039 TGo4FitDataRidge(); 00040 00046 TGo4FitDataRidge(const char* iName, TGo4FitData* Data = 0, Int_t SelectedAxis = 1); 00047 00051 virtual ~TGo4FitDataRidge(); 00052 00056 void SetData(TGo4FitData* iData, Bool_t Owned) { fxData.SetObject(iData,Owned); } 00057 00061 TGo4FitData* GetData() const { return dynamic_cast<TGo4FitData*> (fxData.GetObject()); } 00062 00066 void SetSelectedAxis(Int_t naxis) { fiSelectedAxis = naxis; } 00067 00071 Int_t GetSelectedAxis() { return fiSelectedAxis; } 00072 00076 TGo4FitDataIter* MakeIter(); 00077 00081 virtual void FillSlotList(TSeqCollection* list); 00082 00086 virtual void Print(Option_t* option) const; 00087 00088 protected: 00089 00093 TGo4FitSlot fxData; 00094 00098 Int_t fiSelectedAxis; 00099 00100 ClassDef(TGo4FitDataRidge,1) 00101 }; 00102 00103 // ***************************************************************************** 00104 00105 class TGo4FitDataRidgeIter : public TGo4FitDataIter { 00106 public: 00107 TGo4FitDataRidgeIter(); 00108 TGo4FitDataRidgeIter(TGo4FitDataRidge* data); 00109 ~TGo4FitDataRidgeIter(); 00110 00111 protected: 00112 virtual TGo4FitData* GetData() const { return fxData; } 00113 virtual Bool_t StartReset(); 00114 virtual Bool_t ReadCurrentPoint(); 00115 virtual Bool_t ShiftToNextPoint(); 00116 00117 private: 00118 TGo4FitDataRidge* fxData; 00119 TGo4FitDataIter* iter; 00120 TArrayD fxOwnScales; 00121 00122 ClassDef(TGo4FitDataRidgeIter,1) 00123 }; 00124 00125 #endif // TGO4FITDATARIDGE_H 00126 00127 //----------------------------END OF GO4 SOURCE FILE ---------------------