API
 
Loading...
Searching...
No Matches
CircularBuffer Class Reference

#include <po4ao.hpp>

Collaboration diagram for CircularBuffer:
Collaboration graph

Public Member Functions

 CircularBuffer (size_t _num_rows, size_t _num_cols, size_t _historySize)
 
 ~CircularBuffer ()
 
void add (float *image)
 
void add_eigenimage (Eigen::Map< eigenImage< float > > image)
 
int num_elements ()
 
float * getBuffer ()
 
 CircularBuffer (size_t _num_rows, size_t _num_cols, size_t _historySize)
 
 ~CircularBuffer ()
 
void add (float *image)
 
void get (float *dest, int index, int length)
 
void add_eigenimage (Eigen::Map< eigenImage< unsigned short > > image)
 
int num_elements ()
 
void reset_head ()
 
std::vector< float > getItem (size_t n) const
 
std::vector< std::vector< float > > getBuffer () const
 

Private Attributes

size_t num_rows
 
size_t num_cols
 
size_t historySize
 
size_t size
 
float * buffer
 
size_t head
 
size_t tail
 
bool is_full
 

Detailed Description

Definition at line 35 of file po4ao.hpp.

Constructor & Destructor Documentation

◆ CircularBuffer() [1/2]

CircularBuffer::CircularBuffer ( size_t  _num_rows,
size_t  _num_cols,
size_t  _historySize 
)
inline

Definition at line 46 of file po4ao.hpp.

◆ ~CircularBuffer() [1/2]

CircularBuffer::~CircularBuffer ( )
inline

Definition at line 55 of file po4ao.hpp.

◆ CircularBuffer() [2/2]

CircularBuffer::CircularBuffer ( size_t  _num_rows,
size_t  _num_cols,
size_t  _historySize 
)
inline

Definition at line 12 of file stuff.hpp.

◆ ~CircularBuffer() [2/2]

CircularBuffer::~CircularBuffer ( )
inline

Definition at line 21 of file stuff.hpp.

Member Function Documentation

◆ add() [1/2]

void CircularBuffer::add ( float *  image)
inline

Definition at line 60 of file po4ao.hpp.

◆ add() [2/2]

void CircularBuffer::add ( float *  image)
inline

Definition at line 26 of file stuff.hpp.

◆ add_eigenimage() [1/2]

void CircularBuffer::add_eigenimage ( Eigen::Map< eigenImage< float > >  image)
inline

Definition at line 69 of file po4ao.hpp.

Referenced by MagAOX::app::po4ao::processImage().

◆ add_eigenimage() [2/2]

void CircularBuffer::add_eigenimage ( Eigen::Map< eigenImage< unsigned short > >  image)
inline

Definition at line 38 of file stuff.hpp.

◆ get()

void CircularBuffer::get ( float *  dest,
int  index,
int  length 
)
inline

Definition at line 31 of file stuff.hpp.

◆ getBuffer() [1/2]

float * CircularBuffer::getBuffer ( )
inline

Definition at line 96 of file po4ao.hpp.

Referenced by MagAOX::app::po4ao::send_obs_to_shmim().

◆ getBuffer() [2/2]

std::vector< std::vector< float > > CircularBuffer::getBuffer ( ) const
inline

Definition at line 65 of file stuff.hpp.

◆ getItem()

std::vector< float > CircularBuffer::getItem ( size_t  n) const
inline

Definition at line 57 of file stuff.hpp.

◆ num_elements() [1/2]

int CircularBuffer::num_elements ( )
inline

Definition at line 83 of file po4ao.hpp.

Referenced by get().

◆ num_elements() [2/2]

int CircularBuffer::num_elements ( )
inline

Definition at line 44 of file stuff.hpp.

◆ reset_head()

void CircularBuffer::reset_head ( )
inline

Definition at line 52 of file stuff.hpp.

Member Data Documentation

◆ buffer

float * CircularBuffer::buffer
private

◆ head

size_t CircularBuffer::head
private

Definition at line 41 of file po4ao.hpp.

Referenced by add(), add_eigenimage(), add_eigenimage(), get(), getItem(), num_elements(), and reset_head().

◆ historySize

size_t CircularBuffer::historySize
private

Definition at line 38 of file po4ao.hpp.

Referenced by CircularBuffer(), add(), add_eigenimage(), get(), and num_elements().

◆ is_full

bool CircularBuffer::is_full
private

Definition at line 43 of file po4ao.hpp.

◆ num_cols

size_t CircularBuffer::num_cols
private

Definition at line 37 of file po4ao.hpp.

◆ num_rows

size_t CircularBuffer::num_rows
private

Definition at line 37 of file po4ao.hpp.

◆ size

size_t CircularBuffer::size
private

Definition at line 39 of file po4ao.hpp.

Referenced by CircularBuffer(), add(), add_eigenimage(), and get().

◆ tail

size_t CircularBuffer::tail
private

Definition at line 42 of file po4ao.hpp.


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