51 TNamed *iOwner, TClass *iClass,
52 Bool_t iNeeded = kFALSE, TObject *iObject =
nullptr, Bool_t iOwned = kFALSE);
106 Bool_t
SetObject(TObject *iObject, Bool_t iOwned = kFALSE, Bool_t CheckClass = kTRUE);
150 TObject *
CloneObject(
const char *newname =
nullptr);
198 void Print(Option_t *option =
"")
const override;
278 const TObjArray *
GetSlotList(Bool_t ForceUpdate = kFALSE);
305 Bool_t
ConnectSlots(
const char *Slot1FullName,
const char *Slot2FullName);
345 void ClearObjects(
const char *PlaceName =
nullptr, Bool_t NonOwned = kTRUE);
TGo4FitNamed()
Default constructor.
virtual void FillSlotList(TSeqCollection *lst)
Fill list of TGo4FitSlot objects to provided collection.
TGo4FitSlot * FindSlot(const char *FullSlotName)
Find slot in list with given full name;.
void ClearSlot(TGo4FitSlot *slot, Bool_t NonOwned)
Clear object in specified slot.
TGo4FitSlot * SetObject(TObject *obj, Bool_t iOwned=kFALSE)
Set object to first suitable slot with defined ownership flag.
Bool_t ConnectSlots(TGo4FitSlot *slot1, TGo4FitSlot *slot2)
Connects first slot to second.
void PrepareSlotsForWriting()
void CheckDuplicatesOnSlot()
Resolve situation, when same object assigned to several slots with ownership flag.
ClassDef(TGo4FitSlotList, 1)
Int_t NumSlots()
Returns number of slots in list.
void SetSaveFlagForObjects(Int_t iSaveFlag, const char *PlaceName=nullptr)
Set save flag for object(s), assigned to fitter.
Bool_t IsEmptySlots()
Return kTRUE, if there are empty slots in list.
virtual ~TGo4FitSlotList()
TGo4FitSlot * GetSlot(Int_t nslot)
Returns slots from list with specified index.
void SetUpdateSlotList()
Update internal list of slots (if exists).
Bool_t CheckObjects(Bool_t MakeOut=kTRUE)
Check, if all necessary objects are provided.
TGo4FitSlot * IsObjectInSlots(TObject *obj)
Checks, if object assign to one of slots.
void ClearObjects(const char *PlaceName=nullptr, Bool_t NonOwned=kTRUE)
Clear object from slot(s), which are defined by PlaceName condition.
const TObjArray * GetSlotList(Bool_t ForceUpdate=kFALSE)
Return pointer in TObjArray with list of all slots in list.
Managing pointers on specific objects.
Bool_t fbConnected
If object is connected slot.
const char * GetObjectName() const
Return name of assigned object.
Bool_t fbOwned
0 - slot save if owned(default), 1 - saved always, 2 - saved never
Int_t GetSaveFlag() const
Returns save flag.
void ClearConnectionToSlot()
Clear connection to other slot.
TGo4FitSlot * GetConnectedSlot() const
Returns pointer to connected slot or 0, if not connected.
TClass * GetClass() const
Return pointer on class for desired object.
TObject * CloneObject(const char *newname=nullptr)
Clone object in slot and returns pointer on new object.
Bool_t IsEmpty() const
Return kTRUE, if no object in slot.
Bool_t fbNeeded
Flag, is this object should always be set.
void SetNeeded(Bool_t iNeeded)
Set requirement flag for object.
TClass * fxClass
Class of object, which should be assigned to slot.
Bool_t IsSuitableClass(TClass *cl) const
Checks, if class corresponds to specified for slot.
Bool_t IsRequired() const
Returns kTRUE, if object required, but not yet set.
void SetSaveFlag(Int_t iSaveFlag)
Set save flag for saving of object in slot, when slot stored to streamer: 0 - object will be saved if...
TObject * fxObject
Pointer on assigned object.
Bool_t ConnectToSlot(TGo4FitSlot *slot)
Connect this slot to provided slot.
void Print(Option_t *option="") const override
Print information on standard output.
void CheckOwnership()
Sets up ownership relation between object and owner of slot.
Bool_t GetOwned() const
Return ownership flag.
Bool_t IsSuitable(TObject *obj) const
Checks, if object class corresponds to class, specified for slot.
Bool_t GetNeeded() const
Return requirement status for slot.
virtual ~TGo4FitSlot()
Destroys TFo4FitSlot object.
Int_t fiSaveFlag
Describe saving of object in slot.
Bool_t CanConnectToSlot(TGo4FitSlot *slot)
Checks, if slot can be connected to other.
Bool_t IsObject() const
Return kTRUE, if object assigned to slot.
void SetDefaults(TNamed *iOwner, TClass *iClass)
Set basic fields of slot.
TGo4FitSlot()
Default constructor.
friend class TGo4FitSlotList
void Clear(Option_t *="") override
Clear pointer on object in slot.
void SetOwned(Bool_t iOwned=kTRUE)
Explicitly sets ownership flag.
Bool_t IsConnectedToSlot() const
Returns kTRUE, if slot connected to another slot.
void SetSaveSettings(Int_t save=-1, Int_t own=-1)
Bool_t SetObject(TObject *iObject, Bool_t iOwned=kFALSE, Bool_t CheckClass=kTRUE)
Sets object to slot.
void ClearObject()
Method remove object pointer.
TObject * GetObject() const
Return pointer on assigned object.