Public Member Functions | Protected Attributes
efl::eo::concrete Struct Reference

Creates concrete versions for Eo wrappers. More...

Public Member Functions

 concrete (Eo *eo)
 Class constructor. More...
 
 concrete ()
 Default constructor. More...
 
 ~concrete ()
 Class destructor.
 
 concrete (concrete const &other)
 
 concrete (concrete &&other)
 
concreteoperator= (concrete const &other)
 Assignment operator.
 
concreteoperator= (concrete &&other)
 
Eo_eo_ptr () const
 Return a pointer to the EO Object stored in this instance. More...
 
Eo_release ()
 Releases the reference from this concrete object and return the pointer to the EO Object stored in this instance. More...
 
void _reset (Eo *_ptr=nullptr)
 Reset the current pointer to reference a new Eo object.
 
 operator bool () const
 

Protected Attributes

Eo_eo_raw
 The opaque EO Object.
 

Detailed Description

Creates concrete versions for Eo wrappers.

This class creates the concrete version of all C++ Eo wrappers. It holds the Eo pointer that is used on all operations and provides some functions for manipulating it.

Constructor & Destructor Documentation

◆ concrete() [1/2]

efl::eo::concrete::concrete ( Eo eo)
inlineexplicit

Class constructor.

Parameters
eoThe EO Object.

efl::eo::concrete constructors semantics are that of stealing the EO Object lifecycle management. Its constructors do not increment the EO reference counter but the destructors do decrement.

◆ concrete() [2/2]

efl::eo::concrete::concrete ( )
inline

Default constructor.

Constructs a NULL initialized efl::eo::concrete object.

Referenced by ~concrete().

Member Function Documentation

◆ _eo_ptr()

Eo* efl::eo::concrete::_eo_ptr ( ) const
inline

Return a pointer to the EO Object stored in this instance.

Returns
A pointer to the opaque EO Object.

References _eo_raw.

◆ _release()

Eo* efl::eo::concrete::_release ( )
inline

Releases the reference from this concrete object and return the pointer to the EO Object stored in this instance.

Returns
A pointer to the opaque EO Object.

References _eo_raw.