F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
Fw::RedBlackTreeSet< T, C > Class Template Referencefinal

#include <Fw/DataStructures/RedBlackTreeSet.hpp>

Inheritance diagram for Fw::RedBlackTreeSet< T, C >:
Fw::SetBase< T > Fw::SizedContainer

Public Types

using ConstIterator = SetConstIterator< T >
 The type of a const iterator. More...
 
using Node = typename RedBlackTreeSetOrMapImpl< T, Nil >::Node
 The type of a tree node. More...
 
using Nodes = Node[C]
 The type of the tree node array. More...
 
using Index = typename RedBlackTreeSetOrMapImpl< T, Nil >::Index
 The type of a tree node index. More...
 
using FreeNodes = Index[C]
 The type of the free node array. More...
 
- Public Types inherited from Fw::SetBase< T >
using ConstIterator = SetConstIterator< T >
 The type of a set const iterator. More...
 

Public Member Functions

 RedBlackTreeSet ()
 Zero-argument constructor. More...
 
 RedBlackTreeSet (const RedBlackTreeSet< T, C > &set)
 Copy constructor. More...
 
 ~RedBlackTreeSet () override=default
 Destructor. More...
 
RedBlackTreeSet< T, C > & operator= (const RedBlackTreeSet< T, C > &set)
 operator= More...
 
ConstIterator begin () const override
 
void clear () override
 Clear the set. More...
 
ConstIterator end () const override
 
Success find (const T &element) const override
 
FwSizeType getCapacity () const override
 
FwSizeType getSize () const override
 
Success insert (const T &element) override
 
Success remove (const T &element) override
 
- Public Member Functions inherited from Fw::SetBase< T >
void copyDataFrom (const SetBase< T > &set)
 Copy data from another set. More...
 
- Public Member Functions inherited from Fw::SizedContainer
bool isEmpty () const
 
bool isFull () const
 

Friends

template<typename TT , FwSizeType CC>
class RedBlackTreeSetTester
 

Additional Inherited Members

- Protected Member Functions inherited from Fw::SetBase< T >
 SetBase ()
 Zero-argument constructor. More...
 
virtual ~SetBase ()=default
 Destructor. More...
 
- Protected Member Functions inherited from Fw::SizedContainer
 SizedContainer ()
 Zero-argument constructor. More...
 
virtual ~SizedContainer ()=default
 Destructor. More...
 

Detailed Description

template<typename T, FwSizeType C>
class Fw::RedBlackTreeSet< T, C >

Definition at line 15 of file RedBlackTreeSet.hpp.

Member Typedef Documentation

◆ ConstIterator

template<typename T , FwSizeType C>
using Fw::RedBlackTreeSet< T, C >::ConstIterator = SetConstIterator<T>

The type of a const iterator.

Definition at line 35 of file RedBlackTreeSet.hpp.

◆ FreeNodes

template<typename T , FwSizeType C>
using Fw::RedBlackTreeSet< T, C >::FreeNodes = Index[C]

The type of the free node array.

Definition at line 47 of file RedBlackTreeSet.hpp.

◆ Index

template<typename T , FwSizeType C>
using Fw::RedBlackTreeSet< T, C >::Index = typename RedBlackTreeSetOrMapImpl<T, Nil>::Index

The type of a tree node index.

Definition at line 44 of file RedBlackTreeSet.hpp.

◆ Node

template<typename T , FwSizeType C>
using Fw::RedBlackTreeSet< T, C >::Node = typename RedBlackTreeSetOrMapImpl<T, Nil>::Node

The type of a tree node.

Definition at line 38 of file RedBlackTreeSet.hpp.

◆ Nodes

template<typename T , FwSizeType C>
using Fw::RedBlackTreeSet< T, C >::Nodes = Node[C]

The type of the tree node array.

Definition at line 41 of file RedBlackTreeSet.hpp.

Constructor & Destructor Documentation

◆ RedBlackTreeSet() [1/2]

template<typename T , FwSizeType C>
Fw::RedBlackTreeSet< T, C >::RedBlackTreeSet ( )
inline

Zero-argument constructor.

Definition at line 55 of file RedBlackTreeSet.hpp.

◆ RedBlackTreeSet() [2/2]

template<typename T , FwSizeType C>
Fw::RedBlackTreeSet< T, C >::RedBlackTreeSet ( const RedBlackTreeSet< T, C > &  set)
inline

Copy constructor.

Definition at line 58 of file RedBlackTreeSet.hpp.

◆ ~RedBlackTreeSet()

template<typename T , FwSizeType C>
Fw::RedBlackTreeSet< T, C >::~RedBlackTreeSet ( )
overridedefault

Destructor.

Member Function Documentation

◆ begin()

template<typename T , FwSizeType C>
ConstIterator Fw::RedBlackTreeSet< T, C >::begin ( ) const
inlineoverridevirtual

Get the begin iterator

Returns
The iterator

Implements Fw::SetBase< T >.

Definition at line 76 of file RedBlackTreeSet.hpp.

◆ clear()

template<typename T , FwSizeType C>
void Fw::RedBlackTreeSet< T, C >::clear ( )
inlineoverridevirtual

Clear the set.

Implements Fw::SizedContainer.

Definition at line 79 of file RedBlackTreeSet.hpp.

◆ end()

template<typename T , FwSizeType C>
ConstIterator Fw::RedBlackTreeSet< T, C >::end ( ) const
inlineoverridevirtual

Get the end iterator

Returns
The iterator

Implements Fw::SetBase< T >.

Definition at line 83 of file RedBlackTreeSet.hpp.

◆ find()

template<typename T , FwSizeType C>
Success Fw::RedBlackTreeSet< T, C >::find ( const T &  element) const
inlineoverridevirtual

Find an element in the set

Returns
SUCCESS if the element was found
Parameters
elementThe element

Implements Fw::SetBase< T >.

Definition at line 87 of file RedBlackTreeSet.hpp.

◆ getCapacity()

template<typename T , FwSizeType C>
FwSizeType Fw::RedBlackTreeSet< T, C >::getCapacity ( ) const
inlineoverridevirtual

Get the capacity of the set (max number of entries)

Returns
The capacity

Implements Fw::SizedContainer.

Definition at line 94 of file RedBlackTreeSet.hpp.

◆ getSize()

template<typename T , FwSizeType C>
FwSizeType Fw::RedBlackTreeSet< T, C >::getSize ( ) const
inlineoverridevirtual

Get the size (number of entries)

Returns
The size

Implements Fw::SizedContainer.

Definition at line 98 of file RedBlackTreeSet.hpp.

◆ insert()

template<typename T , FwSizeType C>
Success Fw::RedBlackTreeSet< T, C >::insert ( const T &  element)
inlineoverridevirtual

Insert an element in the set

Returns
SUCCESS if there is room in the set
Parameters
elementThe element

Implements Fw::SetBase< T >.

Definition at line 102 of file RedBlackTreeSet.hpp.

◆ operator=()

template<typename T , FwSizeType C>
RedBlackTreeSet<T, C>& Fw::RedBlackTreeSet< T, C >::operator= ( const RedBlackTreeSet< T, C > &  set)
inline

operator=

Definition at line 69 of file RedBlackTreeSet.hpp.

◆ remove()

template<typename T , FwSizeType C>
Success Fw::RedBlackTreeSet< T, C >::remove ( const T &  element)
inlineoverridevirtual

Remove an element from the set

Returns
SUCCESS if the key was there
Parameters
elementThe element

Implements Fw::SetBase< T >.

Definition at line 109 of file RedBlackTreeSet.hpp.

Friends And Related Function Documentation

◆ RedBlackTreeSetTester

template<typename T , FwSizeType C>
template<typename TT , FwSizeType CC>
friend class RedBlackTreeSetTester
friend

Definition at line 20 of file RedBlackTreeSet.hpp.


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