neoGFX
Cross-platform C++ app/game engine
Loading...
Searching...
No Matches
neolib::i_random_access_container< T > Class Template Referenceabstract

#include <i_random_access_container.hpp>

Inheritance diagram for neolib::i_random_access_container< T >:
neolib::i_sequence_container< T, i_random_access_const_iterator< T >, i_random_access_iterator< T > > neolib::i_container< T, ConstIteratorType, IteratorType > neolib::i_reference_counted neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_widget > > > neolib::i_contiguous_random_access_container< abstract_t< shader_uniform > > neolib::i_contiguous_random_access_container< abstract_t< stage_t > > neolib::i_contiguous_random_access_container< char > neolib::i_contiguous_random_access_container< abstract_t< T > > neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< abstract_type > > > neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_node_input_pin > > > neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_node_output_pin > > > neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_node_connection > > > neolib::i_contiguous_random_access_container< abstract_t< ng::ref_ptr< project > > > neolib::i_contiguous_random_access_container< abstract_t< neolib::ref_ptr< neogfx::i_transition > > > neolib::i_contiguous_random_access_container< abstract_t< neogfx::audio_device_info > > neolib::i_contiguous_random_access_container< abstract_t< neolib::ref_ptr< neogfx::i_audio_device > > > neolib::i_contiguous_random_access_container< abstract_t< neogfx::audio_data_format > > neolib::i_contiguous_random_access_container< abstract_t< size_type > > neolib::i_contiguous_random_access_container< abstract_t< neolib::string > > neolib::i_contiguous_random_access_container< abstract_t< id_cache_entry > > neolib::i_contiguous_random_access_container< abstract_t< gradient_list_entry > > neolib::i_contiguous_random_access_container< abstract_t< neolib::ref_ptr< i_hid_device > > > neolib::i_contiguous_random_access_container< abstract_t< uint8_t > > neolib::i_contiguous_random_access_container< abstract_t< element_ptr_t > > neolib::i_contiguous_random_access_container< abstract_t< shader_t > > neolib::i_contiguous_random_access_container< abstract_t< neogfx::tab_stop > > neolib::i_contiguous_random_access_container< abstract_t< texture_list_entry > > neolib::i_contiguous_random_access_container< abstract_t< string > > neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_plugin > > > neolib::i_contiguous_random_access_container< abstract_t< setting_value< value_type > > > neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_setting > > > neolib::i_deque< abstract_t< T > > neolib::i_contiguous_random_access_container< T > neolib::i_deque< T >

Public Types

typedef self_type abstract_type
 
- Public Types inherited from neolib::i_sequence_container< T, i_random_access_const_iterator< T >, i_random_access_iterator< T > >
typedef self_type abstract_type
 
typedef T value_type
 
typedef size_t size_type
 
typedef abstract_const_iterator::iterator_wrapper const_iterator
 
typedef abstract_iterator::iterator_wrapper iterator
 
typedef i_random_access_const_iterator< T > abstract_const_iterator
 
typedef i_random_access_iterator< T > abstract_iterator
 
- Public Types inherited from neolib::i_container< T, ConstIteratorType, IteratorType >
typedef T value_type
 
typedef size_t size_type
 
typedef ConstIteratorType abstract_const_iterator
 
typedef IteratorType abstract_iterator
 
typedef abstract_const_iterator::iterator_wrapper const_iterator
 
typedef abstract_iterator::iterator_wrapper iterator
 
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 
typedef std::reverse_iterator< iteratorreverse_iterator
 

Public Member Functions

virtual const value_typeat (size_type aIndex) const =0
 
virtual value_typeat (size_type aIndex)=0
 
virtual const value_typeoperator[] (size_type aIndex) const =0
 
virtual value_typeoperator[] (size_type aIndex)=0
 
- Public Member Functions inherited from neolib::i_sequence_container< T, i_random_access_const_iterator< T >, i_random_access_iterator< T > >
virtual size_type capacity () const=0
 
virtual void reserve (size_type aCapacity)=0
 
virtual void resize (size_type aSize)=0
 
virtual void resize (size_type aSize, const value_type &aValue)=0
 
iterator insert (const abstract_iterator &aPosition, const value_type &aValue)
 
iterator insert (const abstract_const_iterator &aPosition, const value_type &aValue)
 
virtual void push_back (const value_type &aValue)=0
 
virtual void pop_back ()=0
 
virtual const value_typefront () const=0
 
virtual value_typefront ()=0
 
virtual const value_typeback () const=0
 
virtual value_typeback ()=0
 
- Public Member Functions inherited from neolib::i_container< T, ConstIteratorType, IteratorType >
virtual size_type size () const noexcept=0
 
virtual size_type max_size () const noexcept=0
 
bool empty () const noexcept
 
const_iterator cbegin () const
 
const_iterator begin () const
 
iterator begin ()
 
const_iterator cend () const
 
const_iterator end () const
 
iterator end ()
 
const_reverse_iterator crbegin () const
 
const_reverse_iterator rbegin () const
 
reverse_iterator rbegin ()
 
const_reverse_iterator crend () const
 
const_reverse_iterator rend () const
 
reverse_iterator rend ()
 
iterator erase (const abstract_iterator &aPosition)
 
iterator erase (const abstract_const_iterator &aPosition)
 
iterator erase (const abstract_iterator &aFirst, const abstract_iterator &aLast)
 
iterator erase (const abstract_const_iterator &aFirst, const abstract_const_iterator &aLast)
 
virtual void clear ()=0
 
virtual void assign (const i_container &aRhs)=0
 
i_containeroperator= (const i_container &aRhs)
 
- Public Member Functions inherited from neolib::i_reference_counted
virtual ~i_reference_counted ()=default
 
virtual void add_ref () const noexcept=0
 
virtual void release () const =0
 
virtual int32_t use_count () const noexcept=0
 
virtual const i_reference_countedrelease_and_take_ownership () const =0
 
virtual i_reference_countedrelease_and_take_ownership ()=0
 
virtual void pin () const noexcept=0
 
virtual void unpin () const =0
 
virtual i_ref_control_blockcontrol_block ()=0
 

Additional Inherited Members

- Protected Types inherited from neolib::i_container< T, ConstIteratorType, IteratorType >
typedef i_container< T, ConstIteratorType, IteratorTypegeneric_container_type
 

Detailed Description

template<typename T>
class neolib::i_random_access_container< T >

Definition at line 44 of file i_random_access_container.hpp.

Member Typedef Documentation

◆ abstract_type

template<typename T >
typedef self_type neolib::i_random_access_container< T >::abstract_type

Definition at line 49 of file i_random_access_container.hpp.

Member Function Documentation

◆ at() [1/2]

template<typename T >
virtual const value_type & neolib::i_random_access_container< T >::at ( size_type  aIndex) const
pure virtual

Implemented in neolib::i_contiguous_random_access_container< T >, neolib::deque< T >, neolib::string, neolib::vector< T >, neolib::i_contiguous_random_access_container< abstract_t< element_ptr_t > >, neolib::i_contiguous_random_access_container< abstract_t< gradient_list_entry > >, neolib::i_contiguous_random_access_container< abstract_t< id_cache_entry > >, neolib::i_contiguous_random_access_container< abstract_t< neogfx::audio_data_format > >, neolib::i_contiguous_random_access_container< abstract_t< neogfx::audio_device_info > >, neolib::i_contiguous_random_access_container< abstract_t< neogfx::tab_stop > >, neolib::i_contiguous_random_access_container< abstract_t< neolib::ref_ptr< i_hid_device > > >, neolib::i_contiguous_random_access_container< abstract_t< neolib::ref_ptr< neogfx::i_audio_device > > >, neolib::i_contiguous_random_access_container< abstract_t< neolib::ref_ptr< neogfx::i_transition > > >, neolib::i_contiguous_random_access_container< abstract_t< neolib::string > >, neolib::i_contiguous_random_access_container< abstract_t< ng::ref_ptr< project > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< abstract_type > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_node_connection > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_node_input_pin > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_node_output_pin > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_plugin > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_setting > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_widget > > >, neolib::i_contiguous_random_access_container< abstract_t< setting_value< value_type > > >, neolib::i_contiguous_random_access_container< abstract_t< shader_t > >, neolib::i_contiguous_random_access_container< abstract_t< shader_uniform > >, neolib::i_contiguous_random_access_container< abstract_t< size_type > >, neolib::i_contiguous_random_access_container< abstract_t< stage_t > >, neolib::i_contiguous_random_access_container< abstract_t< string > >, neolib::i_contiguous_random_access_container< abstract_t< T > >, neolib::i_contiguous_random_access_container< abstract_t< texture_list_entry > >, neolib::i_contiguous_random_access_container< abstract_t< uint8_t > >, and neolib::i_contiguous_random_access_container< char >.

◆ at() [2/2]

template<typename T >
virtual value_type & neolib::i_random_access_container< T >::at ( size_type  aIndex)
pure virtual

Implemented in neolib::deque< T >, neolib::string, neolib::vector< T >, neolib::i_contiguous_random_access_container< T >, neolib::i_contiguous_random_access_container< abstract_t< element_ptr_t > >, neolib::i_contiguous_random_access_container< abstract_t< gradient_list_entry > >, neolib::i_contiguous_random_access_container< abstract_t< id_cache_entry > >, neolib::i_contiguous_random_access_container< abstract_t< neogfx::audio_data_format > >, neolib::i_contiguous_random_access_container< abstract_t< neogfx::audio_device_info > >, neolib::i_contiguous_random_access_container< abstract_t< neogfx::tab_stop > >, neolib::i_contiguous_random_access_container< abstract_t< neolib::ref_ptr< i_hid_device > > >, neolib::i_contiguous_random_access_container< abstract_t< neolib::ref_ptr< neogfx::i_audio_device > > >, neolib::i_contiguous_random_access_container< abstract_t< neolib::ref_ptr< neogfx::i_transition > > >, neolib::i_contiguous_random_access_container< abstract_t< neolib::string > >, neolib::i_contiguous_random_access_container< abstract_t< ng::ref_ptr< project > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< abstract_type > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_node_connection > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_node_input_pin > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_node_output_pin > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_plugin > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_setting > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_widget > > >, neolib::i_contiguous_random_access_container< abstract_t< setting_value< value_type > > >, neolib::i_contiguous_random_access_container< abstract_t< shader_t > >, neolib::i_contiguous_random_access_container< abstract_t< shader_uniform > >, neolib::i_contiguous_random_access_container< abstract_t< size_type > >, neolib::i_contiguous_random_access_container< abstract_t< stage_t > >, neolib::i_contiguous_random_access_container< abstract_t< string > >, neolib::i_contiguous_random_access_container< abstract_t< T > >, neolib::i_contiguous_random_access_container< abstract_t< texture_list_entry > >, neolib::i_contiguous_random_access_container< abstract_t< uint8_t > >, and neolib::i_contiguous_random_access_container< char >.

◆ operator[]() [1/2]

template<typename T >
virtual const value_type & neolib::i_random_access_container< T >::operator[] ( size_type  aIndex) const
pure virtual

Implemented in neolib::i_contiguous_random_access_container< T >, neolib::deque< T >, neolib::string, neolib::vector< T >, neolib::i_contiguous_random_access_container< abstract_t< element_ptr_t > >, neolib::i_contiguous_random_access_container< abstract_t< gradient_list_entry > >, neolib::i_contiguous_random_access_container< abstract_t< id_cache_entry > >, neolib::i_contiguous_random_access_container< abstract_t< neogfx::audio_data_format > >, neolib::i_contiguous_random_access_container< abstract_t< neogfx::audio_device_info > >, neolib::i_contiguous_random_access_container< abstract_t< neogfx::tab_stop > >, neolib::i_contiguous_random_access_container< abstract_t< neolib::ref_ptr< i_hid_device > > >, neolib::i_contiguous_random_access_container< abstract_t< neolib::ref_ptr< neogfx::i_audio_device > > >, neolib::i_contiguous_random_access_container< abstract_t< neolib::ref_ptr< neogfx::i_transition > > >, neolib::i_contiguous_random_access_container< abstract_t< neolib::string > >, neolib::i_contiguous_random_access_container< abstract_t< ng::ref_ptr< project > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< abstract_type > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_node_connection > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_node_input_pin > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_node_output_pin > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_plugin > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_setting > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_widget > > >, neolib::i_contiguous_random_access_container< abstract_t< setting_value< value_type > > >, neolib::i_contiguous_random_access_container< abstract_t< shader_t > >, neolib::i_contiguous_random_access_container< abstract_t< shader_uniform > >, neolib::i_contiguous_random_access_container< abstract_t< size_type > >, neolib::i_contiguous_random_access_container< abstract_t< stage_t > >, neolib::i_contiguous_random_access_container< abstract_t< string > >, neolib::i_contiguous_random_access_container< abstract_t< T > >, neolib::i_contiguous_random_access_container< abstract_t< texture_list_entry > >, neolib::i_contiguous_random_access_container< abstract_t< uint8_t > >, and neolib::i_contiguous_random_access_container< char >.

◆ operator[]() [2/2]

template<typename T >
virtual value_type & neolib::i_random_access_container< T >::operator[] ( size_type  aIndex)
pure virtual

Implemented in neolib::deque< T >, neolib::string, neolib::vector< T >, neolib::i_contiguous_random_access_container< T >, neolib::i_contiguous_random_access_container< abstract_t< element_ptr_t > >, neolib::i_contiguous_random_access_container< abstract_t< gradient_list_entry > >, neolib::i_contiguous_random_access_container< abstract_t< id_cache_entry > >, neolib::i_contiguous_random_access_container< abstract_t< neogfx::audio_data_format > >, neolib::i_contiguous_random_access_container< abstract_t< neogfx::audio_device_info > >, neolib::i_contiguous_random_access_container< abstract_t< neogfx::tab_stop > >, neolib::i_contiguous_random_access_container< abstract_t< neolib::ref_ptr< i_hid_device > > >, neolib::i_contiguous_random_access_container< abstract_t< neolib::ref_ptr< neogfx::i_audio_device > > >, neolib::i_contiguous_random_access_container< abstract_t< neolib::ref_ptr< neogfx::i_transition > > >, neolib::i_contiguous_random_access_container< abstract_t< neolib::string > >, neolib::i_contiguous_random_access_container< abstract_t< ng::ref_ptr< project > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< abstract_type > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_node_connection > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_node_input_pin > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_node_output_pin > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_plugin > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_setting > > >, neolib::i_contiguous_random_access_container< abstract_t< ref_ptr< i_widget > > >, neolib::i_contiguous_random_access_container< abstract_t< setting_value< value_type > > >, neolib::i_contiguous_random_access_container< abstract_t< shader_t > >, neolib::i_contiguous_random_access_container< abstract_t< shader_uniform > >, neolib::i_contiguous_random_access_container< abstract_t< size_type > >, neolib::i_contiguous_random_access_container< abstract_t< stage_t > >, neolib::i_contiguous_random_access_container< abstract_t< string > >, neolib::i_contiguous_random_access_container< abstract_t< T > >, neolib::i_contiguous_random_access_container< abstract_t< texture_list_entry > >, neolib::i_contiguous_random_access_container< abstract_t< uint8_t > >, and neolib::i_contiguous_random_access_container< char >.


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