WPILibC++ 2024.3.2
nt::NTSendableBuilder Class Referenceabstract

Helper class for building Sendable dashboard representations for NetworkTables. More...

#include <networktables/NTSendableBuilder.h>

Inheritance diagram for nt::NTSendableBuilder:
wpi::SendableBuilder frc::SendableBuilderImpl

Public Member Functions

virtual void SetUpdateTable (wpi::unique_function< void()> func)=0
 Set the function that should be called to update the network table for things other than properties. More...
 
virtual Topic GetTopic (std::string_view key)=0
 Add a property without getters or setters. More...
 
virtual std::shared_ptr< NetworkTableGetTable ()=0
 Get the network table. More...
 
BackendKind GetBackendKind () const override
 Gets the kind of backend being used. More...
 
- Public Member Functions inherited from wpi::SendableBuilder
virtual ~SendableBuilder ()=default
 
virtual void SetSmartDashboardType (std::string_view type)=0
 Set the string representation of the named data type that will be used by the smart dashboard for this sendable. More...
 
virtual void SetActuator (bool value)=0
 Set a flag indicating if this sendable should be treated as an actuator. More...
 
virtual void SetSafeState (std::function< void()> func)=0
 Set the function that should be called to set the Sendable into a safe state. More...
 
virtual void AddBooleanProperty (std::string_view key, std::function< bool()> getter, std::function< void(bool)> setter)=0
 Add a boolean property. More...
 
virtual void PublishConstBoolean (std::string_view key, bool value)=0
 Add a constant boolean property. More...
 
virtual void AddIntegerProperty (std::string_view key, std::function< int64_t()> getter, std::function< void(int64_t)> setter)=0
 Add an integer property. More...
 
virtual void PublishConstInteger (std::string_view key, int64_t value)=0
 Add a constant integer property. More...
 
virtual void AddFloatProperty (std::string_view key, std::function< float()> getter, std::function< void(float)> setter)=0
 Add a float property. More...
 
virtual void PublishConstFloat (std::string_view key, float value)=0
 Add a constant float property. More...
 
virtual void AddDoubleProperty (std::string_view key, std::function< double()> getter, std::function< void(double)> setter)=0
 Add a double property. More...
 
virtual void PublishConstDouble (std::string_view key, double value)=0
 Add a constant double property. More...
 
virtual void AddStringProperty (std::string_view key, std::function< std::string()> getter, std::function< void(std::string_view)> setter)=0
 Add a string property. More...
 
virtual void PublishConstString (std::string_view key, std::string_view value)=0
 Add a constant string property. More...
 
virtual void AddBooleanArrayProperty (std::string_view key, std::function< std::vector< int >()> getter, std::function< void(std::span< const int >)> setter)=0
 Add a boolean array property. More...
 
virtual void PublishConstBooleanArray (std::string_view key, std::span< const int > value)=0
 Add a constant boolean array property. More...
 
virtual void AddIntegerArrayProperty (std::string_view key, std::function< std::vector< int64_t >()> getter, std::function< void(std::span< const int64_t >)> setter)=0
 Add an integer array property. More...
 
virtual void PublishConstIntegerArray (std::string_view key, std::span< const int64_t > value)=0
 Add a constant integer array property. More...
 
virtual void AddFloatArrayProperty (std::string_view key, std::function< std::vector< float >()> getter, std::function< void(std::span< const float >)> setter)=0
 Add a float array property. More...
 
virtual void PublishConstFloatArray (std::string_view key, std::span< const float > value)=0
 Add a constant float array property. More...
 
virtual void AddDoubleArrayProperty (std::string_view key, std::function< std::vector< double >()> getter, std::function< void(std::span< const double >)> setter)=0
 Add a double array property. More...
 
virtual void PublishConstDoubleArray (std::string_view key, std::span< const double > value)=0
 Add a constant double array property. More...
 
virtual void AddStringArrayProperty (std::string_view key, std::function< std::vector< std::string >()> getter, std::function< void(std::span< const std::string >)> setter)=0
 Add a string array property. More...
 
virtual void PublishConstStringArray (std::string_view key, std::span< const std::string > value)=0
 Add a constant string array property. More...
 
virtual void AddRawProperty (std::string_view key, std::string_view typeString, std::function< std::vector< uint8_t >()> getter, std::function< void(std::span< const uint8_t >)> setter)=0
 Add a raw property. More...
 
virtual void PublishConstRaw (std::string_view key, std::string_view typeString, std::span< const uint8_t > value)=0
 Add a constant raw property. More...
 
virtual void AddSmallStringProperty (std::string_view key, std::function< std::string_view(wpi::SmallVectorImpl< char > &buf)> getter, std::function< void(std::string_view)> setter)=0
 Add a string property (SmallString form). More...
 
virtual void AddSmallBooleanArrayProperty (std::string_view key, std::function< std::span< const int >(wpi::SmallVectorImpl< int > &buf)> getter, std::function< void(std::span< const int >)> setter)=0
 Add a boolean array property (SmallVector form). More...
 
virtual void AddSmallIntegerArrayProperty (std::string_view key, std::function< std::span< const int64_t >(wpi::SmallVectorImpl< int64_t > &buf)> getter, std::function< void(std::span< const int64_t >)> setter)=0
 Add an integer array property (SmallVector form). More...
 
virtual void AddSmallFloatArrayProperty (std::string_view key, std::function< std::span< const float >(wpi::SmallVectorImpl< float > &buf)> getter, std::function< void(std::span< const float >)> setter)=0
 Add a float array property (SmallVector form). More...
 
virtual void AddSmallDoubleArrayProperty (std::string_view key, std::function< std::span< const double >(wpi::SmallVectorImpl< double > &buf)> getter, std::function< void(std::span< const double >)> setter)=0
 Add a double array property (SmallVector form). More...
 
virtual void AddSmallStringArrayProperty (std::string_view key, std::function< std::span< const std::string >(wpi::SmallVectorImpl< std::string > &buf)> getter, std::function< void(std::span< const std::string >)> setter)=0
 Add a string array property (SmallVector form). More...
 
virtual void AddSmallRawProperty (std::string_view key, std::string_view typeString, std::function< std::span< uint8_t >(wpi::SmallVectorImpl< uint8_t > &buf)> getter, std::function< void(std::span< const uint8_t >)> setter)=0
 Add a raw property (SmallVector form). More...
 
virtual BackendKind GetBackendKind () const =0
 Gets the kind of backend being used. More...
 
virtual bool IsPublished () const =0
 Return whether this sendable has been published. More...
 
virtual void Update ()=0
 Update the published values by calling the getters for all properties. More...
 
virtual void ClearProperties ()=0
 Clear properties. More...
 

Additional Inherited Members

- Public Types inherited from wpi::SendableBuilder
enum  BackendKind { kUnknown , kNetworkTables }
 The backend kinds used for the sendable builder. More...
 

Detailed Description

Helper class for building Sendable dashboard representations for NetworkTables.

Member Function Documentation

◆ GetBackendKind()

BackendKind nt::NTSendableBuilder::GetBackendKind ( ) const
overridevirtual

Gets the kind of backend being used.

Returns
Backend kind

Implements wpi::SendableBuilder.

◆ GetTable()

virtual std::shared_ptr< NetworkTable > nt::NTSendableBuilder::GetTable ( )
pure virtual

Get the network table.

Returns
The network table

Implemented in frc::SendableBuilderImpl.

◆ GetTopic()

virtual Topic nt::NTSendableBuilder::GetTopic ( std::string_view  key)
pure virtual

Add a property without getters or setters.

This can be used to get entry handles for the function called by SetUpdateTable().

Parameters
keyproperty name
Returns
Network table topic

Implemented in frc::SendableBuilderImpl.

◆ SetUpdateTable()

virtual void nt::NTSendableBuilder::SetUpdateTable ( wpi::unique_function< void()>  func)
pure virtual

Set the function that should be called to update the network table for things other than properties.

Note this function is not passed the network table object; instead it should use the entry handles returned by GetEntry().

Parameters
funcfunction

Implemented in frc::SendableBuilderImpl.


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