Below is code demonstrating the most commonly used dot operators inside of events. The dot operator sourcedev was deliberately left out of the examples because there is rarely, if ever, an appropriate time to use it.
The download is a word doc with the dot operators in a table you can print or save for a quick reference later.
DEFINE_DEVICE
dvTP = 10001:1:0
DEFINE_VARIABLE
INTEGER NUMBER_ARRAY[] ={ 1, 2, 3, 4, 5 }
INTEGER BUTTONEVENT_DEVCHAN
INTEGER BUTTONEVENT_DEVICE
INTEGER BUTTONEVENT_PORT
INTEGER BUTTONEVENT_SYSTEM
INTEGER BUTTONEVENT_CHANNEL_NUMBER
DEV BUTTONEVENT_DPS
INTEGER CHANNELEVENT_DEVICE
INTEGER CHANNELEVENT_PORT
INTEGER CHANNELEVENT_SYSTEM
INTEGER CHANNELEVENT_CHANNEL_NUMBER
DEV CHANNELEVENT_DPS
INTEGER LEVELEVENT_DEVICE
INTEGER LEVELEVENT_PORT
INTEGER LEVELEVENT_SYSTEM
INTEGER LEVELEVENT_LEVEL_NUMBER
INTEGER LEVELEVENT_VALUE
DEV LEVELEVENT_DPS
DEFINE_EVENT
BUTTON_EVENT[dvTP,NUMBER_ARRAY]
{
PUSH:
{
//THIS IS THE DEVICE,CHANNEL COMBINATION
BUTTONEVENT_DEVCHAN = BUTTON.INPUT
//COULD BE USED LIKE THIS FOR MOMENTARY BUTTON FEEDBACK
//WHEN YOUR BUTTON FEEDBACK TYPE IS CHANNEL
TO[BUTTON.INPUT]
//THIS IS THE WHOLE D:P:S
BUTTONEVENT_DPS = BUTTON.INPUT.DEVICE
//THIS IS JUST THE DEVICE NUMBER
BUTTONEVENT_DEVICE = BUTTON.INPUT.DEVICE.NUMBER
//THIS IS JUST THE PORT
BUTTONEVENT_PORT = BUTTON.INPUT.DEVICE.PORT
//THIS IS JUST THE SYSTEM NUMBER
BUTTONEVENT_SYSTEM = BUTTON.INPUT.DEVICE.SYSTEM
//THIS IS THE CHANNEL NUMBER THAT CAUSED THE
//BUTTON EVENT TO HAPPEN
BUTTONEVENT_CHANNEL_NUMBER = BUTTON.INPUT.CHANNEL
}
}
CHANNEL_EVENT[dvTP,NUMBER_ARRAY]
{
ON:
{
//THIS IS THE WHOLE D:P:S
CHANNELEVENT_DPS = CHANNEL.DEVICE
//THIS IS JUST THE DEVICE NUMBER
CHANNELEVENT_DEVICE = CHANNEL.DEVICE.NUMBER
//THIS IS JUST THE PORT
CHANNELEVENT_PORT = CHANNEL.DEVICE.PORT
//THIS IS JUST THE SYSTEM NUMBER
CHANNELEVENT_SYSTEM = CHANNEL.DEVICE.SYSTEM
//THIS IS THE CHANNEL NUMBER THAT CAUSED THE
//CHANNEL EVENT TO HAPPEN
CHANNELEVENT_CHANNEL_NUMBER = CHANNEL.CHANNEL
}
}
LEVEL_EVENT[dvTP,NUMBER_ARRAY]
{
//THIS IS THE WHOLE D:P:S
LEVELEVENT_DPS = LEVEL.INPUT.DEVICE
//THIS IS JUST THE DEVICE NUMBER
LEVELEVENT_DEVICE = LEVEL.INPUT.DEVICE.NUMBER
//THIS IS JUST THE PORT
LEVELEVENT_PORT = LEVEL.INPUT.DEVICE.PORT
//THIS IS JUST THE SYSTEM NUMBER
LEVELEVENT_SYSTEM = LEVEL.INPUT.DEVICE.SYSTEM
//THIS IS THE LEVEL CODE THAT CAUSED THE
//LEVEL EVENT TO HAPPEN
LEVELEVENT_LEVEL_NUMBER = LEVEL.INPUT.LEVEL
//THIS IS THE ACTUAL LEVEL VALUE
LEVELEVENT_VALUE = LEVEL.VALUE
}