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 81 of file MemoryX.h.

Constructor & Destructor Documentation

◆ ArraysOf() [1/4]

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

Definition at line 84 of file MemoryX.h.

84{}

◆ ArraysOf() [2/4]

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

Definition at line 87 of file MemoryX.h.

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

◆ 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 92 of file MemoryX.h.

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

◆ 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 103 of file MemoryX.h.

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

◆ reinit() [1/3]

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

Definition at line 110 of file MemoryX.h.

111 {
113 }
void reinit(Integral count)
Definition: MemoryX.h:110

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 116 of file MemoryX.h.

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

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 122 of file MemoryX.h.

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

References ArraysOf< X >::reinit().

Here is the call graph for this function:

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