58 it->second.callback(property);
65 std::unique_lock<std::mutex> lock(
m_Lock);
77 #if INDI_VERSION_MAJOR < 2
88 #if INDI_VERSION_MAJOR < 2
99 #if INDI_VERSION_MAJOR < 2
112 #if INDI_VERSION_MAJOR < 2
144 #if INDI_VERSION_MAJOR < 2
155 #if INDI_VERSION_MAJOR < 2
162 static std::shared_ptr<BaseDevicePrivate>
invalid()
166 Invalid() {
valid =
false; }
168 return make_shared_weak(&
invalid);
void emitWatchProperty(const INDI::Property &property, bool isNew)
BaseDevice::Properties pAll
INDI::BaseMediator * mediator
void mediateRemoveDevice(BaseDevice baseDevice)
void addProperty(const INDI::Property &property)
void mediateNewMessage(BaseDevice baseDevice, int messageID)
void mediateUpdateProperty(Property property)
void mediateNewProperty(Property property)
static std::shared_ptr< BaseDevicePrivate > invalid()
void mediateNewDevice(BaseDevice baseDevice)
virtual ~BaseDevicePrivate()
std::map< std::string, WatchDetails > watchPropertyMap
void mediateRemoveProperty(Property property)
int setBLOB(INDI::PropertyBlob propertyBlob, const INDI::LilXmlElement &root, char *errmsg)
Parse and store BLOB in the respective vector.
std::deque< std::string > messageLog
Class to provide basic INDI device functionality.
void push_back(const INDI::Property &property)
Provides generic container for INDI properties.
INDI::PropertyViewSwitch * getSwitch() const
INDI::PropertyViewText * getText() const
INDI::PropertyViewNumber * getNumber() const
const char * getName() const
INDI::PropertyViewLight * getLight() const
INDI_PROPERTY_TYPE getType() const
A little DOM-style library to handle parsing and processing an XML file.
Namespace to encapsulate INDI client, drivers, and mediator classes.
std::function< void(INDI::Property)> callback
static PropertyView< T > * cast(PropertyType *raw)