GSI Object Oriented Online Offline (Go4)  GO4-5.3.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Protected Member Functions | Private Attributes | List of all members
TGo4FitComponent Class Reference

#include <TGo4FitComponent.h>

+ Inheritance diagram for TGo4FitComponent:

Public Member Functions

 TGo4FitComponent ()
 
 TGo4FitComponent (const char *iName, const char *iTitle)
 
virtual ~TGo4FitComponent ()
 
TGo4FitParameterGetAmplPar ()
 
const char * GetAmplName ()
 
const char * GetAmplFullName ()
 
Double_t GetAmplValue ()
 
void SetAmplValue (Double_t iAmpl)
 
Double_t GetAmplError ()
 
void SetAmplError (Double_t iError)
 
Bool_t MakeAmpl (Bool_t isFixed=kFALSE)
 
Bool_t RemoveAmpl ()
 
virtual Bool_t CanAmplTouch ()
 
void SetRange (Int_t naxis, Double_t min, Double_t max)
 
void ExcludeRange (Int_t naxis, Double_t min, Double_t max)
 
void SetRangeMin (Int_t naxis, Double_t value)
 
void SetRangeMax (Int_t naxis, Double_t value)
 
void AddRangeCut (TCutG *cut, Bool_t exclude=kFALSE)
 
void ClearRanges (Int_t naxis=-1)
 
Bool_t IsAnyRangeLimits ()
 
Bool_t GetRangeMin (Int_t naxis, Double_t &value)
 
Bool_t GetRangeMax (Int_t naxis, Double_t &value)
 
Int_t GetNumRangeCondition () const
 
void GetRangeCondition (Int_t n, Int_t &typ, Int_t &naxis, Double_t &left, Double_t &right) const
 
void SetRangeCondition (Int_t n, Int_t typ, Int_t naxis, Double_t left, Double_t right)
 
void AddRangeCondition (Int_t typ, Int_t naxis, Double_t left, Double_t right)
 
void RemoveRangeCondition (Int_t n)
 
Int_t GetNumRangeCut () const
 
TCutG * GetRangeCut (Int_t n) const
 
Bool_t IsRangeCutExcluding (Int_t n)
 
void SetRangeCutExcluding (Int_t n, Bool_t exclude=kTRUE)
 
void RemoveRangeCut (Int_t n)
 
Bool_t CheckRangeConditions (const Double_t *values, Int_t numaxis)
 
virtual void CollectParsTo (TGo4FitParsList &list)
 
void SetUseBuffers (Bool_t iUse)
 
Bool_t GetUseBuffers ()
 
virtual void Print (Option_t *option) const
 
- Public Member Functions inherited from TGo4FitParsList
 TGo4FitParsList ()
 
 TGo4FitParsList (Bool_t IsParsOwned)
 
 TGo4FitParsList (const char *Name, const char *Title, Bool_t IsParsOwned)
 
virtual ~TGo4FitParsList ()
 
virtual Int_t NumPars ()
 
TGo4FitParameterGetPar (Int_t n)
 
Int_t GetParIndex (const TGo4FitParameter *par)
 
TGo4FitParameterFindPar (const char *ParName)
 
TGo4FitParameterFindPar (const char *OwnerFullName, const char *ParName)
 
TGo4FitParameterFindPar (TGo4FitParameter *par)
 
Double_t GetParValue (const char *ParName)
 
Bool_t SetParValue (const char *ParName, Double_t iValue)
 
void GetParsValues (Double_t *pars)
 
void SetParsValues (Double_t *pars)
 
Double_t GetParError (const char *ParName)
 
Bool_t SetParError (const char *ParName, Double_t iError)
 
virtual Bool_t SetParFixed (const char *ParName, Bool_t iFixed=kTRUE)
 
virtual Bool_t GetParFixed (const char *ParName)
 
Int_t NumFixedPars ()
 
Int_t NumFreePars ()
 
virtual Bool_t SetParRange (const char *ParName, Double_t RangeMin, Double_t RangeMax)
 
virtual Bool_t GetParRange (const char *ParName, Double_t &RangeMin, Double_t &RangeMax)
 
virtual Bool_t SetParEpsilon (const char *ParName, Double_t Epsilon)
 
virtual Bool_t GetParEpsilon (const char *ParName, Double_t &Epsilon)
 
void SetParName (Int_t n, const char *name)
 
const char * GetParName (Int_t n)
 
const char * GetParFullName (Int_t n)
 
void SetParsNames (const char *name0="Par0", const char *name1="Par1", const char *name2="Par2", const char *name3="Par3", const char *name4="Par4", const char *name5="Par5", const char *name6="Par6", const char *name7="Par7", const char *name8="Par8", const char *name9="Par9")
 
void SetParsValues (Double_t par0=0., Double_t par1=0., Double_t par2=0., Double_t par3=0., Double_t par4=0., Double_t par5=0., Double_t par6=0., Double_t par7=0., Double_t par8=0., Double_t par9=0.)
 
virtual void MemorizePars ()
 
virtual bool CanRollbackPars ()
 
virtual void RememberPars ()
 
Bool_t IsAllParsFixed ()
 
TGo4FitParameterCreatePar (const char *ParName, const char *Title, Double_t iValue=0)
 
Bool_t RemovePar (const char *name)
 
Bool_t RemovePar (TGo4FitParameter *par)
 
void PrintPars () const
 
void ClearPars ()
 
- Public Member Functions inherited from TGo4FitNamed
 TGo4FitNamed ()
 
 TGo4FitNamed (const char *Name, const char *Title, TNamed *Owner=0)
 
virtual ~TGo4FitNamed ()
 
const char * GetFullName ()
 
const char * GetOwnerFullName ()
 
void SetOwner (TNamed *iOwner)
 
TNamed * GetOwner ()
 
void Print (Option_t *option) const
 
- Public Member Functions inherited from TGo4FitSlotList
 TGo4FitSlotList ()
 
virtual ~TGo4FitSlotList ()
 
virtual void FillSlotList (TSeqCollection *lst)
 
void SetUpdateSlotList ()
 
const TObjArray * GetSlotList (Bool_t ForceUpdate=kFALSE)
 
Int_t NumSlots ()
 
TGo4FitSlotGetSlot (Int_t nslot)
 
TGo4FitSlotFindSlot (const char *FullSlotName)
 
Bool_t ConnectSlots (TGo4FitSlot *slot1, TGo4FitSlot *slot2)
 
Bool_t ConnectSlots (const char *Slot1FullName, const char *Slot2FullName)
 
TGo4FitSlotSetObject (TObject *obj, Bool_t iOwned=kFALSE)
 
TGo4FitSlotSetObject (const char *PlaceName, TObject *obj, Bool_t iOwned=kFALSE)
 
TGo4FitSlotIsObjectInSlots (TObject *obj)
 
Bool_t CheckObjects (Bool_t MakeOut=kTRUE)
 
Bool_t IsEmptySlots ()
 
void ClearObjects (const char *PlaceName=0, Bool_t NonOwned=kTRUE)
 
void ClearSlot (TGo4FitSlot *slot, Bool_t NonOwned)
 
void SetSaveFlagForObjects (Int_t iSaveFlag, const char *PlaceName=0)
 

Protected Member Functions

TGo4FitParameterNewParameter (const char *Name, const char *Title, Double_t iValue=0., Bool_t Fixed=kFALSE, Int_t AtIndx=-1)
 
TGo4FitParameterNewAmplitude (const char *Name=0, Double_t iValue=0., Bool_t IsFixed=kFALSE, Int_t AtIndx=0)
 
Int_t GetAmplIndex ()
 
void SetAmplIndex (Int_t iAmplIndex=-1)
 
- Protected Member Functions inherited from TGo4FitParsList
TGo4FitParameterAddPar (TGo4FitParameter *par)
 
TGo4FitParameterInsertPar (TGo4FitParameter *par, Int_t indx)
 
void SetParsOwner (TGo4FitNamed *iOwner)
 
void ClearParsBlocking ()
 
virtual TGo4FitParameterGet (Int_t n)
 
TGo4FitParameterFind (const char *ParName)
 
TGo4FitParameterFind (const char *OwnerFullName, const char *ParName)
 
TGo4FitParameterFind (TGo4FitParameter *par)
 
Bool_t RemoveParByIndex (Int_t indx)
 
- Protected Member Functions inherited from TGo4FitSlotList
void CheckDuplicatesOnSlot ()
 
void PrepareSlotsForWriting ()
 
 ClassDef (TGo4FitSlotList, 1)
 

Private Attributes

TArrayI fxRangeAxis
 
TArrayD fxRangeValue
 
TObjArray fxCuts
 
Int_t fiAmplIndex
 
Bool_t fbUseBuffers
 

Additional Inherited Members

- Protected Attributes inherited from TGo4FitSlotList
TObjArray * fxSlotList
 
Bool_t fbUpdateSlotList
 

Detailed Description

Basic abstract class, combining common properties of data and model.

Definition at line 29 of file TGo4FitComponent.h.

Constructor & Destructor Documentation

TGo4FitComponent::TGo4FitComponent ( )

Default constructor.

Definition at line 23 of file TGo4FitComponent.cxx.

TGo4FitComponent::TGo4FitComponent ( const char *  iName,
const char *  iTitle 
)

Creates TGo4FitComponent object.

Definition at line 27 of file TGo4FitComponent.cxx.

References fxCuts.

TGo4FitComponent::~TGo4FitComponent ( )
virtual

Destroys TGo4FitComponent object.

Definition at line 33 of file TGo4FitComponent.cxx.

Member Function Documentation

void TGo4FitComponent::AddRangeCondition ( Int_t  typ,
Int_t  naxis,
Double_t  left,
Double_t  right 
)

Add new range condition. For exact meaning of parameters see GetRangeCondition() method.

Definition at line 165 of file TGo4FitComponent.cxx.

References fxRangeAxis, fxRangeValue, and SetRangeCondition().

Referenced by ExcludeRange(), SetRange(), SetRangeMax(), and SetRangeMin().

void TGo4FitComponent::AddRangeCut ( TCutG *  cut,
Bool_t  exclude = kFALSE 
)

Add TCutG object as range condition for two-dimensional case. Region, defined by TCutG object, can be included or excluded from consideration according value of exclude flag.

Definition at line 224 of file TGo4FitComponent.cxx.

References fxCuts, and kExcludeCut.

Referenced by AddRangeCut(), TGo4FitPanel::Cmd_AddRangeCondition(), and Example13().

virtual Bool_t TGo4FitComponent::CanAmplTouch ( )
inlinevirtual

Signals, if amplitude parameter can be removed from or introduced to object.

Reimplemented in TGo4FitData, TGo4FitModelFunction, and TGo4FitModelFormula.

Definition at line 101 of file TGo4FitComponent.h.

Referenced by TGo4FitPanel::ChangeModelPar(), and TGo4FitPanel::FillNamedWidget().

Bool_t TGo4FitComponent::CheckRangeConditions ( const Double_t *  values,
Int_t  numaxis 
)
void TGo4FitComponent::ClearRanges ( Int_t  naxis = -1)

Clear all range conditions for given axis. If naxis=-1, all range conditions will be removed.

Definition at line 200 of file TGo4FitComponent.cxx.

References fxCuts, fxRangeAxis, and fxRangeValue.

Referenced by TGo4FitPanel::Button_SimpleFit(), TGo4FitPanel::Cmd_RemoveRangeConditions(), TGo4FitPanel::Wiz_DataClearRangesBtn_clicked(), and TGo4FitPanel::Wiz_TakeCurrentRange().

void TGo4FitComponent::CollectParsTo ( TGo4FitParsList list)
virtual

Collect all parameters to provided parameters list object. Not only parameters of TGo4FitComponent copies to list. All parameters, which are situated in encapsulated objects, also will be copied to this list.

Reimplemented from TGo4FitParsList.

Definition at line 359 of file TGo4FitComponent.cxx.

References TGo4FitParsList::CollectParsTo(), TGo4FitSlot::GetObject(), TGo4FitSlot::GetOwned(), TGo4FitSlotList::GetSlot(), and TGo4FitSlotList::NumSlots().

Referenced by TGo4Fitter::CollectAllPars(), and TGo4FitModel::Initialize().

void TGo4FitComponent::ExcludeRange ( Int_t  naxis,
Double_t  min,
Double_t  max 
)

Exclude axis range from consideration.

Definition at line 188 of file TGo4FitComponent.cxx.

References AddRangeCondition().

Referenced by TGo4FitPanel::Cmd_AddRangeCondition().

Double_t TGo4FitComponent::GetAmplError ( )

Return error of amplitude parameter. If none, return 0.

Definition at line 79 of file TGo4FitComponent.cxx.

References GetAmplPar(), and TGo4FitParameter::GetError().

Referenced by TGo4Fitter::PrintAmpls().

const char * TGo4FitComponent::GetAmplFullName ( )

Returns full name of amplitude parameter. If none, return 0.

Definition at line 65 of file TGo4FitComponent.cxx.

References GetAmplPar(), and TGo4FitNamed::GetFullName().

Referenced by TGo4Fitter::PrintAmpls().

Int_t TGo4FitComponent::GetAmplIndex ( )
inlineprotected

Returns index of amplitude parameter.

Definition at line 258 of file TGo4FitComponent.h.

References fiAmplIndex.

Referenced by TGo4FitModelFormula::GetExprPar(), TGo4FitModelFunction::GetFuncPar(), TGo4FitModel::RebuildShape(), and RemoveAmpl().

const char * TGo4FitComponent::GetAmplName ( )

Returns name of amplitude parameter. If none, return 0.

Definition at line 60 of file TGo4FitComponent.cxx.

References GetAmplPar().

TGo4FitParameter * TGo4FitComponent::GetAmplPar ( )
Double_t TGo4FitComponent::GetAmplValue ( )
Int_t TGo4FitComponent::GetNumRangeCondition ( ) const
inline
Int_t TGo4FitComponent::GetNumRangeCut ( ) const

Returns number of range cuts, assigned to object.

Definition at line 230 of file TGo4FitComponent.cxx.

References fxCuts.

Referenced by CheckRangeConditions(), TGo4FitPanel::Cmd_AddRangeCondition(), GetRangeMax(), GetRangeMin(), IsAnyRangeLimits(), Print(), and TGo4FitPanel::UpdateItem().

void TGo4FitComponent::GetRangeCondition ( Int_t  n,
Int_t &  typ,
Int_t &  naxis,
Double_t &  left,
Double_t &  right 
) const

Return value for specified range condition.

Following procedures produces correspondent values: typ=0: SetRange() typ=1: ExcludeRange() typ=2: SetRangeMin() right not defined typ=3: SetRangeMax() left not defined

Definition at line 103 of file TGo4FitComponent.cxx.

References fxRangeAxis, fxRangeValue, and GetNumRangeCondition().

Referenced by CheckRangeConditions(), TGo4FitGuiArrow::ExecuteEvent(), QFitRangeWidget::FillSpecificData(), TGo4FitGuiArrow::Locate(), TGo4FitPanel::PaintRange(), Print(), and TGo4FitPanel::SetItemText().

TCutG * TGo4FitComponent::GetRangeCut ( Int_t  n) const
Bool_t TGo4FitComponent::GetRangeMax ( Int_t  naxis,
Double_t &  value 
)

Defines maximum allowed value for given range. Returns kFALSE, if no range condition were specified for given axis.

Definition at line 280 of file TGo4FitComponent.cxx.

References fxRangeAxis, fxRangeValue, GetNumRangeCut(), GetRangeCut(), and kExcludeCut.

Bool_t TGo4FitComponent::GetRangeMin ( Int_t  naxis,
Double_t &  value 
)

Defines minimum allowed value for given range. Returns kFALSE, if no range condition were specified for given axis.

Definition at line 257 of file TGo4FitComponent.cxx.

References fxRangeAxis, fxRangeValue, GetNumRangeCut(), GetRangeCut(), and kExcludeCut.

Bool_t TGo4FitComponent::GetUseBuffers ( )
inline

Returns flag of usage of additional buffers. Buffers can only be created in Initialize procedure..

Definition at line 236 of file TGo4FitComponent.h.

References fbUseBuffers.

Referenced by TGo4FitPanel::FillNamedWidget(), and TGo4FitPanel::UpdateWizStackWidget().

Bool_t TGo4FitComponent::IsAnyRangeLimits ( )

Return kTRUE, if any range conditions were introduced.

Definition at line 219 of file TGo4FitComponent.cxx.

References GetNumRangeCondition(), and GetNumRangeCut().

Referenced by TGo4FitPanel::FillPopupForItem(), TGo4FitModel::Initialize(), and TGo4FitPanel::UpdateWizStackWidget().

Bool_t TGo4FitComponent::IsRangeCutExcluding ( Int_t  n)

Return kTRUE if cut exclude range

Definition at line 238 of file TGo4FitComponent.cxx.

References GetRangeCut(), and kExcludeCut.

Referenced by QFitRangeCutWidget::FillSpecificData().

Bool_t TGo4FitComponent::MakeAmpl ( Bool_t  isFixed = kFALSE)

Create amplitude parameter and adds it to parameters list. Typically amplitude is situated in the beginning of parameters list.

Definition at line 89 of file TGo4FitComponent.cxx.

References GetAmplPar(), NewAmplitude(), and TGo4FitParameter::SetFixed().

Referenced by QFitDataWidget::AmplChk_toggled(), and TGo4FitPanel::ChangeModelPar().

TGo4FitParameter * TGo4FitComponent::NewAmplitude ( const char *  Name = 0,
Double_t  iValue = 0.,
Bool_t  IsFixed = kFALSE,
Int_t  AtIndx = 0 
)
protected
TGo4FitParameter * TGo4FitComponent::NewParameter ( const char *  Name,
const char *  Title,
Double_t  iValue = 0.,
Bool_t  Fixed = kFALSE,
Int_t  AtIndx = -1 
)
protected
void TGo4FitComponent::Print ( Option_t *  option) const
virtual
Bool_t TGo4FitComponent::RemoveAmpl ( )

Remove amplitude parameter from parameters list.

Definition at line 96 of file TGo4FitComponent.cxx.

References GetAmplIndex(), GetAmplPar(), TGo4FitParsList::RemoveParByIndex(), and SetAmplIndex().

Referenced by QFitDataWidget::AmplChk_toggled(), and TGo4FitPanel::ChangeModelPar().

void TGo4FitComponent::RemoveRangeCondition ( Int_t  n)

Removes specified range condition.

Definition at line 171 of file TGo4FitComponent.cxx.

References fxRangeAxis, fxRangeValue, and GetNumRangeCondition().

Referenced by TGo4FitPanel::Cmd_RemoveRangeCondition().

void TGo4FitComponent::RemoveRangeCut ( Int_t  n)

Delete range cut with specified index.

Definition at line 248 of file TGo4FitComponent.cxx.

References fxCuts, and GetRangeCut().

Referenced by TGo4FitPanel::Cmd_RemoveRangeCondition().

void TGo4FitComponent::SetAmplError ( Double_t  iError)
void TGo4FitComponent::SetAmplIndex ( Int_t  iAmplIndex = -1)
inlineprotected

Set index of amplitude parameter.

Definition at line 263 of file TGo4FitComponent.h.

References fiAmplIndex.

Referenced by NewAmplitude(), and RemoveAmpl().

void TGo4FitComponent::SetAmplValue ( Double_t  iAmpl)
void TGo4FitComponent::SetRange ( Int_t  naxis,
Double_t  min,
Double_t  max 
)
void TGo4FitComponent::SetRangeCondition ( Int_t  n,
Int_t  typ,
Int_t  naxis,
Double_t  left,
Double_t  right 
)

Change specified range condition. Range condition should already exists before calling of these procedure. For exact meaning of parameters see GetRangeCondition() method.

Definition at line 137 of file TGo4FitComponent.cxx.

References fxRangeAxis, fxRangeValue, and GetNumRangeCondition().

Referenced by AddRangeCondition(), TGo4FitGuiArrow::ExecuteEvent(), and QFitRangeWidget::GetRangeData().

void TGo4FitComponent::SetRangeCutExcluding ( Int_t  n,
Bool_t  exclude = kTRUE 
)

Set type of range cut (excluding or including)

Definition at line 243 of file TGo4FitComponent.cxx.

References GetRangeCut(), and kExcludeCut.

Referenced by QFitRangeCutWidget::ExcludeCutChk_toggled().

void TGo4FitComponent::SetRangeMax ( Int_t  naxis,
Double_t  value 
)

Set maximum axis value, taken into consideration. All lager values will be removed from consideration independently from other range conditions.

Definition at line 196 of file TGo4FitComponent.cxx.

References AddRangeCondition().

Referenced by TGo4FitPanel::Cmd_AddRangeCondition().

void TGo4FitComponent::SetRangeMin ( Int_t  naxis,
Double_t  value 
)

Set minimum axis value, taken into consideration. All smaller values will be removed from consideration independently from other range conditions.

Definition at line 192 of file TGo4FitComponent.cxx.

References AddRangeCondition().

Referenced by TGo4FitPanel::Cmd_AddRangeCondition().

void TGo4FitComponent::SetUseBuffers ( Bool_t  iUse)
inline

Sets usage of additional buffers. Buffers can only be created in Initialize procedure..

Definition at line 230 of file TGo4FitComponent.h.

References fbUseBuffers.

Referenced by TGo4FitPanel::ChangeModelPar(), QFitDataWidget::UseBuffersChk_toggled(), TGo4FitPanel::Wiz_DataBufChk_toggled(), and TGo4FitPanel::Wiz_ModelBufChk_toggled().

Member Data Documentation

Bool_t TGo4FitComponent::fbUseBuffers
private

Specify usage of buffers after initialization

Definition at line 290 of file TGo4FitComponent.h.

Referenced by GetUseBuffers(), and SetUseBuffers().

Int_t TGo4FitComponent::fiAmplIndex
private

Index of amplitude parameter (-1 if none)

Definition at line 285 of file TGo4FitComponent.h.

Referenced by GetAmplIndex(), GetAmplPar(), Print(), SetAmplError(), SetAmplIndex(), and SetAmplValue().

TObjArray TGo4FitComponent::fxCuts
private

Array of TCutG objects, used for range selection.

Definition at line 280 of file TGo4FitComponent.h.

Referenced by AddRangeCut(), ClearRanges(), GetNumRangeCut(), GetRangeCut(), RemoveRangeCut(), and TGo4FitComponent().

TArrayI TGo4FitComponent::fxRangeAxis
private

Array for range conditions storage (axis indexes)

Definition at line 270 of file TGo4FitComponent.h.

Referenced by AddRangeCondition(), ClearRanges(), GetNumRangeCondition(), GetRangeCondition(), GetRangeMax(), GetRangeMin(), RemoveRangeCondition(), and SetRangeCondition().

TArrayD TGo4FitComponent::fxRangeValue
private

Array for range values storage.

Definition at line 275 of file TGo4FitComponent.h.

Referenced by AddRangeCondition(), ClearRanges(), GetRangeCondition(), GetRangeMax(), GetRangeMin(), RemoveRangeCondition(), and SetRangeCondition().


The documentation for this class was generated from the following files: