Tani OpcPipe protocol  1.0.5
Tani OpcPipe protocol
Macros
well-known functions for OPC UA RPC calls

Macros

#define RPC_ID_GENERIC   0
 generic RPC call, name is a function name to call, param and result can be any
 
#define RPC_ID_FILE_OPEN   1
 open file, name is the file name, param is W_UINT32 openMode (defines for openMode parameter ofref RPC_ID_FILE_OPEN andref RPC_ID_FILE_CREATE), result is W_UINT32 fileHandle
 
#define RPC_ID_FILE_CLOSE   2
 close file, name is unused, param is W_UINT32 fileHandle, result is empty
 
#define RPC_ID_FILE_READ   3
 read file, name is unused, params are W_UINT32 fileHandle, W_INT32 length, result is W_UINT8 data[]
 
#define RPC_ID_FILE_WRITE   4
 write file, name is unused, params are W_UINT32 fileHandle, W_UINT8 data[], result is empty
 
#define RPC_ID_FILE_TELL   5
 get position in file, name is unused, param is W_UINT32 fileHandle, result is W_UINT64 position
 
#define RPC_ID_FILE_SEEK   6
 set position in file, name is unused, params are W_UINT32 fileHandle, W_UINT64 position, result is empty
 
#define RPC_ID_FILE_CREATE   7
 create a new file, name is the file name, param is W_UINT32 openMode (defines for openMode parameter ofref RPC_ID_FILE_OPEN andref RPC_ID_FILE_CREATE), result is W_UINT32 fileHandle
 
#define RPC_ID_FILE_DELETE   8
 delete a file, name is the file name, param is empty, result is empty
 
#define RPC_ID_FILE_MOVE   9
 move a file, name is the file name, param is char newName[], result is empty
 
#define RPC_ID_FILE_COPY   10
 copy a file, name is the file name, param is char newName[], result is empty
 
#define RPC_ID_FILE_ATTR   11
 get attributes of file or directory, name is the file/directory name, param is empty, result is W_UINT64 size, W_UINT8 rwd
 
#define RPC_ID_DIR_CREATE   12
 create a new directory, name is the directory to create, params is empty, result is empty
 
#define RPC_ID_DIR_DELETE   13
 delete a directory (recursively, if needed), name is the directory name, param is empty, result is empty
 
#define RPC_ID_DIR_MOVE   14
 move a directory (recursively, if needed), name is the directory name, param is char newName[], result is empty
 
#define RPC_ID_DIR_COPY   15
 copy a directory (recursively, if needed), name is the directory name, param is char newName[], result is empty
 
#define RPC_ID_DIR_LIST   16
 list contents of directory, name is the directory name, param is W_UINT32 startOffset, result is PLC_OPCPIPE_BROWSEITEMDATA list[]
 
#define RPC_ID_NODE_CREATE   100
 creates a new node, name is the name to create, params are W_UINT16 type[, W_UINT32 arrayLen[, char comment[][, char structName[]]]], result is empty
 
#define RPC_ID_NODE_DELETE   101
 deletes a node, name is the name to delete, param is empty, result is empty
 
#define RPC_ID_ALARM_ACK   102
 acknowledge alarm, name is the condition ID, param is W_UINT8 eventId[], char comment[], result is empty
 
#define RPC_ID_ALARM_CONF   103
 confirm alarm, name is the condition ID, param is W_UINT8 eventId[], char comment[], result is empty
 
#define RPC_ID_TRIGGER_IMPORT   104
 trigger structure/enum import, name is unused, param is W_UINT32 id, bool isEnum, result is empty
 
#define RPC_ID_ADD_COMMENT   105
 add acomment to a condition, name is the condition ID, param is W_UINT8 eventId[], char comment[], result is empty
 
#define RPC_ID_UPDATE_CERT   106
 update server certificate, name is unused, params are W_UINT8 cert[], W_UINT8 key[]
 
#define RPC_ID_GENERIC_INPUT_PARAMS   0xFFFFFFF0
 get list of input parameters for generic call, name is the function, param is empty, result is the list of parameters (PLC_OPCPIPE_BROWSEITEMDATA[])
 
#define RPC_ID_GENERIC_OUTPUT_PARAMS   0xFFFFFFF1
 get list of output parameters for generic call, name is the function, param is empty, result is the list of parameters (PLC_OPCPIPE_BROWSEITEMDATA[])
 
#define RPC_ID_CANCEL_CALL   0xFFFFFFF2
 cancel an RPC call, name, param, result are empty (only the callHandle is used)
 

Detailed Description