WPILibC++ 2023.4.3
nt::DoubleArraySubscriber Class Reference

NetworkTables DoubleArray subscriber. More...

#include <networktables/DoubleArrayTopic.h>

Inheritance diagram for nt::DoubleArraySubscriber:
nt::Subscriber nt::DoubleArrayEntry

Public Types

using TopicType = DoubleArrayTopic
 
using ValueType = std::vector< double >
 
using ParamType = std::span< const double >
 
using TimestampedValueType = TimestampedDoubleArray
 
using SmallRetType = std::span< double >
 
using SmallElemType = double
 
using TimestampedValueViewType = TimestampedDoubleArrayView
 

Public Member Functions

 DoubleArraySubscriber ()=default
 
 DoubleArraySubscriber (NT_Subscriber handle, ParamType defaultValue)
 Construct from a subscriber handle; recommended to use DoubleArrayTopic::Subscribe() instead. More...
 
ValueType Get () const
 Get the last published value. More...
 
ValueType Get (ParamType defaultValue) const
 Get the last published value. More...
 
SmallRetType Get (wpi::SmallVectorImpl< SmallElemType > &buf) const
 Get the last published value. More...
 
SmallRetType Get (wpi::SmallVectorImpl< SmallElemType > &buf, ParamType defaultValue) const
 Get the last published value. More...
 
TimestampedValueType GetAtomic () const
 Get the last published value along with its timestamp If no value has been published, returns the stored default value and a timestamp of 0. More...
 
TimestampedValueType GetAtomic (ParamType defaultValue) const
 Get the last published value along with its timestamp. More...
 
TimestampedValueViewType GetAtomic (wpi::SmallVectorImpl< SmallElemType > &buf) const
 Get the last published value along with its timestamp. More...
 
TimestampedValueViewType GetAtomic (wpi::SmallVectorImpl< SmallElemType > &buf, ParamType defaultValue) const
 Get the last published value along with its timestamp. More...
 
std::vector< TimestampedValueTypeReadQueue ()
 Get an array of all value changes since the last call to ReadQueue. More...
 
TopicType GetTopic () const
 Get the corresponding topic. More...
 
- Public Member Functions inherited from nt::Subscriber
virtual ~Subscriber ()
 
 Subscriber (const Subscriber &)=delete
 
Subscriberoperator= (const Subscriber &)=delete
 
 Subscriber (Subscriber &&)
 
Subscriberoperator= (Subscriber &&)
 
 operator bool () const
 Determines if the native handle is valid. More...
 
NT_Subscriber GetHandle () const
 Gets the native handle for the subscriber. More...
 
bool Exists () const
 Determines if the topic is currently being published. More...
 
int64_t GetLastChange () const
 Gets the last time the value was changed. More...
 
Topic GetTopic () const
 Gets the subscribed-to topic. More...
 

Additional Inherited Members

- Protected Member Functions inherited from nt::Subscriber
 Subscriber ()=default
 
 Subscriber (NT_Subscriber handle)
 
- Protected Attributes inherited from nt::Subscriber
NT_Subscriber m_subHandle {0}
 

Detailed Description

NetworkTables DoubleArray subscriber.

Member Typedef Documentation

◆ ParamType

using nt::DoubleArraySubscriber::ParamType = std::span<const double>

◆ SmallElemType

◆ SmallRetType

using nt::DoubleArraySubscriber::SmallRetType = std::span<double>

◆ TimestampedValueType

◆ TimestampedValueViewType

◆ TopicType

◆ ValueType

using nt::DoubleArraySubscriber::ValueType = std::vector<double>

Constructor & Destructor Documentation

◆ DoubleArraySubscriber() [1/2]

nt::DoubleArraySubscriber::DoubleArraySubscriber ( )
default

◆ DoubleArraySubscriber() [2/2]

nt::DoubleArraySubscriber::DoubleArraySubscriber ( NT_Subscriber  handle,
ParamType  defaultValue 
)

Construct from a subscriber handle; recommended to use DoubleArrayTopic::Subscribe() instead.

Parameters
handleNative handle
defaultValueDefault value

Member Function Documentation

◆ Get() [1/4]

std::vector< double > nt::DoubleArraySubscriber::Get ( ) const
inline

Get the last published value.

If no value has been published, returns the stored default value.

Returns
value

◆ Get() [2/4]

ValueType nt::DoubleArraySubscriber::Get ( ParamType  defaultValue) const

Get the last published value.

If no value has been published, returns the passed defaultValue.

Parameters
defaultValuedefault value to return if no value has been published
Returns
value

◆ Get() [3/4]

std::span< double > nt::DoubleArraySubscriber::Get ( wpi::SmallVectorImpl< SmallElemType > &  buf) const
inline

Get the last published value.

If no value has been published, returns the stored default value.

Parameters
bufstorage for returned value
Returns
value

◆ Get() [4/4]

SmallRetType nt::DoubleArraySubscriber::Get ( wpi::SmallVectorImpl< SmallElemType > &  buf,
ParamType  defaultValue 
) const

Get the last published value.

If no value has been published, returns the passed defaultValue.

Parameters
bufstorage for returned value
defaultValuedefault value to return if no value has been published
Returns
value

◆ GetAtomic() [1/4]

TimestampedDoubleArray nt::DoubleArraySubscriber::GetAtomic ( ) const
inline

Get the last published value along with its timestamp If no value has been published, returns the stored default value and a timestamp of 0.

Returns
timestamped value

◆ GetAtomic() [2/4]

TimestampedValueType nt::DoubleArraySubscriber::GetAtomic ( ParamType  defaultValue) const

Get the last published value along with its timestamp.

If no value has been published, returns the passed defaultValue and a timestamp of 0.

Parameters
defaultValuedefault value to return if no value has been published
Returns
timestamped value

◆ GetAtomic() [3/4]

TimestampedDoubleArrayView nt::DoubleArraySubscriber::GetAtomic ( wpi::SmallVectorImpl< SmallElemType > &  buf) const
inline

Get the last published value along with its timestamp.

If no value has been published, returns the stored default value and a timestamp of 0.

Parameters
bufstorage for returned value
Returns
timestamped value

◆ GetAtomic() [4/4]

TimestampedValueViewType nt::DoubleArraySubscriber::GetAtomic ( wpi::SmallVectorImpl< SmallElemType > &  buf,
ParamType  defaultValue 
) const

Get the last published value along with its timestamp.

If no value has been published, returns the passed defaultValue and a timestamp of 0.

Parameters
bufstorage for returned value
defaultValuedefault value to return if no value has been published
Returns
timestamped value

◆ GetTopic()

DoubleArrayTopic nt::DoubleArraySubscriber::GetTopic ( ) const
inline

Get the corresponding topic.

Returns
Topic

◆ ReadQueue()

std::vector< TimestampedDoubleArray > nt::DoubleArraySubscriber::ReadQueue ( )
inline

Get an array of all value changes since the last call to ReadQueue.

Also provides a timestamp for each value.

Note
The "poll storage" subscribe option can be used to set the queue depth.
Returns
Array of timestamped values; empty array if no new changes have been published since the previous call.

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