nds2-client - ClientDeveloper  0.16.8
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
NDS::detail::iterate_available_handler Class Reference

#include <nds_iterate_handlers.hh>

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

Public Member Functions

 iterate_available_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, std::shared_ptr< NDS::detail::conn_p_type > &&parent)
 
 ~iterate_available_handler () override=default
 
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 ()
 
virtual bool done ()
 
void abort ()
 

Private Member Functions

void setup_next_step (NDS::detail::conn_p_type &parent)
 

Private Attributes

detail::request_fragments_type fragment_list_
 
buffer::size_type cur_segment_
 
buffer::gps_second_type cur_gps_
 
buffer::gps_second_type gps_start_
 
buffer::gps_second_type gps_stop_
 
buffer::gps_second_type max_stride_
 
channel::channel_names_type names_
 
buffers_type next_entry_
 

Additional Inherited Members

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

Detailed Description

Note
This will return data as it is available, without filling in gaps. It can handle offline nds2 requests, as long as the gaps for each channel are identical. This is much heaver weight than iterate_fast_handler.

Constructor & Destructor Documentation

NDS::detail::iterate_available_handler::iterate_available_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,
std::shared_ptr< NDS::detail::conn_p_type > &&  parent 
)
inline
NDS::detail::iterate_available_handler::~iterate_available_handler ( )
overridedefault

Member Function Documentation

bool NDS::detail::iterate_available_handler::has_next ( )
inlineoverridevirtual
void NDS::detail::iterate_available_handler::next ( buffers_type &  output)
inlineoverridevirtual
void NDS::detail::iterate_available_handler::setup_next_step ( NDS::detail::conn_p_type parent)
inlineprivate

Member Data Documentation

buffer::gps_second_type NDS::detail::iterate_available_handler::cur_gps_
private
buffer::size_type NDS::detail::iterate_available_handler::cur_segment_
private
detail::request_fragments_type NDS::detail::iterate_available_handler::fragment_list_
private
buffer::gps_second_type NDS::detail::iterate_available_handler::gps_start_
private
buffer::gps_second_type NDS::detail::iterate_available_handler::gps_stop_
private
buffer::gps_second_type NDS::detail::iterate_available_handler::max_stride_
private
channel::channel_names_type NDS::detail::iterate_available_handler::names_
private
buffers_type NDS::detail::iterate_available_handler::next_entry_
private

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