RayComposer Device API Documentation  1.6
Public API for RayComposer laser show DAC interfaces.
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
rcdev.h File Reference

RayComposer public device API. More...

Go to the source code of this file.

Data Structures

struct  RCPoint
 Vector Data Structure. More...


#define RCAPI_VERSION   0x0106
#define RCCALL
#define RCAPI


typedef int(RCCALLTRCInit )()
typedef int(RCCALLTRCExit )()
typedef int(RCCALLTRCEnumerateDevices )()
typedef int(RCCALLTRCDeviceID )(unsigned int, char *, unsigned int)
typedef int(RCCALLTRCOpenDevice )(const char *)
typedef int(RCCALLTRCCloseDevice )(int)
typedef int(RCCALLTRCDeviceLabel )(int, char *, unsigned int)
typedef int(RCCALLTRCSetDeviceLabel )(int, const char *)
typedef int(RCCALLTRCStartOutput )(int)
typedef int(RCCALLTRCStopOutput )(int)
typedef int(RCCALLTRCWaitForReady )(int, int)
typedef int(RCCALLTRCMaxSpeed )(int)
typedef int(RCCALLTRCWriteFrame )(int, const struct RCPoint *, unsigned int, unsigned int, unsigned int)
typedef int(RCCALLTRCUniverseCount )(int)
typedef int(RCCALLTRCUniverseQuery )(int, unsigned int, char *, unsigned int, enum RCUniverseDirection *, unsigned int *)
typedef int(RCCALLTRCUniverseWrite )(int, unsigned int, unsigned int, const unsigned char *, unsigned int)
typedef int(RCCALLTRCUniverseRead )(int, unsigned int, unsigned int, unsigned char *, unsigned int)
typedef int(RCCALLTRCUniverseUpdate )(int, unsigned int)


enum  RCReturnCode {
  RCOk = 0, RCErrorNotInitialised = -1, RCErrorNotEnumerated = -2, RCErrorInvalidHandle = -3,
  RCErrorNotStarted =-4, RCErrorIO = -5, RCErrorParameterOutOfRange = -6, RCErrorParameterInvalid = -7
 Error Codes. More...
enum  RCUniverseDirection { RCOutput = 0, RCInput = 1 }
 Universe Direction. More...


int RCAPI RCInit ()
 Initialise DLL. More...
int RCAPI RCExit ()
 De-Initialise DLL. More...
int RCAPI RCEnumerateDevices ()
 Find devices. More...
int RCAPI RCDeviceID (unsigned int index, char *deviceId, unsigned int maxLength)
 Read Device ID. More...
int RCAPI RCOpenDevice (const char *deviceId)
 Open Device. More...
int RCAPI RCCloseDevice (int handle)
 Close Device. More...
int RCAPI RCDeviceLabel (int handle, char *deviceLabel, unsigned int maxLength)
 Read the device label. More...
int RCAPI RCSetDeviceLabel (int handle, const char *deviceLabel)
 Set the device label. More...
int RCAPI RCStartOutput (int handle)
 Start Laser Output. More...
int RCAPI RCStopOutput (int handle)
 Stop Laser Output. More...
int RCAPI RCWaitForReady (int handle, int timeout)
 Wait for Buffer. More...
int RCAPI RCMaxSpeed (int handle)
 Query maximum sampling rate of the device. More...
int RCAPI RCWriteFrame (int handle, const struct RCPoint *points, unsigned int count, unsigned int speed, unsigned int repeat)
 Write Frame. More...
int RCAPI RCUniverseCount (int handle)
 Query universe count of device. More...
int RCAPI RCUniverseQuery (int handle, unsigned int universeIndex, char *universeName, unsigned int maxLength, enum RCUniverseDirection *pUniverseDirection, unsigned int *pChannelCount)
 Query universe information. More...
int RCAPI RCUniverseWrite (int handle, unsigned int universeIndex, unsigned int startChannel, const unsigned char *data, unsigned int count)
 Write to output universe. More...
int RCAPI RCUniverseRead (int handle, unsigned int universeIndex, unsigned int startChannel, unsigned char *data, unsigned int count)
 Read from input universe. More...
int RCAPI RCUniverseUpdate (int handle, unsigned int universeIndex)
 Flush Universe. More...

Detailed Description

RayComposer public device API.


This file contains the API definition for the public RayComposer devices API.

Macro Definition Documentation

#define RCAPI_VERSION   0x0106

API Version

#define RCCALL

Calling Convention of function pointers

#define RCAPI

Calling Convention / visibility of API functions

Enumeration Type Documentation

Error Codes.

Error codes returned by RayComposer Device API functions.




Error: the API has not been initialised


Error: devices have not been enumerated


Error: the device handle is invalid


Error: output was not started


Error: communication with the device failed


Error: function parameter is out of range


Error: function parameter is invalid

Universe Direction.

Tells wheter a universe is an input or output.


Output Universe


Input Universe