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

#include <nds_iterate_handlers.hh>

Inheritance diagram for NDS::detail::iterate_full_handler:
Inheritance graph
[legend]
Collaboration diagram for NDS::detail::iterate_full_handler:
Collaboration graph
[legend]

Public Member Functions

 iterate_full_handler (buffer::gps_second_type gps_start, buffer::gps_second_type gps_stop, buffer::gps_second_type stride, const channel::channel_names_type &channel_names, epoch prev_epoch, const channels_type &channel_list, std::shared_ptr< NDS::detail::conn_p_type > &&parent)
 
 ~iterate_full_handler () override=default
 
void advance ()
 
bool done () override
 
bool has_next () override
 
void next (buffers_type &output) override
 
- Public Member Functions inherited from NDS::detail::iterate_handler
 iterate_handler (std::shared_ptr< NDS::detail::conn_p_type > &&conn_p)
 
void next ()
 
virtual ~iterate_handler ()
 
void abort ()
 

Private Attributes

buffer::gps_second_type gps_start_
 
buffer::gps_second_type gps_stop_
 
buffer::gps_second_type gps_stride_
 
buffer::gps_second_type cur_gps_
 
channel::channel_names_type names_
 
channels_type channels_
 
epoch prev_epoch_
 

Additional Inherited Members

- Public Attributes inherited from NDS::detail::iterate_handler
std::shared_ptr< buffers_typecache_
 
- Protected Member Functions inherited from NDS::detail::iterate_handler
NDS::detail::conn_p_typeconn ()
 

Detailed Description

Note
This handler translates iterate requests into fetches and applies gap handling. This should be able to handle all cases and return data, even when requesting data with gaps that do not line up. It will return full sized blocks that are contiguous. This is a heavy weight function.

Constructor & Destructor Documentation

◆ iterate_full_handler()

NDS::detail::iterate_full_handler::iterate_full_handler ( buffer::gps_second_type  gps_start,
buffer::gps_second_type  gps_stop,
buffer::gps_second_type  stride,
const channel::channel_names_type &  channel_names,
epoch  prev_epoch,
const channels_type channel_list,
std::shared_ptr< NDS::detail::conn_p_type > &&  parent 
)
inline

◆ ~iterate_full_handler()

NDS::detail::iterate_full_handler::~iterate_full_handler ( )
overridedefault

Member Function Documentation

◆ advance()

void NDS::detail::iterate_full_handler::advance ( )
inline

◆ done()

bool NDS::detail::iterate_full_handler::done ( )
inlineoverridevirtual

Reimplemented from NDS::detail::iterate_handler.

◆ has_next()

bool NDS::detail::iterate_full_handler::has_next ( )
inlineoverridevirtual

◆ next()

void NDS::detail::iterate_full_handler::next ( buffers_type output)
inlineoverridevirtual

Member Data Documentation

◆ channels_

channels_type NDS::detail::iterate_full_handler::channels_
private

◆ cur_gps_

buffer::gps_second_type NDS::detail::iterate_full_handler::cur_gps_
private

◆ gps_start_

buffer::gps_second_type NDS::detail::iterate_full_handler::gps_start_
private

◆ gps_stop_

buffer::gps_second_type NDS::detail::iterate_full_handler::gps_stop_
private

◆ gps_stride_

buffer::gps_second_type NDS::detail::iterate_full_handler::gps_stride_
private

◆ names_

channel::channel_names_type NDS::detail::iterate_full_handler::names_
private

◆ prev_epoch_

epoch NDS::detail::iterate_full_handler::prev_epoch_
private

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