22 #include <abstractsource.h>
23 #include "ambpluginimpl.h"
68 static_assert(std::is_base_of<AmbPluginImpl, T>::value,
"AmbPluginImpl has to be a base of T");
143 virtual const string uuid();
172 std::unique_ptr<T> d;
186 d(new T(re, config, *this))
195 d->getPropertyAsync(reply);
202 d->getRangePropertyAsync(reply);
209 return d->setProperty(request);
217 d->subscribeToPropertyChanges(property);
224 return d->unsubscribeToPropertyChanges(property);
230 return d ? d->supported() : PropertyList();
236 return d ? d->supportedOperations() : 0;
248 return d ? d->uuid() :
"";
255 d->propertyChanged(value);
262 d->supportedChanged(supportedProperties);
272 #endif // _AMBPLUGIN_H_
virtual void unsubscribeToPropertyChanges(VehicleProperty::Property property)=0
unsubscribeToPropertyChanges is called when a sink requests to unsubscribe from a given property's ch...
virtual const string uuid()=0
Pure virtual methods:
Definition: abstractpropertytype.h:70
Definition: abstractroutingengine.h:366
virtual PropertyList supported()=0
supported
virtual void subscribeToPropertyChanges(VehicleProperty::Property property)=0
subscribeToPropertyChanges is called when a sink requests a subscription. Source plugins can keep tra...
virtual void getPropertyAsync(AsyncPropertyReply *reply)=0
pure virtual methods:
Definition: ambplugin.h:62
The AsyncPropertyReply class is used by sources to reply to Get and Set operations. The source should set success to true if the call is successful or 'false' if the request was not successful and set 'error' to the appropriate error.
Definition: abstractroutingengine.h:123
The AsyncSetPropertyRequest class is used by sinks to set a property to the 'value'. The source will reply with a AsyncPropertyReply containing the new value or an error.
Definition: abstractroutingengine.h:219
Definition: propertyinfo.hpp:6
The AsyncRangePropertyReply class is used by a source to reply to an AsyncRangePropertyRequest. The source should set success to 'true' and populate the 'values' member if the request was successful. If the request is not successful, 'success' should be set to 'false' and the 'error' member should be set.
Definition: abstractroutingengine.h:331
virtual PropertyInfo getPropertyInfo(const VehicleProperty::Property &property)=0
getPropertyInfo used to return specific information about a property
virtual AsyncPropertyReply * setProperty(AsyncSetPropertyRequest request)=0
setProperty is called when a sink requests to set a value for a given property. This is only called i...
virtual void getRangePropertyAsync(AsyncRangePropertyReply *reply)=0
getRangePropertyAsync is called when a sink requests a series of values for a given property within a...
virtual void propertyChanged(AbstractPropertyType *value)
propertyChanged is called when a subscribed to property changes.
Definition: abstractsink.h:60
static PropertyInfo invalid()
Definition: propertyinfo.hpp:59
virtual int supportedOperations()=0
supportedOperations
virtual void supportedChanged(const PropertyList &supportedProperties)=0
Definition: abstractsource.h:41