File Information
Library: IoT/BtLE
Package: Generated
Header: IoT/BtLE/IPeripheral.h
Description
This class provides a high-level interface to a Bt LE peripheral device using the Bt Generic Attribute Profile (GATT).
Inheritance
Direct Base Classes: Poco::OSP::Service
All Base Classes: Poco::OSP::Service, Poco::RefCountedObject
Known Derived Classes: PeripheralRemoteObject
Member Summary
Member Functions: address, characteristic, characteristicForAssignedNumber, characteristics, connect, connectAsync, deviceName, disconnect, expandUUID, firmwareRevision, handleForDescriptor, hardwareRevision, isA, isConnected, manufacturerName, modelNumber, readBytes, readDouble, readFloat, readInt16, readInt32, readInt64, readInt8, readString, readString0, readUInt16, readUInt32, readUInt64, readUInt8, remoting__enableEvents, remoting__typeId, serialNumber, serviceUUIDForAssignedNumber, services, softwareRevision, type, writeBytes, writeDouble, writeFloat, writeInt16, writeInt32, writeInt64, writeInt8, writeString, writeUInt16, writeUInt32, writeUInt64, writeUInt8
Inherited Functions: duplicate, isA, referenceCount, release, type
Types Aliases
Ptr
using Ptr = Poco::AutoPtr < IPeripheral >;
Constructors
IPeripheral
IPeripheral();
Creates a IPeripheral.
Destructor
~IPeripheral
virtual ~IPeripheral();
Destroys the IPeripheral.
Member Functions
address
virtual std::string address() const = 0;
Returns the address of the device.
characteristic
virtual IoT::BtLE::Characteristic characteristic(
const Poco::UUID & serviceUUID,
const Poco::UUID & characteristicUUID
) = 0;
Returns the properties and handle for accessing the value of the given characteristic.
characteristicForAssignedNumber
virtual IoT::BtLE::Characteristic characteristicForAssignedNumber(
const Poco::UUID & serviceUUID,
Poco::UInt32 assignedNumber
) = 0;
Returns the properties and handle for accessing the value of the given characteristic.
characteristics
virtual std::vector < Poco::UUID > characteristics(
const Poco::UUID & serviceUUID
) = 0;
Returns a vector containing the UUIDs of all available characteristics of the service identified by the given serviceUUID.
connect
virtual void connect() = 0;
Connects to the Bt LE peripheral.
Waits for successful connection or error.
connectAsync
virtual void connectAsync() = 0;
Connects to the Bt LE peripheral.
Successful connection or error will be reported through connected and error events.
deviceName
virtual std::string deviceName() = 0;
Returns the peripheral's device name obtained from the Generic Access Profile.
disconnect
virtual void disconnect() = 0;
Disconnects from the Bt LE peripheral.
expandUUID
virtual Poco::UUID expandUUID(
Poco::UInt32 uuid
) = 0;
firmwareRevision
virtual std::string firmwareRevision() = 0;
Returns the peripheral's firmware revision string obtained from the Device Information service.
handleForDescriptor
virtual Poco::UInt16 handleForDescriptor(
const Poco::UUID & serviceUUID,
const Poco::UUID & characteristicUUID,
const Poco::UUID & descriptorUUID
) = 0;
Returns the handle with the given descriptor UUID for given characteristic and service.
hardwareRevision
virtual std::string hardwareRevision() = 0;
Returns the peripheral's hardware revision string obtained from the Device Information service.
isA
bool isA(
const std::type_info & otherType
) const;
Returns true if the class is a subclass of the class given by otherType.
See also: Poco::OSP::Service::isA()
isConnected
virtual bool isConnected() const = 0;
Returns true if the device is connected.
manufacturerName
virtual std::string manufacturerName() = 0;
Returns the peripheral's manufacturer name obtained from the Device Information service.
modelNumber
virtual std::string modelNumber() = 0;
Returns the peripheral's model number string obtained from the Device Information service.
readBytes
virtual std::vector < char > readBytes(
Poco::UInt16 valueHandle
) = 0;
Reads a raw byte string from the given value handle.
readDouble
virtual double readDouble(
Poco::UInt16 valueHandle
) = 0;
Reads a 64-bit double value (little endian) from the given value handle.
readFloat
virtual float readFloat(
Poco::UInt16 valueHandle
) = 0;
Reads a 32-bit float value (little endian) from the given value handle.
readInt16
virtual Poco::Int16 readInt16(
Poco::UInt16 valueHandle
) = 0;
Reads a signed 16-bit integer value (little endian) from the given value handle.
readInt32
virtual Poco::Int32 readInt32(
Poco::UInt16 valueHandle
) = 0;
Reads a signed 32-bit integer value (little endian) from the given value handle.
readInt64
virtual Poco::Int64 readInt64(
Poco::UInt16 valueHandle
) = 0;
Reads a signed 64-bit integer value (little endian) from the given value handle.
readInt8
virtual Poco::Int8 readInt8(
Poco::UInt16 valueHandle
) = 0;
Reads a signed byte value from the given value handle.
readString
virtual std::string readString(
Poco::UInt16 valueHandle
) = 0;
Reads a raw byte string from the given value handle.
readString0
virtual std::string readString0(
Poco::UInt16 valueHandle
) = 0;
Reads a 0-terminated character string from the given value handle.
readUInt16
virtual Poco::UInt16 readUInt16(
Poco::UInt16 valueHandle
) = 0;
Reads an unsigned 16-bit integer value (little endian) from the given value handle.
readUInt32
virtual Poco::UInt32 readUInt32(
Poco::UInt16 valueHandle
) = 0;
Reads an unsigned 32-bit integer value (little endian) from the given value handle.
readUInt64
virtual Poco::UInt64 readUInt64(
Poco::UInt16 valueHandle
) = 0;
Reads an unsigned 64-bit integer value (little endian) from the given value handle.
readUInt8
virtual Poco::UInt8 readUInt8(
Poco::UInt16 valueHandle
) = 0;
Reads an unsigned byte value from the given value handle.
remoting__enableEvents
virtual std::string remoting__enableEvents(
Poco::RemotingNG::Listener::Ptr pListener,
bool enable = bool (true)
) = 0;
Enable or disable delivery of remote events.
The given Listener instance must implement the Poco::RemotingNG::EventListener interface, otherwise this method will fail with a RemotingException.
This method is only used with Proxy objects; calling this method on a RemoteObject will do nothing.
remoting__typeId
static const Poco::RemotingNG::Identifiable::TypeId & remoting__typeId();
Returns the TypeId of the class.
serialNumber
virtual std::string serialNumber() = 0;
Returns the peripheral's serial number string obtained from the Device Information service.
serviceUUIDForAssignedNumber
virtual Poco::UUID serviceUUIDForAssignedNumber(
Poco::UInt32 assignedNumber
) = 0;
Returns the UUID of the service with the given 32-bit assigned number, or null UUID if no such service is available.
services
virtual std::vector < Poco::UUID > services() = 0;
Returns a vector containing the UUIDs of all available services.
softwareRevision
virtual std::string softwareRevision() = 0;
Returns the peripheral's software revision string obtained from the Device Information service.
type
const std::type_info & type() const;
Returns the type information for the object's class.
See also: Poco::OSP::Service::type()
writeBytes
virtual void writeBytes(
Poco::UInt16 valueHandle,
const std::vector < char > & value,
bool withResponse
) = 0;
Writes a raw byte string to the given value handle.
If withResponse is false, uses a WriteWithoutResponse operation, otherwise a Write operation.
writeDouble
virtual void writeDouble(
Poco::UInt16 valueHandle,
double value,
bool withResponse
) = 0;
Writes a signed 64-bit double value (little endian) to the given value handle.
If withResponse is false, uses a WriteWithoutResponse operation, otherwise a Write operation.
writeFloat
virtual void writeFloat(
Poco::UInt16 valueHandle,
float value,
bool withResponse
) = 0;
Writes a signed 32-bit float value (little endian) to the given value handle.
If withResponse is false, uses a WriteWithoutResponse operation, otherwise a Write operation.
writeInt16
virtual void writeInt16(
Poco::UInt16 valueHandle,
Poco::Int16 value,
bool withResponse
) = 0;
Writes a signed 16-bit integer value (little endian) to the given value handle.
If withResponse is false, uses a WriteWithoutResponse operation, otherwise a Write operation.
writeInt32
virtual void writeInt32(
Poco::UInt16 valueHandle,
Poco::Int32 value,
bool withResponse
) = 0;
Writes a signed 32-bit integer value (little endian) to the given value handle.
If withResponse is false, uses a WriteWithoutResponse operation, otherwise a Write operation.
writeInt64
virtual void writeInt64(
Poco::UInt16 valueHandle,
Poco::Int64 value,
bool withResponse
) = 0;
Writes a signed 32-bit integer value (little endian) to the given value handle.
If withResponse is false, uses a WriteWithoutResponse operation, otherwise a Write operation.
writeInt8
virtual void writeInt8(
Poco::UInt16 valueHandle,
Poco::Int8 value,
bool withResponse
) = 0;
Writes a signed byte value to the given value handle.
If withResponse is false, uses a WriteWithoutResponse operation, otherwise a Write operation.
writeString
virtual void writeString(
Poco::UInt16 valueHandle,
const std::string & value,
bool withResponse
) = 0;
Writes a raw byte string to the given value handle.
If withResponse is false, uses a WriteWithoutResponse operation, otherwise a Write operation.
writeUInt16
virtual void writeUInt16(
Poco::UInt16 valueHandle,
Poco::UInt16 value,
bool withResponse
) = 0;
Writes an unsigned 16-bit integer value (little endian) to the given value handle.
If withResponse is false, uses a WriteWithoutResponse operation, otherwise a Write operation.
writeUInt32
virtual void writeUInt32(
Poco::UInt16 valueHandle,
Poco::UInt32 value,
bool withResponse
) = 0;
Writes an unsigned 32-bit integer value (little endian) to the given value handle.
If withResponse is false, uses a WriteWithoutResponse operation, otherwise a Write operation.
writeUInt64
virtual void writeUInt64(
Poco::UInt16 valueHandle,
Poco::UInt64 value,
bool withResponse
) = 0;
Writes an unsigned 32-bit integer value (little endian) to the given value handle.
If withResponse is false, uses a WriteWithoutResponse operation, otherwise a Write operation.
writeUInt8
virtual void writeUInt8(
Poco::UInt16 valueHandle,
Poco::UInt8 value,
bool withResponse
) = 0;
Writes an unsigned byte value to the given value handle.
If withResponse is false, uses a WriteWithoutResponse operation, otherwise a Write operation.
Variables
connected
Poco::BasicEvent < void > connected;
disconnected
Poco::BasicEvent < void > disconnected;
error
Poco::BasicEvent < const std::string > error;
indicationReceived
Poco::BasicEvent < const IoT::BtLE::Indication > indicationReceived;
notificationReceived
Poco::BasicEvent < const IoT::BtLE::Notification > notificationReceived;