neoGFX
Cross-platform C++ app/game engine
Loading...
Searching...
No Matches
neogfx::object< Base > Class Template Reference

#include <object.hpp>

Inheritance diagram for neogfx::object< Base >:
neolib::object< Base > neogfx::i_properties neolib::lifetime< Base > neolib::i_lifetime

Public Member Functions

i_objectas_object () override
 
void class_name (neolib::i_string &aClassName) const override
 
neogfx::object_type object_type () const override
 
void property_changed (i_property &) override
 
const i_propertiesproperties () const override
 
i_propertiesproperties () override
 
void register_property (i_property &aProperty) override
 
const neogfx::property_mapproperty_map () const override
 
- Public Member Functions inherited from neolib::object< Base >
 define_declared_event (Destroying, destroying)
 
 define_declared_event (Destroyed, destroyed)
 
 object (lifetime_state aState=lifetime_state::Creating)
 
 ~object ()
 
void set_destroying () override
 
void set_destroyed () override
 
bool is_alive () const final
 
bool is_destroyed () const final
 
- Public Member Functions inherited from neolib::lifetime< Base >
 lifetime (lifetime_state aState=lifetime_state::Alive)
 
virtual ~lifetime ()
 
lifetime_state object_state () const final
 
std::shared_ptr< std::atomic< lifetime_state > > object_state_ptr () const final
 
bool is_creating () const final
 
bool is_destroying () const final
 
void set_alive () override
 
- Public Member Functions inherited from neolib::i_lifetime
virtual ~i_lifetime ()=default
 
- Public Member Functions inherited from neogfx::i_properties
uint32_t count () const
 
std::string name (uint32_t aIndex) const
 
const i_propertyproperty (uint32_t aIndex) const
 
i_propertyproperty (uint32_t aIndex)
 

Additional Inherited Members

- Public Types inherited from neolib::lifetime< Base >
typedef neolib::destroyed_flag destroyed_flag
 
- Protected Member Functions inherited from neogfx::i_properties
neogfx::property_mapproperty_map ()
 

Detailed Description

template<typename Base = i_object>
class neogfx::object< Base >

Definition at line 34 of file object.hpp.

Member Function Documentation

◆ as_object()

template<typename Base = i_object>
i_object & neogfx::object< Base >::as_object ( )
inlineoverride

Definition at line 41 of file object.hpp.

◆ class_name()

template<typename Base = i_object>
void neogfx::object< Base >::class_name ( neolib::i_string aClassName) const
inlineoverride

Definition at line 47 of file object.hpp.

◆ object_type()

template<typename Base = i_object>
neogfx::object_type neogfx::object< Base >::object_type ( ) const
inlineoverride

Definition at line 51 of file object.hpp.

◆ properties() [1/2]

template<typename Base = i_object>
const i_properties & neogfx::object< Base >::properties ( ) const
inlineoverride

Definition at line 62 of file object.hpp.

◆ properties() [2/2]

template<typename Base = i_object>
i_properties & neogfx::object< Base >::properties ( )
inlineoverride

Definition at line 66 of file object.hpp.

◆ property_changed()

template<typename Base = i_object>
void neogfx::object< Base >::property_changed ( i_property )
inlineoverride

Definition at line 57 of file object.hpp.

◆ property_map()

template<typename Base = i_object>
const neogfx::property_map & neogfx::object< Base >::property_map ( ) const
inlineoverridevirtual

Implements neogfx::i_properties.

Definition at line 76 of file object.hpp.

◆ register_property()

template<typename Base = i_object>
void neogfx::object< Base >::register_property ( i_property aProperty)
inlineoverridevirtual

Implements neogfx::i_properties.

Definition at line 72 of file object.hpp.


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