4S Device Communication Module Collection  Version 0.6-SNAPSHOT
Full documentation of the modules in the 4SDC collection (aimed at 4SDC module developers)
personalhealthdevice.h File Reference

(This file was last changed: 2015-03-09 13:25:53 +0100, by Jacob Andersen)

PAL layer interface for personal health device communication. More...

#include "FSYS/basemsg.h"
#include "FSYS/handle.h"
#include <cstdint>
#include <memory>
#include <string>
#include <vector>
+ Include dependency graph for personalhealthdevice.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  PAL::PHDRegisterDatatypeMsg
 
class  PAL::PHDUnregisterDatatypeMsg
 
class  PAL::PHDConnectIndicationMsg
 
class  PAL::PHDDisconnectIndicationMsg
 
class  PAL::PHDDataTransferMsg
 
class  PAL::PHDDisconnectMsg
 
class  PAL::PHDConnectIndicationBluetoothMsg
 
class  PAL::PHDConnectIndicationUSBMsg
 
class  PAL::PHDConnectIndicationZigBeeMsg
 
class  PAL::PhysicalPHD
 
class  PAL::VirtualPHD
 The base interface of a personal health device seen from the perspective of a transport module. More...
 
class  PAL::PersonalHealthDeviceConnector
 The PAL interface for communication with personal health devices. More...
 
class  PAL::PHDBluetoothDevice
 Bluetooth specialization of the PersonalHealthDevice. More...
 
class  PAL::PHDBluetoothConnector
 The PersonalHealthDeviceConnector class specialization for communication with bluetooth devices (PHDBluetoothDevice). More...
 
class  PAL::PHDUSBDevice
 A USB specialization of the PersonalHealthDevice. More...
 
class  PAL::PHDUSBConnector
 The PersonalHealthDeviceConnector class specialization for communication with USB devices (PHDUSBDevice). More...
 
class  PAL::PHDZigBeeDevice
 A ZigBee specialization of the PersonalHealthDevice. More...
 
class  PAL::PHDZigBeeConnector
 The PersonalHealthDeviceConnector class specialization for communication with ZigBee devices (PHDZigBeeDevice). More...
 
class  PAL::PersonalHealthDeviceHandler
 The abstract class, session-layer components must implement to handle communication with personal health devices from any transport class. More...
 
class  PAL::PersonalHealthDeviceProviderBase
 The abstract class, PAL-layer components must implement to provide communication with personal health devices. More...
 
class  PAL::PHDBluetoothProvider
 Bluetooth specialisation of the PersonalHealthDeviceProviderBase. More...
 

Typedefs

typedef uint32_t errortype
 

Detailed Description

The communication between transport components in the PAL layer and protocol handlers in the session layer is defined by the classes in this file.

The central interface (pure virtual class) is the PersonalHealthDeviceConnector, which, conceptually, may be thought of as an multiconductor electrical connector with signals flowing in both directions; with each method of the interface representing one of those uni-directional signals.

Two abstract classes, PersonalHealthDeviceHandler and PersonalHealthDeviceProviderBase implements the two "ends" of this connector – conceptually like a male and female electrical connector. These abstract classes will manage all the communication across the FSYS message system, leaving subclasses to focus only on handling (and generating) the messages. A component in the session layer must derive from the PersonalHealthDeviceHandler and implement the handling of upward signals, while a component in the PAL layer must derive from one of the subclasses of PersonalHealthDeviceProviderBase and implement the downward signals.

Author
Jacob Andersen, The Alexandra Institute.