Instrument Neutral Distributed Interface INDI  2.0.2
Public Types | Public Member Functions | Protected Member Functions | List of all members
INDI::PropertyBasic< T > Class Template Reference

#include <indipropertybasic.h>

Inheritance diagram for INDI::PropertyBasic< T >:
INDI::Property

Public Types

using ViewType = T
 

Public Member Functions

 ~PropertyBasic ()
 
void setName (const char *name)
 
void setName (const std::string &name)
 
void setLabel (const char *label)
 
void setLabel (const std::string &label)
 
void setGroupName (const char *name)
 
void setGroupName (const std::string &name)
 
void setPermission (IPerm permission)
 
void setTimeout (double timeout)
 
void setState (IPState state)
 
void setTimestamp (const char *timestamp)
 
void setTimestamp (const std::string &timestamp)
 
const char * getName () const
 
const char * getLabel () const
 
const char * getGroupName () const
 
IPerm getPermission () const
 
const char * getPermissionAsString () const
 
double getTimeout () const
 
IPState getState () const
 
const char * getStateAsString () const
 
const char * getTimestamp () const
 
bool isEmpty () const
 
bool isNameMatch (const char *otherName) const
 
bool isNameMatch (const std::string &otherName) const
 
bool isLabelMatch (const char *otherLabel) const
 
bool isLabelMatch (const std::string &otherLabel) const
 
void save (FILE *f) const
 
void vapply (const char *format, va_list args) const
 
void vdefine (const char *format, va_list args) const
 
void apply (const char *format,...) const ATTRIBUTE_FORMAT_PRINTF(2
 
void void define (const char *format,...) const ATTRIBUTE_FORMAT_PRINTF(2
 
void void void apply () const
 
void define () const
 
size_t size () const
 
size_t count () const
 
void reserve (size_t size)
 
void resize (size_t size)
 
void shrink_to_fit ()
 
void push (WidgetView< T > &&item)
 
void push (const WidgetView< T > &item)
 
const WidgetView< T > * at (size_t index) const
 
WidgetView< T > & operator[] (ssize_t index) const
 
WidgetView< T > * begin ()
 
WidgetView< T > * end ()
 
const WidgetView< T > * begin () const
 
const WidgetView< T > * end () const
 
template<typename Predicate >
WidgetView< T > * find_if (Predicate pred)
 
template<typename Predicate >
const WidgetView< T > * find_if (Predicate pred) const
 
WidgetView< T > * findWidgetByName (const char *name) const
 
int findWidgetIndexByName (const char *name) const
 
INDI::PropertyView< T > * operator-> ()
 
INDI::PropertyView< T > operator* ()
 
- Public Member Functions inherited from INDI::Property
 Property ()
 
 ~Property ()
 
 Property (INDI::PropertyNumber property)
 
 Property (INDI::PropertyText property)
 
 Property (INDI::PropertySwitch property)
 
 Property (INDI::PropertyLight property)
 
 Property (INDI::PropertyBlob property)
 
 Property (INumberVectorProperty *property)
 
 Property (ITextVectorProperty *property)
 
 Property (ISwitchVectorProperty *property)
 
 Property (ILightVectorProperty *property)
 
 Property (IBLOBVectorProperty *property)
 
 Property (INDI::PropertyViewNumber *property)
 
 Property (INDI::PropertyViewText *property)
 
 Property (INDI::PropertyViewSwitch *property)
 
 Property (INDI::PropertyViewLight *property)
 
 Property (INDI::PropertyViewBlob *property)
 
void setProperty (void *)
 
void setType (INDI_PROPERTY_TYPE t)
 
void setRegistered (bool r)
 
void setDynamic (bool d)
 
void setBaseDevice (BaseDevice *idp)
 
void setBaseDevice (BaseDevice device)
 
void * getProperty () const
 
INDI_PROPERTY_TYPE getType () const
 
const char * getTypeAsString () const
 
bool getRegistered () const
 
bool isDynamic () const
 
BaseDevice getBaseDevice () const
 
void setName (const char *name)
 
void setLabel (const char *label)
 
void setGroupName (const char *groupName)
 
void setDeviceName (const char *deviceName)
 
void setTimestamp (const char *timestamp)
 
void setState (IPState state)
 
void setPermission (IPerm permission)
 
void setTimeout (double timeout)
 
const char * getName () const
 
const char * getLabel () const
 
const char * getGroupName () const
 
const char * getDeviceName () const
 
const char * getTimestamp () const
 
IPState getState () const
 
const char * getStateAsString () const
 
IPerm getPermission () const
 
bool isEmpty () const
 
bool isValid () const
 
bool isNameMatch (const char *otherName) const
 
bool isNameMatch (const std::string &otherName) const
 
bool isLabelMatch (const char *otherLabel) const
 
bool isLabelMatch (const std::string &otherLabel) const
 
bool isDeviceNameMatch (const char *otherDeviceName) const
 
bool isDeviceNameMatch (const std::string &otherDeviceName) const
 
bool isTypeMatch (INDI_PROPERTY_TYPE otherType) const
 
void onUpdate (const std::function< void()> &callback)
 
void emitUpdate ()
 
bool hasUpdateCallback () const
 
void save (FILE *fp) const
 
void apply (const char *format,...) const ATTRIBUTE_FORMAT_PRINTF(2
 
void void define (const char *format,...) const ATTRIBUTE_FORMAT_PRINTF(2
 
void void void apply () const
 
void define () const
 
INDI::PropertyViewNumbergetNumber () const
 
INDI::PropertyViewTextgetText () const
 
INDI::PropertyViewSwitchgetSwitch () const
 
INDI::PropertyViewLightgetLight () const
 
INDI::PropertyViewBlobgetBLOB () const
 
INDI::Propertyoperator-> ()
 
const INDI::Propertyoperator-> () const
 
 operator INDI::Property * ()
 
 operator const INDI::Property * () const
 
 operator INDI::PropertyViewNumber * () const
 
 operator INDI::PropertyViewText * () const
 
 operator INDI::PropertyViewSwitch * () const
 
 operator INDI::PropertyViewLight * () const
 
 operator INDI::PropertyViewBlob * () const
 
bool operator!= (std::nullptr_t) const
 
bool operator== (std::nullptr_t) const
 
 operator bool () const
 
 operator bool ()
 

Protected Member Functions

PropertyView< T > * operator& ()
 
 PropertyBasic (PropertyBasicPrivate &dd)
 
 PropertyBasic (const std::shared_ptr< PropertyBasicPrivate > &dd)
 
- Protected Member Functions inherited from INDI::Property
 Property (const std::shared_ptr< PropertyPrivate > &dd)
 
 Property (PropertyPrivate &dd)
 
INDI::Propertyself ()
 

Additional Inherited Members

- Protected Attributes inherited from INDI::Property
std::shared_ptr< PropertyPrivated_ptr
 

Detailed Description

template<typename T>
class INDI::PropertyBasic< T >

Definition at line 38 of file indipropertybasic.h.

Member Typedef Documentation

◆ ViewType

template<typename T >
using INDI::PropertyBasic< T >::ViewType = T

Definition at line 43 of file indipropertybasic.h.

Constructor & Destructor Documentation

◆ ~PropertyBasic()

template<typename T >
INDI::PropertyBasic< T >::~PropertyBasic

Definition at line 59 of file indipropertybasic.cpp.

◆ PropertyBasic() [1/2]

template<typename T >
INDI::PropertyBasic< T >::PropertyBasic ( PropertyBasicPrivate dd)
protected

Definition at line 63 of file indipropertybasic.cpp.

◆ PropertyBasic() [2/2]

template<typename T >
INDI::PropertyBasic< T >::PropertyBasic ( const std::shared_ptr< PropertyBasicPrivate > &  dd)
protected

Definition at line 68 of file indipropertybasic.cpp.

Member Function Documentation

◆ apply() [1/2]

template<typename T >
void INDI::PropertyBasic< T >::apply

Definition at line 289 of file indipropertybasic.cpp.

◆ apply() [2/2]

template<typename T >
void INDI::PropertyBasic< T >::apply ( const char *  format,
  ... 
) const

Definition at line 269 of file indipropertybasic.cpp.

◆ at()

template<typename T >
const WidgetView< T > * INDI::PropertyBasic< T >::at ( size_t  index) const

Definition at line 375 of file indipropertybasic.cpp.

◆ begin() [1/2]

template<typename T >
WidgetView< T > * INDI::PropertyBasic< T >::begin

Definition at line 390 of file indipropertybasic.cpp.

◆ begin() [2/2]

template<typename T >
const WidgetView< T > * INDI::PropertyBasic< T >::begin

Definition at line 404 of file indipropertybasic.cpp.

◆ count()

template<typename T >
size_t INDI::PropertyBasic< T >::count ( ) const
inline

Definition at line 105 of file indipropertybasic.h.

◆ define() [1/2]

template<typename T >
void INDI::PropertyBasic< T >::define

Definition at line 296 of file indipropertybasic.cpp.

◆ define() [2/2]

template<typename T >
void INDI::PropertyBasic< T >::define ( const char *  format,
  ... 
) const

Definition at line 279 of file indipropertybasic.cpp.

◆ end() [1/2]

template<typename T >
WidgetView< T > * INDI::PropertyBasic< T >::end

Definition at line 397 of file indipropertybasic.cpp.

◆ end() [2/2]

template<typename T >
const WidgetView< T > * INDI::PropertyBasic< T >::end

Definition at line 411 of file indipropertybasic.cpp.

◆ find_if() [1/2]

template<typename T >
template<typename Predicate >
WidgetView<T>* INDI::PropertyBasic< T >::find_if ( Predicate  pred)
inline

Definition at line 127 of file indipropertybasic.h.

◆ find_if() [2/2]

template<typename T >
template<typename Predicate >
const WidgetView<T>* INDI::PropertyBasic< T >::find_if ( Predicate  pred) const
inline

Definition at line 133 of file indipropertybasic.h.

◆ findWidgetByName()

template<typename T >
WidgetView< T > * INDI::PropertyBasic< T >::findWidgetByName ( const char *  name) const

Definition at line 303 of file indipropertybasic.cpp.

◆ findWidgetIndexByName()

template<typename T >
int INDI::PropertyBasic< T >::findWidgetIndexByName ( const char *  name) const

Definition at line 310 of file indipropertybasic.cpp.

◆ getGroupName()

template<typename T >
const char * INDI::PropertyBasic< T >::getGroupName

Definition at line 164 of file indipropertybasic.cpp.

◆ getLabel()

template<typename T >
const char * INDI::PropertyBasic< T >::getLabel

Definition at line 157 of file indipropertybasic.cpp.

◆ getName()

template<typename T >
const char * INDI::PropertyBasic< T >::getName

Definition at line 150 of file indipropertybasic.cpp.

◆ getPermission()

template<typename T >
IPerm INDI::PropertyBasic< T >::getPermission

Definition at line 171 of file indipropertybasic.cpp.

◆ getPermissionAsString()

template<typename T >
const char * INDI::PropertyBasic< T >::getPermissionAsString

Definition at line 178 of file indipropertybasic.cpp.

◆ getState()

template<typename T >
IPState INDI::PropertyBasic< T >::getState

Definition at line 192 of file indipropertybasic.cpp.

◆ getStateAsString()

template<typename T >
const char * INDI::PropertyBasic< T >::getStateAsString

Definition at line 199 of file indipropertybasic.cpp.

◆ getTimeout()

template<typename T >
double INDI::PropertyBasic< T >::getTimeout

Definition at line 185 of file indipropertybasic.cpp.

◆ getTimestamp()

template<typename T >
const char * INDI::PropertyBasic< T >::getTimestamp

Definition at line 206 of file indipropertybasic.cpp.

◆ isEmpty()

template<typename T >
bool INDI::PropertyBasic< T >::isEmpty

Definition at line 213 of file indipropertybasic.cpp.

◆ isLabelMatch() [1/2]

template<typename T >
bool INDI::PropertyBasic< T >::isLabelMatch ( const char *  otherLabel) const

Definition at line 234 of file indipropertybasic.cpp.

◆ isLabelMatch() [2/2]

template<typename T >
bool INDI::PropertyBasic< T >::isLabelMatch ( const std::string &  otherLabel) const

Definition at line 241 of file indipropertybasic.cpp.

◆ isNameMatch() [1/2]

template<typename T >
bool INDI::PropertyBasic< T >::isNameMatch ( const char *  otherName) const

Definition at line 220 of file indipropertybasic.cpp.

◆ isNameMatch() [2/2]

template<typename T >
bool INDI::PropertyBasic< T >::isNameMatch ( const std::string &  otherName) const

Definition at line 227 of file indipropertybasic.cpp.

◆ operator&()

template<typename T >
PropertyView< T > * INDI::PropertyBasic< T >::operator&
protected

Definition at line 418 of file indipropertybasic.cpp.

◆ operator*()

template<typename T >
INDI::PropertyView< T > INDI::PropertyBasic< T >::operator*

Definition at line 433 of file indipropertybasic.cpp.

◆ operator->()

template<typename T >
PropertyView< T > * INDI::PropertyBasic< T >::operator->

Definition at line 426 of file indipropertybasic.cpp.

◆ operator[]()

template<typename T >
WidgetView< T > & INDI::PropertyBasic< T >::operator[] ( ssize_t  index) const

Definition at line 382 of file indipropertybasic.cpp.

◆ push() [1/2]

template<typename T >
void INDI::PropertyBasic< T >::push ( const WidgetView< T > &  item)

Definition at line 369 of file indipropertybasic.cpp.

◆ push() [2/2]

template<typename T >
void INDI::PropertyBasic< T >::push ( WidgetView< T > &&  item)

Definition at line 357 of file indipropertybasic.cpp.

◆ reserve()

template<typename T >
void INDI::PropertyBasic< T >::reserve ( size_t  size)

Definition at line 335 of file indipropertybasic.cpp.

◆ resize()

template<typename T >
void INDI::PropertyBasic< T >::resize ( size_t  size)

Definition at line 324 of file indipropertybasic.cpp.

◆ save()

template<typename T >
void INDI::PropertyBasic< T >::save ( FILE *  f) const

Definition at line 248 of file indipropertybasic.cpp.

◆ setGroupName() [1/2]

template<typename T >
void INDI::PropertyBasic< T >::setGroupName ( const char *  name)

Definition at line 101 of file indipropertybasic.cpp.

◆ setGroupName() [2/2]

template<typename T >
void INDI::PropertyBasic< T >::setGroupName ( const std::string &  name)

Definition at line 108 of file indipropertybasic.cpp.

◆ setLabel() [1/2]

template<typename T >
void INDI::PropertyBasic< T >::setLabel ( const char *  label)

Definition at line 87 of file indipropertybasic.cpp.

◆ setLabel() [2/2]

template<typename T >
void INDI::PropertyBasic< T >::setLabel ( const std::string &  label)

Definition at line 94 of file indipropertybasic.cpp.

◆ setName() [1/2]

template<typename T >
void INDI::PropertyBasic< T >::setName ( const char *  name)

Definition at line 73 of file indipropertybasic.cpp.

◆ setName() [2/2]

template<typename T >
void INDI::PropertyBasic< T >::setName ( const std::string &  name)

Definition at line 80 of file indipropertybasic.cpp.

◆ setPermission()

template<typename T >
void INDI::PropertyBasic< T >::setPermission ( IPerm  permission)

Definition at line 115 of file indipropertybasic.cpp.

◆ setState()

template<typename T >
void INDI::PropertyBasic< T >::setState ( IPState  state)

Definition at line 129 of file indipropertybasic.cpp.

◆ setTimeout()

template<typename T >
void INDI::PropertyBasic< T >::setTimeout ( double  timeout)

Definition at line 122 of file indipropertybasic.cpp.

◆ setTimestamp() [1/2]

template<typename T >
void INDI::PropertyBasic< T >::setTimestamp ( const char *  timestamp)

Definition at line 136 of file indipropertybasic.cpp.

◆ setTimestamp() [2/2]

template<typename T >
void INDI::PropertyBasic< T >::setTimestamp ( const std::string &  timestamp)

Definition at line 143 of file indipropertybasic.cpp.

◆ shrink_to_fit()

template<typename T >
void INDI::PropertyBasic< T >::shrink_to_fit

Definition at line 346 of file indipropertybasic.cpp.

◆ size()

template<typename T >
size_t INDI::PropertyBasic< T >::size

Definition at line 317 of file indipropertybasic.cpp.

◆ vapply()

template<typename T >
void INDI::PropertyBasic< T >::vapply ( const char *  format,
va_list  args 
) const

Definition at line 255 of file indipropertybasic.cpp.

◆ vdefine()

template<typename T >
void INDI::PropertyBasic< T >::vdefine ( const char *  format,
va_list  args 
) const

Definition at line 262 of file indipropertybasic.cpp.


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