Kigs Framework  Doc version 0.8
Open source multi purpose Rapid Application Development framework
Public Member Functions | List of all members
ABaseSystem Class Referenceabstract

#include <ABaseSystem.h>

Inheritance diagram for ABaseSystem:
CoreModifiable GenericRefCountedBaseClass

Public Member Functions

AObjectGetAObject ()
 
ABaseChannel * GetChannelByUID (IntU32 g_id)
 
ABaseStream * GetValidStream ()
 
virtual kstl::string GetChannelType ()=0
 
virtual void Animate (ATimeValue t)=0
 
virtual void SetupDraw ()=0
 
virtual bool UseOwnHierarchy ()=0
 
virtual void LinkTo (ABaseChannel *data)=0
 
virtual void UnLink ()=0
 
IntU32 * GetSonGroupIDList (ABaseChannel *first, IntU32 &count)
 
ABaseChannel * GetRootChannel ()
 
IntU32 GetLinksCount ()
 
void AddLinks ()
 
void RemoveLinks ()
 
void SetAObject (AObject *object)
 
virtual void UseAnimationLocalToGlobalData (bool b)=0
 
void UseEngineLocalToGlobalData (bool b)
 
void UpdateLocalToGlobalWhenLoop (bool b)
 
void DeleteChannelTree ()
 
void SetHierarchy (AObjectSkeletonResource *hierarchy)
 
void SetHierarchyFromSystem (ABaseSystem *sys)
 
void SortChannels ()
 
- Public Member Functions inherited from CoreModifiable
void Init ()
 Modifiable managmenent.
 
void EmptyItemList ()
 remove all items (sons)
 
CMSP GetInstanceByPath (const std::string &path)
 return the instance corresponding to the given path in sons tree
 
std::string GetRuntimeID () const
 ID.
 
CoreModifiableAttributegetAttribute (KigsID labelid) const
 Attribute management.
 
u32 getNbArrayElements (KigsID attributeLabel) const
 return element count for an array type attribute
 
template<typename attribute_type , typename value_type >
attribute_type * AddDynamicAttribute (KigsID ID, const value_type &value)
 Dynamic attribute management.
 
const kigs::unordered_map< KigsID, ModifiableMethodStruct > * GetMethods ()
 Method management.
 
bool aggregateWith (CMSP &item, ItemPosition pos=Last)
 Aggregate management.
 
void flagAsNotificationCenterRegistered ()
 Flags.
 
void InitParametersFromList (const std::vector< CoreModifiableAttribute * > *params)
 Utility. More...
 
virtual void InitModifiable ()
 default modifiable init : set all initparams to readonly and set initflag to true More...
 
virtual void UninitModifiable ()
 called when InitModifiable has failled : reset read/write flag on all init params More...
 
virtual void ProtectedDestroy ()
 Destroy method decrement refcounter and delete instance if no more used. More...
 
virtual void addUser (CoreModifiable *user)
 add the given parent to list
 
virtual void removeUser (CoreModifiable *user)
 remove user (parent)
 
virtual bool addItem (const CMSP &item, ItemPosition pos=Last)
 add item at first or last position
 
virtual bool removeItem (const CMSP &item)
 remove item (son)
 

Additional Inherited Members

- Static Public Member Functions inherited from CoreModifiable
static std::vector< CMSP > GetRootInstances (const KigsID &cid, bool exactTypeOnly=false)
 static method : return the set of all root instances of the given type
 
static void Append (std::string &XMLString, const std::list< CoreModifiable * > &toexport, bool recursive, ExportSettings *settings=nullptr)
 static method to export the several CoreModifiable to an XML file. if recursive flag is set to true, export also all sons tree More...
 
static void Export (const std::string &filename, CoreModifiable *toexport, bool recursive=false, ExportSettings *settings=nullptr)
 static method to export the given CoreModifiable to an XML file. if recursive flag is set to true, export also all sons tree More...
 
static XMLNodeExportToXMLNode (CoreModifiable *toexport, XML *owner_xml_file, bool recursive, ExportSettings *settings=nullptr)
 static method to export the given CoreModifiable to an XML Node. if recursive flag is set to true, export also all sons tree More...
 
static std::string ExportToXMLString (CoreModifiable *toexport, bool recursive, ExportSettings *settings=nullptr)
 static method to export the given CoreModifiable to an XML file. if recursive flag is set to true, export also all sons tree More...
 
static void Export (std::string &XMLString, const std::list< CoreModifiable * > &toexport, bool recursive, ExportSettings *settings=nullptr)
 static method to export the several CoreModifiable to an XML file. if recursive flag is set to true, export also all sons tree More...
 
static CMSP Import (const std::string &filename, bool noInit=false, bool keepImportFileName=false, ImportState *state=nullptr, const std::string &override_name="")
 return an new CoreModifiable instance using the description found in XML file given by name
 
static CMSP GetInstanceByGlobalPath (const std::string &path)
 static method : return the instance corresponding to the given path, and given search start
 
static void debugPrintfFullTree (int maxindent=3)
 Editor. More...
 
- Protected Member Functions inherited from CoreModifiable
void UpdateAggregates (const Timer &timer, void *addParam)
 Internals.
 
void Export (std::vector< CoreModifiable * > &savedList, XMLNode *currentNode, bool recursive, ExportSettings *settings)
 Export. More...
 
CoreModifiableAttributeGenericCreateDynamicAttribute (CoreModifiable::ATTRIBUTE_TYPE type, KigsID ID)
 create and add dynamic attribute except arrays
 
- Static Protected Member Functions inherited from CoreModifiable
template<typename StringType >
static CMSP Import (XMLNodeTemplate< StringType > *currentNode, CoreModifiable *currentModifiable, ImportState &importState)
 recusrive method to add sons and attributes found in the XML file
 

Detailed Description

Can not be used directly, base system

Member Function Documentation

◆ AddLinks()

void ABaseSystem::AddLinks ( )
inline

increment the ALinks count

◆ Animate()

virtual void ABaseSystem::Animate ( ATimeValue  t)
pure virtual

Overloaded by derived systems

Implemented in ABoneSystem.

◆ DeleteChannelTree()

void ABaseSystem::DeleteChannelTree ( )

delete all the channels

◆ GetAObject()

AObject* ABaseSystem::GetAObject ( )
inline

return a pointer on the AObject linked to this system

◆ GetChannelByUID()

ABaseChannel * ABaseSystem::GetChannelByUID ( IntU32  g_id)

return the channel acting on the given group ID

◆ GetChannelType()

virtual kstl::string ABaseSystem::GetChannelType ( )
pure virtual

return a classID for the default channel type

Implemented in ABoneSystem.

◆ GetLinksCount()

IntU32 ABaseSystem::GetLinksCount ( )
inline

return the ALinks count for this system

◆ GetRootChannel()

ABaseChannel* ABaseSystem::GetRootChannel ( )
inline

return the root channel

◆ GetSonGroupIDList()

IntU32 * ABaseSystem::GetSonGroupIDList ( ABaseChannel *  first,
IntU32 &  count 
)

construct a list of group id from the given group, with all the group sons, the list should be deleted after its use

◆ GetValidStream()

ABaseStream * ABaseSystem::GetValidStream ( )

Return a pointer on a stream that can be used by the system

◆ LinkTo()

virtual void ABaseSystem::LinkTo ( ABaseChannel *  data)
pure virtual

use the given data as the local to global data

◆ RemoveLinks()

void ABaseSystem::RemoveLinks ( )
inline

decrement the ALinks count

◆ SetAObject()

void ABaseSystem::SetAObject ( AObject object)
inline

Set the AObject using this ASystem

◆ SetHierarchy()

void ABaseSystem::SetHierarchy ( AObjectSkeletonResource hierarchy)

construct the channel tree with the given AObjectSkeletonResource , and call Init()

◆ SetHierarchyFromSystem()

void ABaseSystem::SetHierarchyFromSystem ( ABaseSystem sys)

copy the channel tree from the given ASystem , and call Init()

◆ SetupDraw()

virtual void ABaseSystem::SetupDraw ( )
pure virtual

Overloaded by derived systems

Implemented in ABoneSystem.

◆ SortChannels()

void ABaseSystem::SortChannels ( )

sort channel by AGroupID in the AChannel array

◆ UnLink()

virtual void ABaseSystem::UnLink ( )
pure virtual

stop using the link data

◆ UpdateLocalToGlobalWhenLoop()

void ABaseSystem::UpdateLocalToGlobalWhenLoop ( bool  b)
inline

Tell the ASystem to update the local to global data when the root channel animation(s) loop

◆ UseAnimationLocalToGlobalData()

virtual void ABaseSystem::UseAnimationLocalToGlobalData ( bool  b)
pure virtual

Tell the ASystem to use the root channel animation data

◆ UseEngineLocalToGlobalData()

void ABaseSystem::UseEngineLocalToGlobalData ( bool  b)
inline

Tell the ASystem not to use the root channel animation(s) data

◆ UseOwnHierarchy()

virtual bool ABaseSystem::UseOwnHierarchy ( )
pure virtual

Overloaded by derived systems

Implemented in ABoneSystem.


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