NEURON
neuron::container::VectorMemoryUsage Struct Reference

Size and capacity in bytes. More...

#include <memory_usage.hpp>

Public Member Functions

 VectorMemoryUsage ()=default
 
 VectorMemoryUsage (size_t size, size_t capacity)
 
template<class T , class A >
 VectorMemoryUsage (const std::vector< T, A > &vec)
 Compute the memory requirements of the std::vector. More...
 
const VectorMemoryUsageoperator+= (const VectorMemoryUsage &other)
 

Public Attributes

size_t size {}
 Number of bytes used. More...
 
size_t capacity {}
 Number of bytes allocated. More...
 

Detailed Description

Size and capacity in bytes.

Definition at line 11 of file memory_usage.hpp.

Constructor & Destructor Documentation

◆ VectorMemoryUsage() [1/3]

neuron::container::VectorMemoryUsage::VectorMemoryUsage ( )
default

◆ VectorMemoryUsage() [2/3]

neuron::container::VectorMemoryUsage::VectorMemoryUsage ( size_t  size,
size_t  capacity 
)
inline

Definition at line 13 of file memory_usage.hpp.

◆ VectorMemoryUsage() [3/3]

template<class T , class A >
neuron::container::VectorMemoryUsage::VectorMemoryUsage ( const std::vector< T, A > &  vec)
inline

Compute the memory requirements of the std::vector.

Note, this returns the size and capacity of the memory allocated by the std::vector. If the element allocate memory, that memory isn't included.

Essentially,

size = vec.size() * sizeof(T);
capacity = vec.capacity() * sizeof(T);

Definition at line 29 of file memory_usage.hpp.

Member Function Documentation

◆ operator+=()

const VectorMemoryUsage& neuron::container::VectorMemoryUsage::operator+= ( const VectorMemoryUsage other)
inline

Definition at line 39 of file memory_usage.hpp.

Member Data Documentation

◆ capacity

size_t neuron::container::VectorMemoryUsage::capacity {}

Number of bytes allocated.

Definition at line 37 of file memory_usage.hpp.

◆ size

size_t neuron::container::VectorMemoryUsage::size {}

Number of bytes used.

Definition at line 34 of file memory_usage.hpp.


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