nds2-client - ClientUser  0.16.8
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
nds_request_fragment.hh
1 #ifndef NDS_REQUEST_FRAGMENT_HH
2 #define NDS_REQUEST_FRAGMENT_HH
3 
4 #include <memory>
5 
6 #include "nds_availability.hh"
7 
8 namespace NDS
9 {
10  namespace detail
11  {
12  struct request_fragment
13  {
14  // typedef std::pair<buffer::gps_second_type,
15  // buffer::gps_second_type>
16  // time_span_type;
17  typedef std::vector< buffer* > working_buffers;
18  typedef simple_segment_list_type time_span_type;
19 
20  channel::channel_names_type names;
21  working_buffers buffers;
22  time_span_type time_spans;
23 
24  bool is_compatible( const time_span_type& avail ) const;
25 
26  bool push_back_if( const std::string& name,
27  time_span_type avail,
28  buffer* dest_buffer );
29 
30  void bulk_set( const buffer::channel_names_type& names,
31  const working_buffers& dest_buffers,
32  buffer::gps_second_type gps_start,
33  buffer::gps_second_type gps_stop );
34  };
35 
36  typedef std::vector< request_fragment > request_fragments_type;
37  }
38 }
39 
40 #endif // NDS_CONNECTION_REQUEST_HH