flimEngine
GameObject Class Reference

#include <GameObject.h>

Inheritance diagram for GameObject:
Inheritance graph
Collaboration diagram for GameObject:
Collaboration graph

Public Member Functions

 GameObject ()
 
virtual ~GameObject ()
 
GameObject & operator= (const GameObject &)=default
 
 GameObject (const GameObject &)=default
 
errcode SubmitEntry ()
 Submit entry to the scene. More...
 
errcode SubmitExit ()
 Submit exit to the scene. More...
 
- Public Member Functions inherited from Updatable
 Updatable ()
 
virtual ~Updatable ()
 
 Updatable (const Updatable &)=delete
 
const Updatable & operator= (const Updatable &)=delete
 
virtual errcode Update ()
 Called every frame. More...
 
errcode SubmitUpdateRegistration ()
 Submit update registration. More...
 
errcode SubmitUpdateDeregistration ()
 Submit update deregistration. More...
 
- Public Member Functions inherited from Drawable
 Drawable ()
 
virtual ~Drawable ()
 
 Drawable (const Drawable &)=delete
 
const Drawable & operator= (const Drawable &)=delete
 
virtual errcode Draw ()
 Draw callback to override. More...
 
virtual errcode Draw2D ()
 
errcode SubmitDrawRegistration ()
 Submit draw registration. More...
 
errcode SubmitDrawDeregistration ()
 Submit draw deregistration. More...
 
std::list< Drawable * >::iterator GetDeletionIterator ()
 
errcode SetDeletionIterator (std::list< Drawable *>::iterator in)
 
- Public Member Functions inherited from Inputable
 Inputable ()
 
virtual ~Inputable ()
 
 Inputable (const Inputable &)=delete
 
const Inputable & operator= (const Inputable &)=delete
 
virtual errcode KeyPressed (AZUL_KEY key)
 Key pressed callback. More...
 
virtual errcode KeyReleased (AZUL_KEY key)
 Key released. More...
 
errcode SubmitInputRegistration (AZUL_KEY key, input_type type)
 Submit input registration. More...
 
errcode SubmitInputDeregistration (AZUL_KEY key, input_type type)
 Submit input deregistration. More...
 
std::list< Inputable * >::iterator GetDeletionIterator ()
 
errcode SetDeletionIterator (std::list< Inputable *>::iterator in)
 
- Public Member Functions inherited from Alarmable
 Alarmable ()
 
Alarmable & operator= (const Alarmable &)
 
virtual ~Alarmable ()
 
 Alarmable (const Alarmable &)
 
errcode SubmitAlarmDeregistration (AlarmableManager::ALARM_ID id)
 Submit alarm deregistration. More...
 
errcode SubmitAlarmRegistration (float t, AlarmableManager::ALARM_ID id)
 Submit alarm registration. More...
 
virtual void Alarm0 ()
 Alarm 0 callback. More...
 
virtual void Alarm1 ()
 Alarm 1 callback. More...
 
virtual void Alarm2 ()
 Alarm 2 callback. More...
 
float TimeLeft (AlarmableManager::ALARM_ID id)
 Time left on one of the alarms. More...
 
errcode ChangeTime (float t, AlarmableManager::ALARM_ID id)
 Change time. More...
 
errcode AddTime (float t, AlarmableManager::ALARM_ID id)
 Adds a time to 'id'. More...
 
errcode SubtractTime (float t, AlarmableManager::ALARM_ID id)
 Subtract time. More...
 
bool IsRegistered (AlarmableManager::ALARM_ID id)
 Query if 'id' is registered. More...
 
errcode SetDeletionIter (int alarmNumber, std::multimap< float, AlarmableManager::AlarmEvent >::const_iterator iter)
 
std::multimap< float, AlarmableManager::AlarmEvent >::const_iterator GetDeletionIter (int alarmNumber)
 
errcode SetRegistrationState (int alarmNumber, RegistrationState state)
 
- Public Member Functions inherited from Collidable
 Collidable ()
 
virtual ~Collidable ()
 
 Collidable (const Collidable &)=delete
 
const Collidable & operator= (const Collidable &)=delete
 
virtual errcode Collision (Collidable *)
 Collision callback. More...
 
virtual errcode CollisionEnter (Collidable *)
 Collision enter. More...
 
virtual errcode CollisionExit ()
 Collision exit. More...
 
virtual errcode CollisionTerrain (const CollisionVolumeAABB &)
 Collision terrain. More...
 
template<typename C >
errcode SubmitCollisionRegistration (C *c)
 Submit collision registration of your type. More...
 
template<typename C >
errcode SubmitCollisionDeregistration (C *c)
 Submit collision deregistration for your type. More...
 
const CollisionVolume & GetCollisionVolume () const
 
errcode SetColliderModel (Model *mod, VolumeType vol)
 Sets collider model. More...
 
errcode UpdateCollisionData (Matrix &mat)
 Updates the collision data described by matrix. More...
 
std::list< Collidable * >::iterator GetDeletionIter ()
 
errcode SetDeletionIter (std::list< Collidable *>::iterator in)
 
bool getColliding () const
 
void setColliding (bool coll)
 
const CollisionVolumeBSphere & getBSphere () const
 

Private Member Functions

virtual errcode SceneEntry ()
 Scene entry callback. More...
 
virtual errcode SceneExit ()
 Scene exit callback. More...
 

Private Attributes

RegistrationState regStateGO
 
GameObjectDeregistrationCommand * deregCommand
 
GameObjectRegistrationCommand * regCommand
 

Friends

class GameObjectRegistrationCommand
 
class GameObjectDeregistrationCommand
 

Additional Inherited Members

- Public Attributes inherited from Updatable
std::list< Updatable * >::iterator deleteIter
 

Constructor & Destructor Documentation

◆ GameObject() [1/2]

GameObject::GameObject ( )

◆ ~GameObject()

GameObject::~GameObject ( )
virtual

◆ GameObject() [2/2]

GameObject::GameObject ( const GameObject &  )
default

Member Function Documentation

◆ operator=()

GameObject& GameObject::operator= ( const GameObject &  )
default

Friends And Related Function Documentation

◆ GameObjectDeregistrationCommand

friend class GameObjectDeregistrationCommand
friend

◆ GameObjectRegistrationCommand

friend class GameObjectRegistrationCommand
friend

Member Data Documentation

◆ deregCommand

GameObjectDeregistrationCommand* GameObject::deregCommand
private

◆ regCommand

GameObjectRegistrationCommand* GameObject::regCommand
private

◆ regStateGO

RegistrationState GameObject::regStateGO
private

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