Tani OpcPipe protocol  1.0.5
Tani OpcPipe protocol
Macros
Defines for PLC_REQLIST::ReqFlags bit field coded

Macros

#define REQF_PASSIVE_WAIT   0x00000000
 
#define REQF_READ   0x00000001
 
#define REQF_WRITE   0x00000002
 
#define REQF_EXCHANGE   0x00000003
 
#define REQF_SYSREQUEST   0x00000004
 
#define REQF_READ_BLOCK   0x00000005
 
#define REQF_WRITE_BLOCK   0x00000006
 
#define REQF_READ_HISTORY   0x00000007
 
#define REQF_CALL   0x00000008
 
#define REQF_SUBSCRIBE   REQF_READ
 
#define REQF_UNSUBSCRIBE   REQF_WRITE
 
#define REQF_REFRESH_EVENT   REQF_READ_BLOCK
 
#define REQF_ACK_EVENT   REQF_WRITE_BLOCK
 
#define REQF_READ_ACK   (REQF_READ | REQF_ACK_BIT)
 
#define REQF_WRITE_ACK   (REQF_WRITE | REQF_ACK_BIT)
 
#define REQF_EXCHANGE_ACK   (REQF_EXCHANGE | REQF_ACK_BIT)
 
#define REQF_SYSREQUEST_ACK   (REQF_SYSREQUEST | REQF_ACK_BIT)
 
#define REQF_READ_BLOCK_ACK   (REQF_READ_BLOCK | REQF_ACK_BIT)
 
#define REQF_WRITE_BLOCK_ACK   (REQF_WRITE_BLOCK | REQF_ACK_BIT)
 
#define REQF_READ_HISTORY_ACK   (REQF_READ_HISTORY | REQF_ACK_BIT)
 
#define REQF_CALL_ACK   (REQF_CALL | REQF_ACK_BIT)
 
#define REQF_ACK_BIT   0x00000010
 
#define REQF_RW_MASK   0x0000001F
 
#define REQF_GET_RW(u)   ((u)&REQF_RW_MASK)
 
#define REQF_SET_RW(u, cf)   { (u) &= ~REQF_RW_MASK; (u) |= (cf) & REQF_RW_MASK; }
 
#define REQF_SINGLE   0x00040000
 
#define REQF_POINTER_IS_OFFSET   0x00080000
 

Detailed Description

Macro Definition Documentation

◆ REQF_ACK_BIT

#define REQF_ACK_BIT   0x00000010

bit set: answer, not set: request

◆ REQF_ACK_EVENT

#define REQF_ACK_EVENT   REQF_WRITE_BLOCK

acknowledge event

◆ REQF_CALL_ACK

#define REQF_CALL_ACK   (REQF_CALL | REQF_ACK_BIT)

ack call from device

◆ REQF_EXCHANGE

#define REQF_EXCHANGE   0x00000003

exchange, order undefined

◆ REQF_EXCHANGE_ACK

#define REQF_EXCHANGE_ACK   (REQF_EXCHANGE | REQF_ACK_BIT)

exchange answer

◆ REQF_PASSIVE_WAIT

#define REQF_PASSIVE_WAIT   0x00000000

wait for passive data

◆ REQF_POINTER_IS_OFFSET

#define REQF_POINTER_IS_OFFSET   0x00080000

the PLC_REQLIST.Pr[].Data pointer and Pr.NextReady and Pr.Symbol are offsets

◆ REQF_READ

#define REQF_READ   0x00000001

read data from device

◆ REQF_READ_ACK

#define REQF_READ_ACK   (REQF_READ | REQF_ACK_BIT)

ack read data from device

◆ REQF_READ_BLOCK

#define REQF_READ_BLOCK   0x00000005

read data from device in block mode. "BRead" This has no routing info

◆ REQF_READ_BLOCK_ACK

#define REQF_READ_BLOCK_ACK   (REQF_READ_BLOCK | REQF_ACK_BIT)

block read mode ack

◆ REQF_READ_HISTORY

#define REQF_READ_HISTORY   0x00000007

read history data from device

◆ REQF_READ_HISTORY_ACK

#define REQF_READ_HISTORY_ACK   (REQF_READ_HISTORY | REQF_ACK_BIT)

ack read history data from device

◆ REQF_REFRESH_EVENT

#define REQF_REFRESH_EVENT   REQF_READ_BLOCK

refresh events

◆ REQF_RW_MASK

#define REQF_RW_MASK   0x0000001F

to mask out direction of I/O request

◆ REQF_SINGLE

#define REQF_SINGLE   0x00040000

do not use multi requests

◆ REQF_SUBSCRIBE

#define REQF_SUBSCRIBE   REQF_READ

subscribe to event source

◆ REQF_SYSREQUEST

#define REQF_SYSREQUEST   0x00000004

szl request

◆ REQF_SYSREQUEST_ACK

#define REQF_SYSREQUEST_ACK   (REQF_SYSREQUEST | REQF_ACK_BIT)

szl answer

◆ REQF_UNSUBSCRIBE

#define REQF_UNSUBSCRIBE   REQF_WRITE

unsubscribe from event source

◆ REQF_WRITE

#define REQF_WRITE   0x00000002

write data to device

◆ REQF_WRITE_ACK

#define REQF_WRITE_ACK   (REQF_WRITE | REQF_ACK_BIT)

ack write data to device

◆ REQF_WRITE_BLOCK

#define REQF_WRITE_BLOCK   0x00000006

write data to device in block mode. "BSend" This has no routing info

◆ REQF_WRITE_BLOCK_ACK

#define REQF_WRITE_BLOCK_ACK   (REQF_WRITE_BLOCK | REQF_ACK_BIT)

block write mode ack