Anklang-0.3.0.dev956+gd75ac925 anklang-0.3.0.dev956+gd75ac925
ASE — Anklang Sound Engine (C++)

« « « Anklang Documentation
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
Ase::EventList< Event, Compare > Class Template Referencefinal

Maintain an array of unique Event structures with change notification. More...

#include "eventlist.hh"

Public Types

using Notify = std::function< void(const Event &event, int mod)>
 
using CIter = typename EventVector::const_iterator
 

Public Member Functions

 EventList (const Notify &n={}, const Compare &c={})
 
bool insert (const Event &event, Event *replaced=nullptr)
 
bool replace (const Event &event, Event *replaced=nullptr)
 Insert or replace event, notifies.
 
bool remove (const Event &event, Event *removed=nullptr)
 Only replace event, notifies.
 
const Eventlookup (const Event &event) const
 Return true if event was removed, notifies.
 
const Eventlookup_after (const Event &event) const
 Return pointer to matching event or nullptr.
 
const Eventfirst () const
 Return pointer to element that is >= event or nullptr.
 
const Eventlast () const
 Return first element or nullptr.
 
size_t size () const
 Return last element or nullptr.
 
void clear_silently ()
 Return the numberof elements.
 
template<class OrderedEventList >
OrderedEventList::ConstP ordered_events ()
 Clear list without notification.
 
CIter begin () const
 Create a read-only copy of this EventList (possibly cached).
 
CIter end () const
 Const iterator that points to the first element.
 
EventVector copy () const
 Const iterator that points one past the last element.
 
bool equals (const EventVector &ev) const
 

Detailed Description

template<class Event, class Compare>
class Ase::EventList< Event, Compare >

Maintain an array of unique Event structures with change notification.

Definition at line 24 of file eventlist.hh.

Member Typedef Documentation

◆ CIter

template<class Event , class Compare >
using Ase::EventList< Event, Compare >::CIter = typename EventVector::const_iterator

Definition at line 28 of file eventlist.hh.

◆ Notify

template<class Event , class Compare >
using Ase::EventList< Event, Compare >::Notify = std::function<void (const Event &event, int mod)>

Definition at line 27 of file eventlist.hh.

Constructor & Destructor Documentation

◆ EventList()

template<class Event , class Compare >
Ase::EventList< Event, Compare >::EventList ( const Notify n = {},
const Compare &  c = {} 
)
explicit

Definition at line 57 of file eventlist.hh.

Member Function Documentation

◆ begin()

template<class Event , class Compare >
CIter Ase::EventList< Event, Compare >::begin ( ) const

Create a read-only copy of this EventList (possibly cached).

Definition at line 41 of file eventlist.hh.

References std::vector::begin().

◆ clear_silently()

template<class Event , class Compare >
void Ase::EventList< Event, Compare >::clear_silently ( )

Return the numberof elements.

Definition at line 65 of file eventlist.hh.

◆ copy()

template<class Event , class Compare >
EventVector Ase::EventList< Event, Compare >::copy ( ) const

Const iterator that points one past the last element.

Definition at line 43 of file eventlist.hh.

◆ end()

template<class Event , class Compare >
CIter Ase::EventList< Event, Compare >::end ( ) const

Const iterator that points to the first element.

Definition at line 42 of file eventlist.hh.

References std::vector::end().

◆ equals()

template<class Event , class Compare >
bool Ase::EventList< Event, Compare >::equals ( const EventVector ev) const

Definition at line 44 of file eventlist.hh.

◆ first()

template<class Event , class Compare >
const Event * Ase::EventList< Event, Compare >::first ( ) const

Return pointer to element that is >= event or nullptr.

Definition at line 151 of file eventlist.hh.

References std::vector::empty().

◆ insert()

template<class Event , class Compare >
bool Ase::EventList< Event, Compare >::insert ( const Event event,
Event replaced = nullptr 
)

Definition at line 78 of file eventlist.hh.

◆ last()

template<class Event , class Compare >
const Event * Ase::EventList< Event, Compare >::last ( ) const

Return first element or nullptr.

Definition at line 157 of file eventlist.hh.

References std::vector::empty().

◆ lookup()

template<class Event , class Compare >
const Event * Ase::EventList< Event, Compare >::lookup ( const Event event) const

Return true if event was removed, notifies.

Definition at line 169 of file eventlist.hh.

References Ase::Aux::binary_lookup().

◆ lookup_after()

template<class Event , class Compare >
const Event * Ase::EventList< Event, Compare >::lookup_after ( const Event event) const

Return pointer to matching event or nullptr.

Definition at line 176 of file eventlist.hh.

References Ase::Aux::binary_lookup_insertion_pos().

◆ ordered_events()

template<class Event , class Compare >
template<class OrderedEventList >
OrderedEventList::ConstP Ase::EventList< Event, Compare >::ordered_events ( )

Clear list without notification.

Definition at line 184 of file eventlist.hh.

References ASE_ASSERT_RETURN.

◆ remove()

template<class Event , class Compare >
bool Ase::EventList< Event, Compare >::remove ( const Event event,
Event removed = nullptr 
)

Only replace event, notifies.

Definition at line 123 of file eventlist.hh.

References std::vector::back(), Ase::Aux::binary_lookup(), and std::vector::erase().

◆ replace()

template<class Event , class Compare >
bool Ase::EventList< Event, Compare >::replace ( const Event event,
Event replaced = nullptr 
)

Insert or replace event, notifies.

Definition at line 106 of file eventlist.hh.

References Ase::Aux::binary_lookup_insertion_pos().

◆ size()

template<class Event , class Compare >
size_t Ase::EventList< Event, Compare >::size ( ) const

Return last element or nullptr.

Definition at line 163 of file eventlist.hh.


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