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

A predicate object to be used in limiting the number of channels returned when searching for channels. More...

#include <nds_connection.hh>

Collaboration diagram for NDS::abi_0::channel_predicate_object:
Collaboration graph
[legend]

Public Types

typedef std::vector< NDS::channel::channel_type > channel_type_list
 
typedef std::vector< NDS::channel::data_type > data_type_list
 

Public Member Functions

 channel_predicate_object ()
 
 channel_predicate_object (const channel_predicate_object &other)=default
 
 channel_predicate_object (channel_predicate_object &&other)=default
 
channel_predicate_objectoperator= (const channel_predicate_object &other)=default
 
channel_predicate_objectoperator= (channel_predicate_object &&other)=default
 
std::string glob () const
 Return the channel name glob (defaults to "*")
 
const channel_type_list channel_types () const
 return a container of distinct channel types that are to be matched (defaults to an expansion of NDS::channel::DEFAULT_CHANNEL_MASK)
 
NDS::channel::channel_type channel_type_mask () const
 return a compact mask of the channel types selected. this is mainly provided for the SWIG language bindings.
 
const data_type_list data_types () const
 return a container of distinct data types that are to be matched (defaults to an expansion of NDS::channel::DEFAULT_DATA_MASK)
 
NDS::channel::data_type data_type_mask () const
 return a compact mask of the data types selected. this is mainly provided for the SWIG language bindings.
 
const frequency_rangesample_rates () const
 return the range of sample rates that are to be allowed in the query. defaults to (NDS::channel::MIN_SAMPLE_RATE, NDS::channel::MAX_SAMPLE_RATE)
 
NDS::channel::sample_rate_type min_sample_rate () const
 return the minimum sample rate to be selected. This is also available through the sample_rates method.
 
NDS::channel::sample_rate_type max_sample_rate () const
 return the maximum sample rate to be selected. This is also available through the sample_rates method.
 
const epochtime_span () const
 return the timespan/epoch that should constrain the query defaults to [0, NDS::buffer::GPS_INF)
 
NDS::buffer::gps_second_type gps_start () const
 Return the gps start time that constrains this query. Note this is available via the time_span method.
 
NDS::buffer::gps_second_type gps_stop () const
 Return the gps stop time that constrains this query. Note this is available via the time_span method.
 
channel_predicate_objectset (std::string val)
 Set the glob string used in channel matching.
 
void set_glob (std::string val)
 Set the glob string to match on.
 
channel_predicate_objectset (NDS::channel::channel_type val)
 Set a channel type to search for.
 
void set_channel_type_mask (NDS::channel::channel_type val)
 Set the channel type mask.
 
channel_predicate_objectset (NDS::channel::data_type val)
 Set a data type to search for.
 
void set_data_type_mask (NDS::channel::data_type val)
 Set the data type mask.
 
channel_predicate_objectset (frequency_range val)
 
void set_frequency_range (NDS::channel::sample_rate_type min_sample_rate, NDS::channel::sample_rate_type max_sample_rate)
 Set the [min, max) frequency range that limits this query.
 
channel_predicate_objectset (epoch val)
 
void set_timespan (NDS::buffer::gps_second_type gps_start, NDS::buffer::gps_second_type gps_stop)
 Set the [gps_start, gps_stop) time range that limits this query.
 

Private Attributes

epoch epoch_
 
std::string glob_
 
channel_type_list channel_types_
 
data_type_list data_types_
 
frequency_range sample_rates_
 

Static Private Attributes

DLL_EXPORT static const data_type_list all_data_types
 
DLL_EXPORT static const channel_type_list all_channel_types
 

Detailed Description

A predicate object to be used in limiting the number of channels returned when searching for channels.

This object holds the various conditions that the nds2_client library will use when searching channels. The conditions (NDS epoch, name globbing, sample rates, channel type, data type, ...) are all specified in a uniform manner. Each condition should have a distinct type.

Member Typedef Documentation

◆ channel_type_list

typedef std::vector< NDS::channel::channel_type > NDS::abi_0::channel_predicate_object::channel_type_list

◆ data_type_list

typedef std::vector< NDS::channel::data_type > NDS::abi_0::channel_predicate_object::data_type_list

Constructor & Destructor Documentation

◆ channel_predicate_object() [1/3]

NDS::abi_0::channel_predicate_object::channel_predicate_object ( )
inline

◆ channel_predicate_object() [2/3]

NDS::abi_0::channel_predicate_object::channel_predicate_object ( const channel_predicate_object other)
default

◆ channel_predicate_object() [3/3]

NDS::abi_0::channel_predicate_object::channel_predicate_object ( channel_predicate_object &&  other)
default

Member Function Documentation

◆ channel_type_mask()

NDS::channel::channel_type NDS::abi_0::channel_predicate_object::channel_type_mask ( ) const
inline

return a compact mask of the channel types selected. this is mainly provided for the SWIG language bindings.

◆ channel_types()

const channel_type_list NDS::abi_0::channel_predicate_object::channel_types ( ) const
inline

return a container of distinct channel types that are to be matched (defaults to an expansion of NDS::channel::DEFAULT_CHANNEL_MASK)

◆ data_type_mask()

NDS::channel::data_type NDS::abi_0::channel_predicate_object::data_type_mask ( ) const
inline

return a compact mask of the data types selected. this is mainly provided for the SWIG language bindings.

◆ data_types()

const data_type_list NDS::abi_0::channel_predicate_object::data_types ( ) const
inline

return a container of distinct data types that are to be matched (defaults to an expansion of NDS::channel::DEFAULT_DATA_MASK)

◆ glob()

std::string NDS::abi_0::channel_predicate_object::glob ( ) const
inline

Return the channel name glob (defaults to "*")

◆ gps_start()

NDS::buffer::gps_second_type NDS::abi_0::channel_predicate_object::gps_start ( ) const
inline

Return the gps start time that constrains this query. Note this is available via the time_span method.

◆ gps_stop()

NDS::buffer::gps_second_type NDS::abi_0::channel_predicate_object::gps_stop ( ) const
inline

Return the gps stop time that constrains this query. Note this is available via the time_span method.

◆ max_sample_rate()

NDS::channel::sample_rate_type NDS::abi_0::channel_predicate_object::max_sample_rate ( ) const
inline

return the maximum sample rate to be selected. This is also available through the sample_rates method.

◆ min_sample_rate()

NDS::channel::sample_rate_type NDS::abi_0::channel_predicate_object::min_sample_rate ( ) const
inline

return the minimum sample rate to be selected. This is also available through the sample_rates method.

◆ operator=() [1/2]

channel_predicate_object & NDS::abi_0::channel_predicate_object::operator= ( channel_predicate_object &&  other)
default

◆ operator=() [2/2]

channel_predicate_object & NDS::abi_0::channel_predicate_object::operator= ( const channel_predicate_object other)
default

◆ sample_rates()

const frequency_range & NDS::abi_0::channel_predicate_object::sample_rates ( ) const
inline

return the range of sample rates that are to be allowed in the query. defaults to (NDS::channel::MIN_SAMPLE_RATE, NDS::channel::MAX_SAMPLE_RATE)

◆ set() [1/5]

channel_predicate_object & NDS::abi_0::channel_predicate_object::set ( epoch  val)
inline

Set the epoch/time span for the predicate

Parameters
valA NDS::epoch representing the timespan
Returns
This object

◆ set() [2/5]

channel_predicate_object & NDS::abi_0::channel_predicate_object::set ( frequency_range  val)
inline

Set the sample rate rate to search for

Parameters
valThe sample rate range
Returns
This object

◆ set() [3/5]

channel_predicate_object & NDS::abi_0::channel_predicate_object::set ( NDS::channel::channel_type  val)
inline

Set a channel type to search for.

Parameters
valThe channel type to search for.
Returns
This object
Note
This may be called multiple times, each additional type expands the search space

◆ set() [4/5]

channel_predicate_object & NDS::abi_0::channel_predicate_object::set ( NDS::channel::data_type  val)
inline

Set a data type to search for.

Parameters
valThe data type to search for.
Returns
This object
Note
This may be called multiple times, each additional type expands the search space

◆ set() [5/5]

channel_predicate_object & NDS::abi_0::channel_predicate_object::set ( std::string  val)
inline

Set the glob string used in channel matching.

Parameters
valThe glob string to match with
Returns
This object

◆ set_channel_type_mask()

void NDS::abi_0::channel_predicate_object::set_channel_type_mask ( NDS::channel::channel_type  val)
inline

Set the channel type mask.

Parameters
val
Note
this calls set(channel_type)

◆ set_data_type_mask()

void NDS::abi_0::channel_predicate_object::set_data_type_mask ( NDS::channel::data_type  val)
inline

Set the data type mask.

Parameters
val
Note
this calls set(data_type)

◆ set_frequency_range()

void NDS::abi_0::channel_predicate_object::set_frequency_range ( NDS::channel::sample_rate_type  min_sample_rate,
NDS::channel::sample_rate_type  max_sample_rate 
)
inline

Set the [min, max) frequency range that limits this query.

Parameters
min_sample_rateThe minimal sample rate
max_sample_rateThe maximum sample rate
Note
this calls set(frequency_range)

◆ set_glob()

void NDS::abi_0::channel_predicate_object::set_glob ( std::string  val)
inline

Set the glob string to match on.

Parameters
val
Note
this calls set(string)

◆ set_timespan()

void NDS::abi_0::channel_predicate_object::set_timespan ( NDS::buffer::gps_second_type  gps_start,
NDS::buffer::gps_second_type  gps_stop 
)
inline

Set the [gps_start, gps_stop) time range that limits this query.

Parameters
gps_startStart time in GPS Seconds
gps_stopEnd time in GPS Seconds exclusive.
Note
this calls set(epoch)

◆ time_span()

const epoch & NDS::abi_0::channel_predicate_object::time_span ( ) const
inline

return the timespan/epoch that should constrain the query defaults to [0, NDS::buffer::GPS_INF)

Member Data Documentation

◆ all_channel_types

const channel_predicate_object::channel_type_list NDS::abi_0::channel_predicate_object::all_channel_types
staticprivate
Initial value:
{
}
@ CHANNEL_TYPE_STATIC
Static data.
Definition nds_channel.hh:47
@ CHANNEL_TYPE_MTREND
Minute trend.
Definition nds_channel.hh:45
@ CHANNEL_TYPE_TEST_POINT
Test point data.
Definition nds_channel.hh:46
@ CHANNEL_TYPE_RDS
Reduced data set.
Definition nds_channel.hh:43
@ CHANNEL_TYPE_STREND
Second trend.
Definition nds_channel.hh:44
@ CHANNEL_TYPE_ONLINE
Online channel.
Definition nds_channel.hh:41
@ CHANNEL_TYPE_RAW
Raw channel.
Definition nds_channel.hh:42

◆ all_data_types

const channel_predicate_object::data_type_list NDS::abi_0::channel_predicate_object::all_data_types
staticprivate
Initial value:
{
}
@ DATA_TYPE_INT32
32 bit signed integer
Definition nds_channel.hh:56
@ DATA_TYPE_COMPLEX32
Complex value, two 32 bit floats.
Definition nds_channel.hh:60
@ DATA_TYPE_FLOAT64
64 bit float value
Definition nds_channel.hh:59
@ DATA_TYPE_UINT32
32 bit unsigned integer value
Definition nds_channel.hh:62
@ DATA_TYPE_INT16
16 bit signed integer
Definition nds_channel.hh:55
@ DATA_TYPE_FLOAT32
32 bit float value
Definition nds_channel.hh:58
@ DATA_TYPE_INT64
64 bit signed integer
Definition nds_channel.hh:57

◆ channel_types_

channel_type_list NDS::abi_0::channel_predicate_object::channel_types_
private

◆ data_types_

data_type_list NDS::abi_0::channel_predicate_object::data_types_
private

◆ epoch_

epoch NDS::abi_0::channel_predicate_object::epoch_
private

◆ glob_

std::string NDS::abi_0::channel_predicate_object::glob_
private

◆ sample_rates_

frequency_range NDS::abi_0::channel_predicate_object::sample_rates_
private

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