SHOGUN v0.9.0
公有成员 | 公有属性
DynArray< T >模板类参考

详细描述

template<class T>
class shogun::DynArray< T >

Template Dynamic array class that creates an array that can be used like a list or an array.

It grows and shrinks dynamically, while elements can be accessed via index. It is performance tuned for simple types like float etc. and for hi-level objects only stores pointers, which are not automagically SG_REF'd/deleted.

在文件DynArray.h29行定义。

所有成员的列表。

公有成员

 DynArray (int32_t p_resize_granularity=128)
virtual ~DynArray (void)
int32_t set_granularity (int32_t g)
int32_t get_array_size (void)
int32_t get_num_elements (void) const
get_element (int32_t index) const
get_element_safe (int32_t index) const
bool set_element (T element, int32_t index)
bool insert_element (T element, int32_t index)
bool append_element (T element)
void push_back (T element)
void pop_back (void)
back (void)
int32_t find_element (T element)
bool delete_element (int32_t idx)
bool resize_array (int32_t n)
T * get_array (void)
void set_array (T *p_array, int32_t p_num_elements, int32_t array_size)
void clear_array (void)
operator[] (int32_t index) const
DynArray< T > & operator= (DynArray< T > &orig)
virtual const char * get_name () const

公有属性

int32_t resize_granularity
T * array
int32_t num_elements
int32_t last_element_idx

构造及析构函数文档

DynArray ( int32_t  p_resize_granularity = 128)

constructor

参数:
p_resize_granularityresize granularity

在文件DynArray.h48行定义。

virtual ~DynArray ( void  ) [virtual]

在文件DynArray.h59行定义。


成员函数文档

bool append_element ( element)

append array element to the end of array

参数:
elementelement to append
返回:
if setting was successful

在文件DynArray.h182行定义。

T back ( void  )

::STD::VECTOR compatible. Return array element at the end of array.

返回:
element at the end of array

在文件DynArray.h212行定义。

void clear_array ( void  )

clear the array (with zeros)

在文件DynArray.h327行定义。

bool delete_element ( int32_t  idx)

delete array element at idx (does not call delete[] or the like)

参数:
idxindex
返回:
if deleting was successful

在文件DynArray.h247行定义。

int32_t find_element ( element)

find first occurence of array element and return its index or -1 if not available

参数:
elementelement to search for
返回:
index of element or -1

在文件DynArray.h224行定义。

T* get_array ( void  )

get the array call get_array just before messing with it DO NOT call any [],resize/delete functions after get_array(), the pointer may become invalid !

返回:
the array

在文件DynArray.h306行定义。

int32_t get_array_size ( void  )

get array size (including granularity buffer)

返回:
total array size (including granularity buffer)

在文件DynArray.h78行定义。

T get_element ( int32_t  index) const

get array element at index

(does NOT do bounds checking)

参数:
indexindex
返回:
array element at index

在文件DynArray.h99行定义。

T get_element_safe ( int32_t  index) const

get array element at index

(does bounds checking)

参数:
indexindex
返回:
array element at index

在文件DynArray.h111行定义。

virtual const char* get_name ( ) const [virtual]
返回:
object name

在文件DynArray.h363行定义。

int32_t get_num_elements ( void  ) const

get number of elements

返回:
number of elements

在文件DynArray.h87行定义。

bool insert_element ( element,
int32_t  index 
)

insert array element at index

参数:
elementelement to insert
indexindex
返回:
if setting was successful

在文件DynArray.h161行定义。

DynArray<T>& operator= ( DynArray< T > &  orig)

operator overload for array assignment

参数:
origoriginal array
返回:
new array

在文件DynArray.h352行定义。

T operator[] ( int32_t  index) const

operator overload for array read only access use set_element() for write access (will also make the array dynamically grow)

DOES NOT DO ANY BOUNDS CHECKING

参数:
indexindex
返回:
element at index

在文件DynArray.h342行定义。

void pop_back ( void  )

::STD::VECTOR compatible. Delete array element at the end of array.

在文件DynArray.h201行定义。

void push_back ( element)

::STD::VECTOR compatible. Append array element to the end of array.

参数:
elementelement to append

在文件DynArray.h192行定义。

bool resize_array ( int32_t  n)

resize the array

参数:
nnew size
返回:
if resizing was successful

在文件DynArray.h272行定义。

void set_array ( T *  p_array,
int32_t  p_num_elements,
int32_t  array_size 
)

set the array pointer and free previously allocated memory

参数:
p_arraynew array
p_num_elementslast element index + 1
array_sizenumber of elements in array

在文件DynArray.h317行定义。

bool set_element ( element,
int32_t  index 
)

set array element at index

参数:
elementelement to set
indexindex
返回:
if setting was successful

在文件DynArray.h129行定义。

int32_t set_granularity ( int32_t  g)

set the resize granularity

参数:
gnew granularity
返回:
what has been set (minimum is 128)

在文件DynArray.h67行定义。


成员数据文档

T* array

memory for dynamic array

在文件DynArray.h36行定义。

the element in the array that has largest index

在文件DynArray.h42行定义。

int32_t num_elements

the number of potentially used elements in array

在文件DynArray.h39行定义。

shrink/grow step size

在文件DynArray.h33行定义。


该类的文档由以下文件生成:

SHOGUN Machine Learning Toolbox - Documentation