Audacity 3.2.0
Public Member Functions | List of all members
ArraysOf< X > Class Template Reference

#include <MemoryX.h>

Inheritance diagram for ArraysOf< X >:
[legend]
Collaboration diagram for ArraysOf< X >:
[legend]

Public Member Functions

 ArraysOf ()
 
template<typename Integral >
 ArraysOf (Integral N)
 
template<typename Integral1 , typename Integral2 >
 ArraysOf (Integral1 N, Integral2 M, bool initialize=false)
 
 ArraysOf (const ArraysOf &)=delete
 
ArraysOfoperator= (ArraysOf &&that)
 
template<typename Integral >
void reinit (Integral count)
 
template<typename Integral >
void reinit (Integral count, bool initialize)
 
template<typename Integral1 , typename Integral2 >
void reinit (Integral1 countN, Integral2 countM, bool initialize=false)
 
- Public Member Functions inherited from ArrayOf< ArrayOf< X > >
 ArrayOf ()
 
 ArrayOf (Integral count, bool initialize=false)
 
 ArrayOf (const ArrayOf &)=delete
 
 ArrayOf (ArrayOf &&that)
 
ArrayOfoperator= (ArrayOf &&that)
 
ArrayOfoperator= (std::unique_ptr< ArrayOf< X >[]> &&that)
 
void reinit (Integral count, bool initialize=false)
 

Detailed Description

template<typename X>
class ArraysOf< X >

Definition at line 82 of file MemoryX.h.

Constructor & Destructor Documentation

◆ ArraysOf() [1/4]

template<typename X >
ArraysOf< X >::ArraysOf ( )
inline

Definition at line 85 of file MemoryX.h.

85{}

◆ ArraysOf() [2/4]

template<typename X >
template<typename Integral >
ArraysOf< X >::ArraysOf ( Integral  N)
inlineexplicit

Definition at line 88 of file MemoryX.h.

89 : ArrayOf<ArrayOf<X>>( N )
90 {}
This simplifies arrays of arrays, each array separately allocated with NEW[] But it might be better t...
Definition: MemoryX.h:29

◆ ArraysOf() [3/4]

template<typename X >
template<typename Integral1 , typename Integral2 >
ArraysOf< X >::ArraysOf ( Integral1  N,
Integral2  M,
bool  initialize = false 
)
inline

Definition at line 93 of file MemoryX.h.

94 : ArrayOf<ArrayOf<X>>( N )
95 {
96 static_assert(std::is_unsigned<Integral1>::value, "Unsigned arguments only");
97 static_assert(std::is_unsigned<Integral2>::value, "Unsigned arguments only");
98 for (size_t ii = 0; ii < N; ++ii)
99 (*this)[ii] = ArrayOf<X>{ M, initialize };
100 }

◆ ArraysOf() [4/4]

template<typename X >
ArraysOf< X >::ArraysOf ( const ArraysOf< X > &  )
delete

Member Function Documentation

◆ operator=()

template<typename X >
ArraysOf & ArraysOf< X >::operator= ( ArraysOf< X > &&  that)
inline

Definition at line 104 of file MemoryX.h.

105 {
106 ArrayOf<ArrayOf<X>>::operator=(std::move(that));
107 return *this;
108 }

◆ reinit() [1/3]

template<typename X >
template<typename Integral >
void ArraysOf< X >::reinit ( Integral  count)
inline

Definition at line 111 of file MemoryX.h.

112 {
114 }
void reinit(Integral count)
Definition: MemoryX.h:111

References ArraysOf< X >::reinit().

Referenced by ArraysOf< X >::reinit().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ reinit() [2/3]

template<typename X >
template<typename Integral >
void ArraysOf< X >::reinit ( Integral  count,
bool  initialize 
)
inline

Definition at line 117 of file MemoryX.h.

118 {
119 ArrayOf<ArrayOf<X>>::reinit( count, initialize );
120 }

References ArraysOf< X >::reinit().

Here is the call graph for this function:

◆ reinit() [3/3]

template<typename X >
template<typename Integral1 , typename Integral2 >
void ArraysOf< X >::reinit ( Integral1  countN,
Integral2  countM,
bool  initialize = false 
)
inline

Definition at line 123 of file MemoryX.h.

124 {
125 static_assert(std::is_unsigned<Integral1>::value, "Unsigned arguments only");
126 static_assert(std::is_unsigned<Integral2>::value, "Unsigned arguments only");
127 reinit(countN, false);
128 for (size_t ii = 0; ii < countN; ++ii)
129 (*this)[ii].reinit(countM, initialize);
130 }

References ArraysOf< X >::reinit().

Here is the call graph for this function:

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