nds2-client - Developer 0.16.7
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
NDS::detail::composer Class Reference

#include <nds_composer.hh>

Collaboration diagram for NDS::detail::composer:
Collaboration graph
[legend]

Public Member Functions

 composer ()=delete
 
 composer (const composer &other)=delete
 
 composer (composer &&other)=delete
 
composeroperator= (const composer &other)=delete
 
composeroperator= (composer other)=delete
 
DLL_EXPORT composer (request_fragment::working_buffers &buffers, const NDS::connection::channel_names_type &channel_names, const NDS::detail::buffer_initializer &initializer, const gap_handler &_gap_handler, bool buffers_have_been_initialized)
 
DLL_EXPORT void add_segment (const buffers_type &cur_bufs)
 
template<typename T >
void finish (T &selector)
 

Private Member Functions

template<typename T >
void initialize_buffers (const T &ref_set)
 
void fill_gap (buffer &cur_buffer, buffer::size_type start_sample, buffer::size_type end_sample)
 
void bounds_check (const buffer &cur_buffer, buffer::size_type cur_fill, buffer::size_type offset_start, buffer::size_type offset_end)
 
DLL_EXPORT void do_finish_gap_handling ()
 

Private Attributes

request_fragment::working_buffersbuffers
 
const NDS::connection::channel_names_type _channel_names
 
const NDS::detail::buffer_initializer initializer
 
const gap_handler_gap_handler
 
std::vector< buffer::size_typecur_progress
 
std::vector< std::unique_ptr< delayed_gap_handler > > delayed_handlers
 
bool empty_is_safe
 
bool initialized
 
bool finished
 

Static Private Attributes

static fixed_point_gap_handler zero_gap_handler
 

Constructor & Destructor Documentation

◆ composer() [1/4]

NDS::detail::composer::composer ( )
delete

◆ composer() [2/4]

NDS::detail::composer::composer ( const composer other)
delete

◆ composer() [3/4]

NDS::detail::composer::composer ( composer &&  other)
delete

◆ composer() [4/4]

NDS::detail::composer::composer ( request_fragment::working_buffers buffers,
const NDS::connection::channel_names_type &  channel_names,
const NDS::detail::buffer_initializer initializer,
const gap_handler _gap_handler,
bool  buffers_have_been_initialized 
)

Member Function Documentation

◆ add_segment()

void NDS::detail::composer::add_segment ( const buffers_type cur_bufs)

◆ bounds_check()

void NDS::detail::composer::bounds_check ( const buffer cur_buffer,
buffer::size_type  cur_fill,
buffer::size_type  offset_start,
buffer::size_type  offset_end 
)
private

◆ do_finish_gap_handling()

void NDS::detail::composer::do_finish_gap_handling ( )
private

◆ fill_gap()

void NDS::detail::composer::fill_gap ( buffer cur_buffer,
buffer::size_type  start_sample,
buffer::size_type  end_sample 
)
inlineprivate

◆ finish()

template<typename T >
void NDS::detail::composer::finish ( T &  selector)
inline

◆ initialize_buffers()

template<typename T >
void NDS::detail::composer::initialize_buffers ( const T &  ref_set)
inlineprivate

◆ operator=() [1/2]

composer & NDS::detail::composer::operator= ( composer  other)
delete

◆ operator=() [2/2]

composer & NDS::detail::composer::operator= ( const composer other)
delete

Member Data Documentation

◆ _channel_names

const NDS::connection::channel_names_type NDS::detail::composer::_channel_names
private

◆ _gap_handler

const gap_handler& NDS::detail::composer::_gap_handler
private

◆ buffers

request_fragment::working_buffers& NDS::detail::composer::buffers
private

◆ cur_progress

std::vector< buffer::size_type > NDS::detail::composer::cur_progress
private

◆ delayed_handlers

std::vector< std::unique_ptr< delayed_gap_handler > > NDS::detail::composer::delayed_handlers
private

◆ empty_is_safe

bool NDS::detail::composer::empty_is_safe
private

◆ finished

bool NDS::detail::composer::finished
private

◆ initialized

bool NDS::detail::composer::initialized
private

◆ initializer

const NDS::detail::buffer_initializer NDS::detail::composer::initializer
private

◆ zero_gap_handler

fixed_point_gap_handler NDS::detail::composer::zero_gap_handler
staticprivate

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