WPILibC++ 2024.3.2
nt::UnitEntry< T > Class Template Referencefinal

NetworkTables unit-typed entry. More...

#include <networktables/UnitTopic.h>

Inheritance diagram for nt::UnitEntry< T >:
nt::UnitSubscriber< T > nt::UnitPublisher< T > nt::Subscriber nt::Publisher

Public Types

using SubscriberType = UnitSubscriber< T >
 
using PublisherType = UnitPublisher< T >
 
using TopicType = UnitTopic< T >
 
using ValueType = T
 
using ParamType = T
 
using TimestampedValueType = TimestampedUnit< T >
 
- Public Types inherited from nt::UnitSubscriber< T >
using TopicType = UnitTopic< T >
 
using ValueType = T
 
using ParamType = T
 
using TimestampedValueType = TimestampedUnit< T >
 
- Public Types inherited from nt::UnitPublisher< T >
using TopicType = UnitTopic< T >
 
using ValueType = T
 
using ParamType = T
 
using TimestampedValueType = TimestampedUnit< T >
 

Public Member Functions

 UnitEntry ()=default
 
 UnitEntry (NT_Entry handle, ParamType defaultValue)
 Construct from an entry handle; recommended to use UnitTopic::GetEntry() instead. More...
 
 operator bool () const
 Determines if the native handle is valid. More...
 
NT_Entry GetHandle () const
 Gets the native handle for the entry. More...
 
TopicType GetTopic () const
 Get the corresponding topic. More...
 
void Unpublish ()
 Stops publishing the entry if it's published. More...
 
- Public Member Functions inherited from nt::UnitSubscriber< T >
 UnitSubscriber ()=default
 
 UnitSubscriber (NT_Subscriber handle, ParamType defaultValue)
 Construct from a subscriber handle; recommended to use UnitTopic::Subscribe() instead. More...
 
ValueType Get () const
 Get the last published value. More...
 
ValueType Get (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...
 
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...
 
- Public Member Functions inherited from nt::UnitPublisher< T >
 UnitPublisher ()=default
 
 UnitPublisher (NT_Publisher handle)
 Construct from a publisher handle; recommended to use UnitTopic::Publish() instead. More...
 
void Set (ParamType value, int64_t time=0)
 Publish a new value. More...
 
void SetDefault (ParamType value)
 Publish a default value. More...
 
TopicType GetTopic () const
 Get the corresponding topic. More...
 
- Public Member Functions inherited from nt::Publisher
virtual ~Publisher ()
 
 Publisher (const Publisher &)=delete
 
Publisheroperator= (const Publisher &)=delete
 
 Publisher (Publisher &&)
 
Publisheroperator= (Publisher &&)
 
 operator bool () const
 Determines if the native handle is valid. More...
 
NT_Publisher GetHandle () const
 Gets the native handle for the publisher. More...
 
Topic GetTopic () const
 Gets the published-to topic. More...
 

Additional Inherited Members

- Protected Member Functions inherited from nt::Subscriber
 Subscriber ()=default
 
 Subscriber (NT_Subscriber handle)
 
- Protected Member Functions inherited from nt::Publisher
 Publisher ()=default
 
 Publisher (NT_Publisher handle)
 
- Protected Attributes inherited from nt::Subscriber
NT_Subscriber m_subHandle {0}
 
- Protected Attributes inherited from nt::Publisher
NT_Publisher m_pubHandle {0}
 NetworkTables handle. More...
 

Detailed Description

template<typename T>
class nt::UnitEntry< T >

NetworkTables unit-typed entry.

Note
Unlike NetworkTableEntry, the entry goes away when this is destroyed.
Template Parameters
Tunit type, e.g. units::meter_t

Member Typedef Documentation

◆ ParamType

template<typename T >
using nt::UnitEntry< T >::ParamType = T

◆ PublisherType

template<typename T >
using nt::UnitEntry< T >::PublisherType = UnitPublisher<T>

◆ SubscriberType

template<typename T >
using nt::UnitEntry< T >::SubscriberType = UnitSubscriber<T>

◆ TimestampedValueType

template<typename T >
using nt::UnitEntry< T >::TimestampedValueType = TimestampedUnit<T>

◆ TopicType

template<typename T >
using nt::UnitEntry< T >::TopicType = UnitTopic<T>

◆ ValueType

template<typename T >
using nt::UnitEntry< T >::ValueType = T

Constructor & Destructor Documentation

◆ UnitEntry() [1/2]

template<typename T >
nt::UnitEntry< T >::UnitEntry ( )
default

◆ UnitEntry() [2/2]

template<typename T >
nt::UnitEntry< T >::UnitEntry ( NT_Entry  handle,
ParamType  defaultValue 
)
inline

Construct from an entry handle; recommended to use UnitTopic::GetEntry() instead.

Parameters
handleNative handle
defaultValueDefault value

Member Function Documentation

◆ GetHandle()

template<typename T >
NT_Entry nt::UnitEntry< T >::GetHandle ( ) const
inline

Gets the native handle for the entry.

Returns
Native handle

◆ GetTopic()

template<typename T >
UnitTopic< T > nt::UnitEntry< T >::GetTopic
inline

Get the corresponding topic.

Returns
Topic

◆ operator bool()

template<typename T >
nt::UnitEntry< T >::operator bool ( ) const
inlineexplicit

Determines if the native handle is valid.

Returns
True if the native handle is valid, false otherwise.

◆ Unpublish()

template<typename T >
void nt::UnitEntry< T >::Unpublish
inline

Stops publishing the entry if it's published.


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