WPILibC++ 2023.4.3-108-ge5452e3
hal::impl::SimDataValueBase< T, MakeValue > Class Template Reference

#include <hal/simulation/SimDataValue.h>

Inheritance diagram for hal::impl::SimDataValueBase< T, MakeValue >:
hal::impl::SimCallbackRegistryBase hal::SimDataValue< T, MakeValue, GetName, GetDefault >

Public Member Functions

 SimDataValueBase (T value)
 
LLVM_ATTRIBUTE_ALWAYS_INLINE void CancelCallback (int32_t uid)
 
Get () const
 
LLVM_ATTRIBUTE_ALWAYS_INLINE operator T () const
 
void Reset (T value)
 
wpi::recursive_spinlockGetMutex ()
 

Protected Member Functions

int32_t DoRegisterCallback (HAL_NotifyCallback callback, void *param, HAL_Bool initialNotify, const char *name)
 
void DoSet (T value, const char *name)
 
- Protected Member Functions inherited from hal::impl::SimCallbackRegistryBase
int32_t DoRegister (RawFunctor callback, void *param)
 
LLVM_ATTRIBUTE_ALWAYS_INLINE void DoReset ()
 
void Cancel (int32_t uid)
 
void Reset ()
 
wpi::recursive_spinlockGetMutex ()
 

Protected Attributes

m_value
 
- Protected Attributes inherited from hal::impl::SimCallbackRegistryBase
wpi::recursive_spinlock m_mutex
 
std::unique_ptr< CallbackVectorm_callbacks
 

Additional Inherited Members

- Protected Types inherited from hal::impl::SimCallbackRegistryBase
using CallbackVector = wpi::UidVector< HalCallbackListener< RawFunctor >, 4 >
 
using RawFunctor = void(*)()
 

Constructor & Destructor Documentation

◆ SimDataValueBase()

template<typename T , HAL_Value(*)(T) MakeValue>
hal::impl::SimDataValueBase< T, MakeValue >::SimDataValueBase ( value)
inlineexplicit

Member Function Documentation

◆ CancelCallback()

template<typename T , HAL_Value(*)(T) MakeValue>
LLVM_ATTRIBUTE_ALWAYS_INLINE void hal::impl::SimDataValueBase< T, MakeValue >::CancelCallback ( int32_t  uid)
inline

◆ DoRegisterCallback()

template<typename T , HAL_Value(*)(T) MakeValue>
int32_t hal::impl::SimDataValueBase< T, MakeValue >::DoRegisterCallback ( HAL_NotifyCallback  callback,
void *  param,
HAL_Bool  initialNotify,
const char *  name 
)
inlineprotected

◆ DoSet()

template<typename T , HAL_Value(*)(T) MakeValue>
void hal::impl::SimDataValueBase< T, MakeValue >::DoSet ( value,
const char *  name 
)
inlineprotected

◆ Get()

template<typename T , HAL_Value(*)(T) MakeValue>
T hal::impl::SimDataValueBase< T, MakeValue >::Get ( ) const
inline

◆ GetMutex()

template<typename T , HAL_Value(*)(T) MakeValue>
wpi::recursive_spinlock & hal::impl::SimDataValueBase< T, MakeValue >::GetMutex ( )
inline

◆ operator T()

template<typename T , HAL_Value(*)(T) MakeValue>
LLVM_ATTRIBUTE_ALWAYS_INLINE hal::impl::SimDataValueBase< T, MakeValue >::operator T ( ) const
inline

◆ Reset()

template<typename T , HAL_Value(*)(T) MakeValue>
void hal::impl::SimDataValueBase< T, MakeValue >::Reset ( value)
inline

Member Data Documentation

◆ m_value

template<typename T , HAL_Value(*)(T) MakeValue>
T hal::impl::SimDataValueBase< T, MakeValue >::m_value
protected

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