CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
CeresEngine::BitContainer< C > Class Template Reference

Creates a BitView that owns its data. More...

#include <CeresEngine/Foundation/Container/BitView.hpp>

Inheritance diagram for CeresEngine::BitContainer< C >:
CeresEngine::BitView< C >

Public Member Functions

constexpr BitContainer () noexcept(noexcept(C()))
 
constexpr BitContainer (const BitContainer &other) noexcept(noexcept(C(std::declval< const C & >())))
 
constexpr BitContainer (BitContainer &&other) noexcept(noexcept(C(std::declval< C && >())))
 
template<typename... Args>
 BitContainer (Args &&... args)
 
- Public Member Functions inherited from CeresEngine::BitView< C >
constexpr BitView (C &container) noexcept
 
size_t size () const noexcept(noexcept(mContainer.size()))
 Returns the number of bits that fit in the container.
 
void resize (size_t N, const bool v=false) noexcept(noexcept(mContainer.resize(0, 0)))
 Resizes the container to hold at least N bits.
 
constexpr BitReference< Wordoperator[] (size_t i) noexcept(noexcept(mContainer[0]))
 Returns a BitReference to the bit at position i.
 
constexpr BitReference< const Wordoperator[] (size_t i) const noexcept(noexcept(mContainer[0]))
 Returns a BitReference to the bit at position i.
 
constexpr auto begin () noexcept(noexcept(mContainer.begin()))
 
constexpr auto begin () const noexcept(noexcept(mContainer.begin()))
 
constexpr auto end () noexcept(noexcept(mContainer.begin()))
 
constexpr auto end () const noexcept(noexcept(mContainer.begin()))
 
C & data () noexcept
 Get the underlying data container.
 
const C & data () const noexcept
 Get the underlying data container.
 

Private Attributes

C mDataContainer
 

Additional Inherited Members

- Public Types inherited from CeresEngine::BitView< C >
using Word = typename std::remove_reference< decltype(std::declval< C >()[0])>::type
 
- Static Public Attributes inherited from CeresEngine::BitView< C >
static constexpr auto WORD_SIZE
 

Detailed Description

template<class C>
class CeresEngine::BitContainer< C >

Creates a BitView that owns its data.

Constructor & Destructor Documentation

◆ BitContainer() [1/4]

template<class C >
constexpr CeresEngine::BitContainer< C >::BitContainer ( )
inlineconstexprnoexcept

◆ BitContainer() [2/4]

template<class C >
constexpr CeresEngine::BitContainer< C >::BitContainer ( const BitContainer< C > &  other)
inlineconstexprnoexcept

◆ BitContainer() [3/4]

template<class C >
constexpr CeresEngine::BitContainer< C >::BitContainer ( BitContainer< C > &&  other)
inlineconstexprnoexcept

◆ BitContainer() [4/4]

template<class C >
template<typename... Args>
CeresEngine::BitContainer< C >::BitContainer ( Args &&...  args)
inline

Member Data Documentation

◆ mDataContainer

template<class C >
C CeresEngine::BitContainer< C >::mDataContainer
private

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