![]() |
PIP 5.6.1
Platform-Independent Primitives
|
SPI device with configurable speed, word size and clock mode. More...
#include <pispi.h>

Public Types | |
| enum | Parameters |
| SPI mode flags. | |
Public Types inherited from PIIODevice | |
| enum | DeviceMode { ReadOnly = 0x01 , WriteOnly = 0x02 , ReadWrite = 0x03 } |
| Open modes for PIIODevice. More... | |
| enum | DeviceOption { BlockingRead = 0x01 , BlockingWrite = 0x02 } |
| Generic options supported by some devices. More... | |
| enum | DeviceInfoFlag { Sequential = 0x01 , Reliable = 0x02 } |
| Characteristics of the device channel. More... | |
| typedef PIFlags< DeviceOption > | DeviceOptions |
| Bitmask of DeviceOption values. | |
| typedef PIFlags< DeviceInfoFlag > | DeviceInfoFlags |
| Bitmask of DeviceInfoFlag values. | |
Public Member Functions | |
| PISPI (const PIString &path=PIString(), uint speed_hz=1000000, PIIODevice::DeviceMode mode=PIIODevice::ReadWrite) | |
| Constructs an SPI device for "path" with transfer speed "speed_hz". | |
| virtual | ~PISPI () |
| Destroys the SPI device. | |
| void | setSpeed (uint speed_hz) |
| Sets SPI clock speed in hertz. More... | |
| uint | speed () const |
| Returns SPI clock speed in hertz. More... | |
| void | setBits (uchar bits=8) |
| Sets bits per transferred word. More... | |
| uchar | bits () const |
| Returns bits per transferred word. | |
| void | setParameters (PIFlags< PISPI::Parameters > parameters_) |
| Replaces all SPI mode flags with "parameters_". | |
| void | setParameter (PISPI::Parameters parameter, bool on=true) |
| Enables or disables a single SPI mode flag. More... | |
| bool | isParameterSet (PISPI::Parameters parameter) const |
| Returns whether SPI mode flag "parameter" is enabled. More... | |
| PIFlags< PISPI::Parameters > | parameters () const |
| Returns current SPI mode flags. More... | |
| ssize_t | bytesAvailable () const override |
| Returns how many received bytes are buffered for read(). | |
Public Member Functions inherited from PIIODevice | |
| PIIODevice () | |
| Constructs an empty PIIODevice. | |
| PIIODevice (const PIString &path, DeviceMode mode=ReadWrite) | |
| Constructs PIIODevice with path "path" and open mode "mode". | |
| virtual | ~PIIODevice () |
| Destroys the device base object. | |
| DeviceMode | mode () const |
| Returns current open mode. | |
| void | setMode (DeviceMode m) |
| Sets open mode without reopening the device. | |
| DeviceOptions | options () const |
| Returns current device options. | |
| bool | isOptionSet (DeviceOption o) const |
| Returns whether option "o" is enabled. | |
| void | setOptions (DeviceOptions o) |
| Replaces all current device options with "o". | |
| bool | setOption (DeviceOption o, bool yes=true) |
| Sets option "o" to "yes" and returns its previous state. | |
| DeviceInfoFlags | infoFlags () const |
| Returns device channel characteristics. | |
| PIString | path () const |
| Returns current device path. | |
| void | setPath (const PIString &path) |
| Sets device path without reopening the device. | |
| bool | isReadable () const |
| Returns whether the current mode allows reading. | |
| bool | isWriteable () const |
| Returns whether the current mode allows writing. | |
| bool | isOpened () const |
| Returns whether the device is currently opened. | |
| bool | isClosed () const |
| Returns whether the device is currently closed. | |
| virtual bool | canRead () const |
| Returns whether reading is possible right now. | |
| virtual bool | canWrite () const |
| Returns whether writing is possible right now. | |
| void | setReopenEnabled (bool yes=true) |
| Enables or disables automatic reopen attempts during threaded read. | |
| void | setReopenTimeout (PISystemTime timeout) |
| Sets delay between automatic reopen attempts. | |
| bool | isReopenEnabled () const |
| Returns whether automatic reopen is enabled. | |
| PISystemTime | reopenTimeout () |
| Returns delay between automatic reopen attempts. | |
| void | setThreadedReadSlot (ReadRetFunc func) |
| Sets callback invoked after successful threaded reads. More... | |
| void | setThreadedReadData (void *d) |
| Sets custom user data passed to threaded read callback. | |
| void | setThreadedReadBufferSize (int new_size) |
| Sets background read buffer size in bytes. More... | |
| int | threadedReadBufferSize () const |
| Returns background read buffer size in bytes. | |
| const uchar * | threadedReadBuffer () const |
| Returns pointer to the internal threaded-read buffer. | |
| void * | threadedReadData () const |
| Returns custom data passed to threaded read callback. | |
| bool | isThreadedRead () const |
| Returns whether threaded read is running. | |
| bool | isThreadedReadStopping () const |
| Returns whether threaded read is stopping. | |
| void | startThreadedRead () |
| Starts threaded read. | |
| void | startThreadedRead (ReadRetFunc func) |
| Sets threaded read callback to "func" and starts threaded read. | |
| void | stopThreadedRead () |
| Requests threaded read stop. | |
| void | terminateThreadedRead () |
| Terminate threaded read. More... | |
| bool | waitThreadedReadFinished (PISystemTime timeout={}) |
| Waits until threaded read finishes or "timeout" expires. | |
| uint | threadedReadTimeout () const |
| Returns delay between unsuccessful threaded read attempts in milliseconds. | |
| void | setThreadedReadTimeout (uint ms) |
| Sets delay between unsuccessful threaded read attempts in milliseconds. | |
| bool | isThreadedWrite () const |
| Returns whether threaded write is running. | |
| void | startThreadedWrite () |
| Starts threaded write. | |
| void | stopThreadedWrite () |
| Requests threaded write stop. | |
| void | terminateThreadedWrite () |
| Terminate threaded write. More... | |
| bool | waitThreadedWriteFinished (PISystemTime timeout={}) |
| Waits until threaded write finishes or "timeout" expires. | |
| void | clearThreadedWriteQueue () |
| Clears queued threaded-write tasks. | |
| void | start () |
| Starts both threaded read and threaded write. | |
| void | stop () |
| Requests stop for both threaded read and threaded write. | |
| void | stopAndWait (PISystemTime timeout={}) |
| Stops both background threads and waits for completion. | |
| virtual void | interrupt () |
| Interrupts a blocking device operation. | |
| ssize_t | read (void *read_to, ssize_t max_size) |
| Reads at most "max_size" bytes into "read_to". | |
| ssize_t | read (PIMemoryBlock mb) |
| Reads data into memory block "mb". | |
| PIByteArray | read (ssize_t max_size) |
| Reads at most "max_size" bytes and returns them as PIByteArray. | |
| virtual ssize_t | bytesAvailable () const |
| Returns the number of bytes that are available for reading. More... | |
| ssize_t | write (const void *data, ssize_t max_size) |
| Writes at most "max_size" bytes from "data". | |
| PIByteArray | readForTime (PISystemTime timeout) |
| Reads data for up to "timeout" and returns collected bytes. | |
| ullong | writeThreaded (const void *data, ssize_t max_size) |
| Queues "data" for threaded write and returns task ID. | |
| ullong | writeThreaded (const PIByteArray &data) |
| Queues byte array "data" for threaded write and returns task ID. | |
| bool | configure (const PIString &config_file, const PIString §ion, bool parent_section=false) |
| Configures the device from section "section" of file "config_file". More... | |
| virtual PIConstChars | fullPathPrefix () const |
| Returns device prefix used in full-path notation. Creating devices by unambiguous string. | |
| PIString | constructFullPath () const |
| Returns full-path representation of this device, fullPathPrefix() + "://" + ... | |
| void | configureFromFullPath (const PIString &full_path) |
| Configures the device from full-path parameters. | |
| PIVariantTypes::IODevice | constructVariant () const |
| Builds PIVariantTypes::IODevice description for this device. | |
| void | configureFromVariant (const PIVariantTypes::IODevice &d) |
| Configures the device from PIVariantTypes::IODevice. | |
| ssize_t | write (const PIMemoryBlock &mb) |
| Writes memory block "mb" to the device. | |
| bool | open () |
| Opens the device with current path and mode. | |
| bool | open (const PIString &_path) |
| Opens the device with path "path". | |
| bool | open (DeviceMode _mode) |
| Opens the device with mode "mode". | |
| bool | open (const PIString &_path, DeviceMode _mode) |
| Opens the device with path "path" and mode "mode". | |
| bool | close () |
| Closes the device. | |
| ssize_t | write (PIByteArray data) |
| Writes "data" to the device. | |
| virtual void | flush () |
| Immediately flushes device buffers. | |
| void | opened () |
| Raised after successful opening. | |
| void | closed () |
| Raised after successful closing. | |
| void | threadedReadEvent (const uchar *readed, ssize_t size) |
| Raised after threaded read receives some data. | |
| void | threadedWriteEvent (ullong id, ssize_t written_size) |
| Raised after threaded write processes task with ID "id". | |
Public Member Functions inherited from PIObject | |
| PIObject (const PIString &name=PIString()) | |
Constructs an object and initializes its name property. | |
| virtual | ~PIObject () |
| Destroys the object, raises deleted() and disconnects it from the event graph. | |
| PIString | name () const |
Returns the name property of this object. | |
| virtual const char * | className () const |
| Returns the registered class name of this object. | |
| virtual uint | classNameID () const |
| Returns the hash of className(). | |
| virtual const char * | parentClassName () const |
| Returns the registered parent class name, or an empty string for the root. | |
| bool | debug () const |
| Returns whether piCoutObj output is enabled for this object. | |
| void | setName (const PIString &name) |
Sets the name property of this object. | |
| void | setDebug (bool debug) |
| Enables or disables piCoutObj output for this object. | |
| PIVariant | property (const char *name) const |
| Returns the property with name "name". | |
| void | setProperty (const char *name, const PIVariant &value) |
| Sets the property "name" to "value" and creates it if needed. More... | |
| bool | isPropertyExists (const char *name) const |
| Returns whether the property "name" exists. | |
| void | setThreadSafe (bool yes) |
| Enables or disables the internal object mutex during handler execution. More... | |
| bool | isThreadSafe () const |
| Returns whether the internal object mutex is enabled for handler execution. | |
| bool | execute (const PIString &method, const PIVector< PIVariantSimple > &vl) |
| Executes a registered method or handler method by name with the supplied arguments. More... | |
| bool | execute (const PIString &method) |
| Overload of execute() for a method without arguments. | |
| bool | execute (const PIString &method, const PIVariantSimple &v0) |
| Overload of execute() for one argument. | |
| bool | execute (const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1) |
| Overload of execute() for two arguments. | |
| bool | execute (const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1, const PIVariantSimple &v2) |
| Overload of execute() for three arguments. | |
| bool | execute (const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1, const PIVariantSimple &v2, const PIVariantSimple &v3) |
| Overload of execute() for four arguments. | |
| bool | executeQueued (PIObject *performer, const PIString &method, const PIVector< PIVariantSimple > &vl) |
| Queues execution of a registered method on the performer object. More... | |
| bool | executeQueued (PIObject *performer, const PIString &method) |
| Overload of executeQueued() for a method without arguments. | |
| bool | executeQueued (PIObject *performer, const PIString &method, const PIVariantSimple &v0) |
| Overload of executeQueued() for one argument. | |
| bool | executeQueued (PIObject *performer, const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1) |
| Overload of executeQueued() for two arguments. | |
| bool | executeQueued (PIObject *performer, const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1, const PIVariantSimple &v2) |
| Overload of executeQueued() for three arguments. | |
| bool | executeQueued (PIObject *performer, const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1, const PIVariantSimple &v2, const PIVariantSimple &v3) |
| Overload of executeQueued() for four arguments. | |
| void | dump (const PIString &line_prefix=PIString()) const |
| Dumps object diagnostics to the project output stream. | |
| PIStringList | scopeList () const |
| Returns the registered inheritance scope of this object, including its own class. | |
| PIStringList | methodsEH () const |
| Returns full signatures of all registered event and handler methods for this class scope. | |
| bool | isMethodEHContains (const PIString &name) const |
| Returns whether a registered event or handler method with this name exists. | |
| PIString | methodEHArguments (const PIString &name) const |
| Returns the comma-separated argument type list of a registered method. | |
| PIString | methodEHFullFormat (const PIString &name) const |
| Returns the full registered signature of a method. | |
| PIString | methodEHFromAddr (const void *addr) const |
| Returns the registered method name for the specified entry-point address. | |
| void | piDisconnect (const PIString &sig, PIObject *dest, void *ev_h) |
| Disconnects this source object from a specific destination handler for event "sig". | |
| void | piDisconnect (const PIString &sig, PIObject *dest) |
| Disconnects this source object from all connections of event "sig" to destination object "dest". | |
| void | piDisconnect (const PIString &sig) |
| Disconnects this source object from all connections of event "sig". | |
| bool | isPIObject () const |
| Returns whether this pointer still refers to a live PIObject instance. | |
| template<typename T > | |
| bool | isTypeOf () const |
| Returns whether this object belongs to class "T" or one of its registered descendants. | |
| template<typename T > | |
| T * | cast () const |
Returns this object cast to "T" when isTypeOf<T>() succeeds, otherwise nullptr. | |
| void | callQueuedEvents () |
| Executes all queued deliveries posted to this performer object. | |
| bool | maybeCallQueuedEvents () |
| Executes queued deliveries only when this object was used as a performer. More... | |
| void | deleteLater () |
| Schedules the object for deferred deletion. More... | |
| void | deleted (PIObject *o) |
| Raised immediately before object destruction. More... | |
Protected Member Functions | |
| bool | openDevice () override |
| Reimplement to open device, return value will be set to "opened_" variable. Don't call this function in subclass, use open()! | |
| bool | closeDevice () override |
| Reimplement to close the device; inverse return value is stored into "opened_". | |
| ssize_t | readDevice (void *read_to, ssize_t max_size) override |
| Reimplement this function to read from your device. | |
| ssize_t | writeDevice (const void *data, ssize_t max_size) override |
| Reimplement this function to write to your device. | |
| PIString | constructFullPathDevice () const override |
| Reimplement to build device-specific part of full-path string. Default implementation returns path(). | |
| void | configureFromFullPathDevice (const PIString &full_path) override |
| Reimplement to configure the device from device-specific full-path parameters. Default implementation calls setPath(). | |
| PIPropertyStorage | constructVariantDevice () const override |
| Reimplement to build device-specific variant properties. Default implementation returns PIPropertyStorage with "path". | |
| void | configureFromVariantDevice (const PIPropertyStorage &d) override |
| Reimplement to configure the device from PIPropertyStorage. Mode and options are already applied. Default implementation applies "path". | |
| DeviceInfoFlags | deviceInfoFlags () const override |
| Reimplement to report actual DeviceInfoFlags. Default implementation returns 0. | |
Protected Member Functions inherited from PIIODevice | |
| virtual bool | configureDevice (const void *e_main, const void *e_parent=0) |
| Reimplement to configure the device from "e_main" and optional "e_parent" entries cast to PIConfig::Entry*. | |
| virtual bool | openDevice ()=0 |
| Reimplement to open device, return value will be set to "opened_" variable. Don't call this function in subclass, use open()! | |
| virtual bool | closeDevice () |
| Reimplement to close the device; inverse return value is stored into "opened_". | |
| virtual ssize_t | readDevice (void *read_to, ssize_t max_size) |
| Reimplement this function to read from your device. | |
| virtual ssize_t | writeDevice (const void *data, ssize_t max_size) |
| Reimplement this function to write to your device. | |
| virtual bool | threadedRead (const uchar *readed, ssize_t size) |
| Called after threaded read receives data; default implementation calls the external callback set by setThreadedReadSlot(). | |
| virtual PIString | constructFullPathDevice () const |
| Reimplement to build device-specific part of full-path string. Default implementation returns path(). | |
| virtual void | configureFromFullPathDevice (const PIString &full_path) |
| Reimplement to configure the device from device-specific full-path parameters. Default implementation calls setPath(). | |
| virtual PIPropertyStorage | constructVariantDevice () const |
| Reimplement to build device-specific variant properties. Default implementation returns PIPropertyStorage with "path". | |
| virtual void | configureFromVariantDevice (const PIPropertyStorage &d) |
| Reimplement to configure the device from PIPropertyStorage. Mode and options are already applied. Default implementation applies "path". | |
| virtual void | optionsChanged () |
| Reimplement to react to changed device options. | |
| virtual DeviceInfoFlags | deviceInfoFlags () const |
| Reimplement to report actual DeviceInfoFlags. Default implementation returns 0. | |
| virtual void | threadedReadBufferSizeChanged () |
| Reimplement to react to new threadedReadBufferSize(). | |
Protected Member Functions inherited from PIObject | |
| PIObject * | emitter () const |
| Returns the source object that raised the current event. More... | |
| virtual void | propertyChanged (const char *name) |
| Virtual method called after property "name" has been changed by setProperty(). | |
Additional Inherited Members | |
Static Public Member Functions inherited from PIIODevice | |
| static PIIODevice * | createFromFullPath (const PIString &full_path) |
| Try to create new device by prefix, configure it with configureFromFullPath() and returns it. More... | |
| static PIIODevice * | createFromVariant (const PIVariantTypes::IODevice &d) |
| Try to create new device by prefix, configure it with configureFromVariant() and returns it. | |
| static PIString | normalizeFullPath (const PIString &full_path) |
| Returns normalized full-path representation for "full_path". | |
| static void | splitFullPath (PIString fpwm, PIString *full_path, DeviceMode *mode=0, DeviceOptions *opts=0) |
| Splits full-path string into path, mode and options. | |
| static PIStringList | availablePrefixes () |
| Returns fullPath prefixes of all registered devices. | |
| static PIStringList | availableClasses () |
| Returns class names of all registered devices. | |
Static Public Member Functions inherited from PIObject | |
| static bool | execute (PIObject *o, const PIString &method, const PIVector< PIVariantSimple > &vl) |
| Static convenience wrapper for execute(). | |
| static bool | execute (PIObject *o, const PIString &method) |
| Static overload of execute() without arguments. | |
| static bool | execute (PIObject *o, const PIString &method, const PIVariantSimple &v0) |
| Static overload of execute() for one argument. | |
| static bool | execute (PIObject *o, const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1) |
| Static overload of execute() for two arguments. | |
| static bool | execute (PIObject *o, const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1, const PIVariantSimple &v2) |
| Static overload of execute() for three arguments. | |
| static bool | execute (PIObject *o, const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1, const PIVariantSimple &v2, const PIVariantSimple &v3) |
| Static overload of execute() for four arguments. | |
| static bool | executeQueued (PIObject *o, PIObject *performer, const PIString &method, const PIVector< PIVariantSimple > &vl) |
| Static convenience wrapper for executeQueued(). | |
| static bool | executeQueued (PIObject *o, PIObject *performer, const PIString &method) |
| Static overload of executeQueued() without arguments. | |
| static bool | executeQueued (PIObject *o, PIObject *performer, const PIString &method, const PIVariantSimple &v0) |
| Static overload of executeQueued() for one argument. | |
| static bool | executeQueued (PIObject *o, PIObject *performer, const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1) |
| Static overload of executeQueued() for two arguments. | |
| static bool | executeQueued (PIObject *o, PIObject *performer, const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1, const PIVariantSimple &v2) |
| Static overload of executeQueued() for three arguments. | |
| static bool | executeQueued (PIObject *o, PIObject *performer, const PIString &method, const PIVariantSimple &v0, const PIVariantSimple &v1, const PIVariantSimple &v2, const PIVariantSimple &v3) |
| Static overload of executeQueued() for four arguments. | |
| static PIObject::Connection | piConnect (PIObject *src, const PIString &sig, PIObject *dest_o, void *dest, void *ev_h, void *e_h, int args, const char *loc) |
Low-level direct connection helper behind the legacy CONNECT* macros. | |
| static PIObject::Connection | piConnectU (PIObject *src, const PIString &sig, PIObject *dest_o, void *dest, const PIString &hname, const char *loc, PIObject *performer=0) |
| Low-level name-based connection helper behind CONNECTU() and CONNECTU_QUEUED(). | |
| static PIObject::Connection | piConnectLS (PIObject *src, const PIString &sig, std::function< void()> *f, const char *loc) |
| Low-level helper that connects an event to a lambda or functor wrapper. | |
| static void | piDisconnect (PIObject *src, const PIString &sig, PIObject *dest, void *ev_h) |
| Disconnects source object "src" from a specific destination handler for event "sig". | |
| static void | piDisconnect (PIObject *src, const PIString &sig, PIObject *dest) |
| Disconnects source object "src" from all connections of event "sig" to destination object "dest". | |
| static void | piDisconnect (PIObject *src, const PIString &sig) |
| Disconnects source object "src" from all connections of event "sig". | |
| static void | raiseEvent (PIObject *sender, const uint eventID) |
| Internal event delivery helper for registered events without arguments. | |
| template<typename T0 > | |
| static void | raiseEvent (PIObject *sender, const uint eventID, const T0 &v0=T0()) |
| Internal event delivery helper for registered events with one argument. | |
| template<typename T0 , typename T1 > | |
| static void | raiseEvent (PIObject *sender, const uint eventID, const T0 &v0=T0(), const T1 &v1=T1()) |
| Internal event delivery helper for registered events with two arguments. | |
| template<typename T0 , typename T1 , typename T2 > | |
| static void | raiseEvent (PIObject *sender, const uint eventID, const T0 &v0=T0(), const T1 &v1=T1(), const T2 &v2=T2()) |
| Internal event delivery helper for registered events with three arguments. | |
| template<typename T0 , typename T1 , typename T2 , typename T3 > | |
| static void | raiseEvent (PIObject *sender, const uint eventID, const T0 &v0=T0(), const T1 &v1=T1(), const T2 &v2=T2(), const T3 &v3=T3()) |
| Internal event delivery helper for registered events with four arguments. | |
| static PIObject * | findByName (const PIString &name) |
Returns the first live object with name "name", or nullptr. | |
| static bool | isPIObject (const PIObject *o) |
| Returns whether "o" points to a live PIObject instance. | |
| static bool | isPIObject (const void *o) |
| Overload of isPIObject() for an untyped pointer. | |
| template<typename T > | |
| static bool | isTypeOf (const PIObject *o) |
| Returns whether "o" belongs to class "T" or one of its registered descendants. | |
| template<typename T > | |
| static bool | isTypeOf (const void *o) |
| Overload of isTypeOf() for an untyped pointer. | |
| static PIString | simplifyType (const char *a, bool readable=true) |
| Simplifies a C++ type spelling for registered-method metadata. | |
Public Attributes inherited from PIIODevice | |
| bool | reopenEnabled |
| setReopenEnabled, default "true". | |
| int | reopenTimeout |
| setReopenTimeout, default 1_s. | |
| int | threadedReadBufferSize |
| setThreadedReadBufferSize in bytes, default 4096. | |
Related Functions inherited from PIIODevice | |
| template<typename T > | |
| T | readDeviceSetting (const PIString &name, const T &def, const PIConfig::Entry *em, const PIConfig::Entry *ep) |
| Helper for reading device settings from configuration entries. More... | |
| #define | REGISTER_DEVICE(class) |
| Enable device instances creation with PIIODevice::createFromFullPath() function. More... | |
| #define | PIIODEVICE(class, prefix) |
| Use this macro instead of PIOBJECT when describe your own PIIODevice. More... | |
Related Functions inherited from PIObject | |
| #define | piCoutObj |
| Macro used for conditional (piDebug && PIObject::debug()) output to PICout(StdOut) for subclasses of PIObject. | |
| #define | piCerrObj |
| Macro used for conditional (piDebug && PIObject::debug()) output to PICout(StdErr) for subclasses of PIObject. | |
| #define | PIOBJECT(name) |
| Put this macro inside a direct PIObject subclass definition to enable registered events, event handlers and class metadata. | |
| #define | PIOBJECT_SUBCLASS(name, parent) |
| Put this macro inside a PIObject subclass definition to inherit registered methods and class scope from "parent". | |
| #define | EVENT_HANDLER0(ret, name) ret name() |
Declare a registered event handler method with signature ret name(). | |
| #define | EVENT_HANDLER1(ret, name, type0, var0) ret name(type0 var0) |
| Declare a registered event handler method with one argument. | |
| #define | EVENT_HANDLER2(ret, name, type0, var0, type1, var1) ret name(type0 var0, type1 var1) |
| Declare a registered event handler method with two arguments. | |
| #define | EVENT_HANDLER3(ret, name, type0, var0, type1, var1, type2, var2) ret name(type0 var0, type1 var1, type2 var2) |
| Declare a registered event handler method with three arguments. | |
| #define | EVENT_HANDLER4(ret, name, type0, var0, type1, var1, type2, var2, type3, var3) ret name(type0 var0, type1 var1, type2 var2, type3 var3) |
| Declare a registered event handler method with four arguments. | |
| #define | EVENT_HANDLER EVENT_HANDLER0 |
| Synonym of EVENT_HANDLER0. | |
| #define | EVENT_VHANDLER0(ret, name) virtual ret name() |
Declare a virtual registered event handler method with signature virtual ret name(). | |
| #define | EVENT_VHANDLER1(ret, name, type0, var0) virtual ret name(type0 var0) |
| Declare a virtual registered event handler method with one argument. | |
| #define | EVENT_VHANDLER2(ret, name, type0, var0, type1, var1) virtual ret name(type0 var0, type1 var1) |
| Declare a virtual registered event handler method with two arguments. | |
| #define | EVENT_VHANDLER3(ret, name, type0, var0, type1, var1, type2, var2) virtual ret name(type0 var0, type1 var1, type2 var2) |
| Declare a virtual registered event handler method with three arguments. | |
| #define | EVENT_VHANDLER4(ret, name, type0, var0, type1, var1, type2, var2, type3, var3) virtual ret name(type0 var0, type1 var1, type2 var2, type3 var3) |
| Declare a virtual registered event handler method with four arguments. | |
| #define | EVENT_VHANDLER EVENT_VHANDLER0 |
| Synonym of EVENT_VHANDLER0. | |
| #define | EVENT0(name) void name(); |
| Declare an event method with no arguments. | |
| #define | EVENT1(name, type0, var0) void name(type0 var0); |
| Declare an event method with one argument. | |
| #define | EVENT2(name, type0, var0, type1, var1) void name(type0 var0, type1 var1); |
| Declare an event method with two arguments. | |
| #define | EVENT3(name, type0, var0, type1, var1, type2, var2) void name(type0 var0, type1 var1, type2 var2); |
| Declare an event method with three arguments. | |
| #define | EVENT4(name, type0, var0, type1, var1, type2, var2, type3, var3) void name(type0 var0, type1 var1, type2 var2, type3 var3); |
| Declare an event method with four arguments. | |
| #define | EVENT EVENT0 |
| Synonym of EVENT0. | |
| #define | RAISE_EVENT0(src, event) |
| Compatibility helper that raises event "event" on source object "src". | |
| #define | RAISE_EVENT1(src, event, v0) |
| Compatibility helper that raises event "event" with one argument. | |
| #define | RAISE_EVENT2(src, event, v0, v1) |
| Compatibility helper that raises event "event" with two arguments. | |
| #define | RAISE_EVENT3(src, event, v0, v1, v2) |
| Compatibility helper that raises event "event" with three arguments. | |
| #define | RAISE_EVENT4(src, event, v0, v1, v2, v3) |
| Compatibility helper that raises event "event" with four arguments. | |
| #define | CONNECTU(src, event, dest, handler) |
| Connect event "event" from object "src" to event handler or event "handler" of object "dest". More... | |
| #define | CONNECTU_QUEUED(src, event, dest, handler, performer) |
| Connect event "event" from object "src" to event handler or event "handler" of object "dest". More... | |
| #define | CONNECTL(src, event, functor) |
| Connect event "event" from object "src" to lambda-expression "functor". More... | |
| #define | CONNECT0(ret, src, event, dest, handler) |
| Legacy compatibility helper that connects an event to a registered handler with compile-time signature spelling. More... | |
| #define | CONNECT1(ret, type0, src, event, dest, handler) |
| Legacy compatibility helper for a one-argument registered event or handler. More... | |
| #define | CONNECT2(ret, type0, type1, src, event, dest, handler) |
| Legacy compatibility helper for a two-argument registered event or handler. More... | |
| #define | CONNECT3(ret, type0, type1, type2, src, event, dest, handler) |
| Legacy compatibility helper for a three-argument registered event or handler. More... | |
| #define | CONNECT4(ret, type0, type1, type2, type3, src, event, dest, handler) |
| Legacy compatibility helper for a four-argument registered event or handler. More... | |
| #define | CONNECT CONNECT0 |
| Synonym of CONNECT0. More... | |
| #define | WEAK_CONNECT0(ret, src, event, dest, handler) |
| Legacy compatibility helper that skips source method verification. More... | |
| #define | WEAK_CONNECT1(ret, type0, src, event, dest, handler) |
| Legacy compatibility helper that skips source method verification for one argument. More... | |
| #define | WEAK_CONNECT2(ret, type0, type1, src, event, dest, handler) |
| Legacy compatibility helper that skips source method verification for two arguments. More... | |
| #define | WEAK_CONNECT3(ret, type0, type1, type2, src, event, dest, handler) |
| Legacy compatibility helper that skips source method verification for three arguments. More... | |
| #define | WEAK_CONNECT4(ret, type0, type1, type2, type3, src, event, dest, handler) |
| Legacy compatibility helper that skips source method verification for four arguments. More... | |
| #define | WEAK_CONNECT WEAK_CONNECT0 |
| Synonym of WEAK_CONNECT0. More... | |
| #define | DISCONNECT0(ret, src, event, dest, handler) |
| Disconnect a registered event from a registered event handler. | |
| #define | DISCONNECT1(ret, type0, src, event, dest, handler) |
| Disconnect a one-argument registered event from a registered event handler. | |
| #define | DISCONNECT2(ret, type0, type1, src, event, dest, handler) |
| Disconnect a two-argument registered event from a registered event handler. | |
| #define | DISCONNECT3(ret, type0, type1, type2, src, event, dest, handler) |
| Disconnect a three-argument registered event from a registered event handler. | |
| #define | DISCONNECT4(ret, type0, type1, type2, type3, src, event, dest, handler) |
| Disconnect a four-argument registered event from a registered event handler. | |
| #define | DISCONNECT DISCONNECT0 |
| Synonym of DISCONNECT0. | |
| #define | HANDLER(handler) |
| Low-level helper that expands to the registered handler entry point. | |
SPI device with configurable speed, word size and clock mode.
Data is exchanged through write(), and received bytes are accumulated for subsequent read() calls.
| void PISPI::setSpeed | ( | uint | speed_hz | ) |
Sets SPI clock speed in hertz.
Configures the SPI clock frequency. The actual frequency may be rounded to the nearest supported value by the hardware.
|
inline |
Returns SPI clock speed in hertz.
| void PISPI::setBits | ( | uchar | bits = 8 | ) |
Sets bits per transferred word.
| void PISPI::setParameter | ( | PISPI::Parameters | parameter, |
| bool | on = true |
||
| ) |
Enables or disables a single SPI mode flag.
| bool PISPI::isParameterSet | ( | PISPI::Parameters | parameter | ) | const |
Returns whether SPI mode flag "parameter" is enabled.
|
inline |
Returns current SPI mode flags.