Instrument Neutral Distributed Interface INDI  1.9.2
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
INDI::Property Class Reference

Provides generic container for INDI properties. More...

#include <indiproperty.h>

Inheritance diagram for INDI::Property:
INDI::PropertyBasic< T > INDI::PropertyBasic< IBLOB > INDI::PropertyBasic< ILight > INDI::PropertyBasic< INumber > INDI::PropertyBasic< ISwitch > INDI::PropertyBasic< IText > INDI::PropertyBlob INDI::PropertyLight INDI::PropertyNumber INDI::PropertySwitch INDI::PropertyText

Public Member Functions

 Property ()
 
 Property (void *property, INDI_PROPERTY_TYPE type)
 
 Property (INumberVectorProperty *property)
 
 Property (ITextVectorProperty *property)
 
 Property (ISwitchVectorProperty *property)
 
 Property (ILightVectorProperty *property)
 
 Property (IBLOBVectorProperty *property)
 
 ~Property ()
 
void setProperty (void *)
 
void setType (INDI_PROPERTY_TYPE t)
 
void setRegistered (bool r)
 
void setDynamic (bool d)
 
void setBaseDevice (BaseDevice *idp)
 
void * getProperty () const
 
INDI_PROPERTY_TYPE getType () const
 
const char * getTypeAsString () const
 
bool getRegistered () const
 
bool isDynamic () const
 
BaseDevicegetBaseDevice () 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
 
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::PropertyView< INumber > * getNumber () const
 
INDI::PropertyView< IText > * getText () const
 
INDI::PropertyView< ISwitch > * getSwitch () const
 
INDI::PropertyView< ILight > * getLight () const
 
INDI::PropertyView< IBLOB > * getBLOB () const
 
INDI::Propertyoperator-> ()
 
const INDI::Propertyoperator-> () const
 
 operator INDI::Property * ()
 
 operator const INDI::Property * () const
 

Protected Member Functions

 Property (std::shared_ptr< PropertyPrivate > dd)
 
 Property (PropertyPrivate &dd)
 

Protected Attributes

std::shared_ptr< PropertyPrivated_ptr
 

Detailed Description

Provides generic container for INDI properties.

Author
Jasem Mutlaq
Examples
tutorial_client.cpp, and tutorial_client.h.

Definition at line 43 of file indiproperty.h.

Constructor & Destructor Documentation

◆ Property() [1/9]

Property::Property ( )

Definition at line 126 of file indiproperty.cpp.

◆ Property() [2/9]

Property::Property ( void *  property,
INDI_PROPERTY_TYPE  type 
)

Definition at line 130 of file indiproperty.cpp.

◆ Property() [3/9]

Property::Property ( INumberVectorProperty property)

Definition at line 134 of file indiproperty.cpp.

◆ Property() [4/9]

Property::Property ( ITextVectorProperty property)

Definition at line 138 of file indiproperty.cpp.

◆ Property() [5/9]

Property::Property ( ISwitchVectorProperty property)

Definition at line 142 of file indiproperty.cpp.

◆ Property() [6/9]

Property::Property ( ILightVectorProperty property)

Definition at line 146 of file indiproperty.cpp.

◆ Property() [7/9]

Property::Property ( IBLOBVectorProperty property)

Definition at line 150 of file indiproperty.cpp.

◆ ~Property()

Property::~Property ( )

Definition at line 154 of file indiproperty.cpp.

◆ Property() [8/9]

Property::Property ( std::shared_ptr< PropertyPrivate dd)
protected

Definition at line 161 of file indiproperty.cpp.

◆ Property() [9/9]

Property::Property ( PropertyPrivate dd)
protected

Definition at line 157 of file indiproperty.cpp.

Member Function Documentation

◆ apply() [1/2]

void void void INDI::Property::apply ( ) const
inline

Definition at line 109 of file indiproperty.h.

◆ apply() [2/2]

void Property::apply ( const char *  format,
  ... 
) const

Definition at line 435 of file indiproperty.cpp.

◆ define() [1/2]

void INDI::Property::define ( ) const
inline

Definition at line 110 of file indiproperty.h.

◆ define() [2/2]

void Property::define ( const char *  format,
  ... 
) const

Definition at line 444 of file indiproperty.cpp.

◆ getBaseDevice()

BaseDevice * Property::getBaseDevice ( ) const

Definition at line 235 of file indiproperty.cpp.

◆ getBLOB()

PropertyView< IBLOB > * Property::getBLOB ( ) const

Definition at line 420 of file indiproperty.cpp.

◆ getDeviceName()

const char * Property::getDeviceName ( ) const
Examples
tutorial_client.cpp.

Definition at line 310 of file indiproperty.cpp.

◆ getGroupName()

const char * Property::getGroupName ( ) const

Definition at line 303 of file indiproperty.cpp.

◆ getLabel()

const char * Property::getLabel ( ) const

Definition at line 296 of file indiproperty.cpp.

◆ getLight()

PropertyView< ILight > * Property::getLight ( ) const

Definition at line 402 of file indiproperty.cpp.

◆ getName()

const char * Property::getName ( ) const
Examples
tutorial_client.cpp.

Definition at line 289 of file indiproperty.cpp.

◆ getNumber()

PropertyView< INumber > * Property::getNumber ( ) const

Definition at line 384 of file indiproperty.cpp.

◆ getPermission()

IPerm Property::getPermission ( ) const

Definition at line 336 of file indiproperty.cpp.

◆ getProperty()

void * Property::getProperty ( ) const

Definition at line 197 of file indiproperty.cpp.

◆ getRegistered()

bool Property::getRegistered ( ) const

Definition at line 223 of file indiproperty.cpp.

◆ getState()

IPState Property::getState ( ) const

Definition at line 324 of file indiproperty.cpp.

◆ getStateAsString()

const char * Property::getStateAsString ( ) const

Definition at line 331 of file indiproperty.cpp.

◆ getSwitch()

PropertyView< ISwitch > * Property::getSwitch ( ) const

Definition at line 411 of file indiproperty.cpp.

◆ getText()

PropertyView< IText > * Property::getText ( ) const

Definition at line 393 of file indiproperty.cpp.

◆ getTimestamp()

const char * Property::getTimestamp ( ) const

Definition at line 317 of file indiproperty.cpp.

◆ getType()

INDI_PROPERTY_TYPE Property::getType ( ) const

Definition at line 203 of file indiproperty.cpp.

◆ getTypeAsString()

const char * Property::getTypeAsString ( ) const

Definition at line 209 of file indiproperty.cpp.

◆ isDynamic()

bool Property::isDynamic ( ) const

Definition at line 229 of file indiproperty.cpp.

◆ isEmpty()

bool Property::isEmpty ( ) const

Definition at line 343 of file indiproperty.cpp.

◆ isLabelMatch() [1/2]

bool Property::isLabelMatch ( const char *  otherLabel) const

Definition at line 370 of file indiproperty.cpp.

◆ isLabelMatch() [2/2]

bool Property::isLabelMatch ( const std::string &  otherLabel) const

Definition at line 377 of file indiproperty.cpp.

◆ isNameMatch() [1/2]

bool Property::isNameMatch ( const char *  otherName) const

Definition at line 356 of file indiproperty.cpp.

◆ isNameMatch() [2/2]

bool Property::isNameMatch ( const std::string &  otherName) const

Definition at line 363 of file indiproperty.cpp.

◆ isValid()

bool Property::isValid ( ) const

Definition at line 350 of file indiproperty.cpp.

◆ operator const INDI::Property *()

Property::operator const INDI::Property * ( ) const

Definition at line 97 of file indiproperty.cpp.

◆ operator INDI::Property *()

Property::operator INDI::Property * ( )

Definition at line 91 of file indiproperty.cpp.

◆ operator->() [1/2]

const INDI::Property * Property::operator-> ( )

Definition at line 81 of file indiproperty.cpp.

◆ operator->() [2/2]

const INDI::Property* INDI::Property::operator-> ( ) const

◆ save()

void Property::save ( FILE *  fp) const

Definition at line 429 of file indiproperty.cpp.

◆ setBaseDevice()

void Property::setBaseDevice ( BaseDevice idp)

Definition at line 191 of file indiproperty.cpp.

◆ setDeviceName()

void Property::setDeviceName ( const char *  deviceName)

Definition at line 259 of file indiproperty.cpp.

◆ setDynamic()

void Property::setDynamic ( bool  d)

Definition at line 185 of file indiproperty.cpp.

◆ setGroupName()

void Property::setGroupName ( const char *  groupName)

Definition at line 253 of file indiproperty.cpp.

◆ setLabel()

void Property::setLabel ( const char *  label)

Definition at line 247 of file indiproperty.cpp.

◆ setName()

void Property::setName ( const char *  name)

Definition at line 241 of file indiproperty.cpp.

◆ setPermission()

void Property::setPermission ( IPerm  permission)

Definition at line 277 of file indiproperty.cpp.

◆ setProperty()

void Property::setProperty ( void *  p)

Definition at line 165 of file indiproperty.cpp.

◆ setRegistered()

void Property::setRegistered ( bool  r)

Definition at line 179 of file indiproperty.cpp.

◆ setState()

void Property::setState ( IPState  state)

Definition at line 271 of file indiproperty.cpp.

◆ setTimeout()

void Property::setTimeout ( double  timeout)

Definition at line 283 of file indiproperty.cpp.

◆ setTimestamp()

void Property::setTimestamp ( const char *  timestamp)

Definition at line 265 of file indiproperty.cpp.

◆ setType()

void Property::setType ( INDI_PROPERTY_TYPE  t)

Definition at line 173 of file indiproperty.cpp.

Member Data Documentation

◆ d_ptr

std::shared_ptr<PropertyPrivate> INDI::Property::d_ptr
protected

Definition at line 129 of file indiproperty.h.


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