"I have a string for id so you can have a item called 'Elevator door switch' activate a door called 'Elevator door' :)"
In my system what I might do is go:
Switch:
ID = 5 ; This is a press switch
Data_Int[0]=123 ; What this switch triggers
Door:
ID = 10
Data_Int[0]=123 ; This doors unique identifying number.
But on second thought... Perhaps it would be better if the ID numbers for each tag were unique, and there was a function parameter to define what they did instead. Or their function could just be the first integer data always.
The only problem with automatically choosing ID's for every tag is that I have to scan through all tags every time I add a tag so I can find a suitable available number, and I cannoy ever change the ID number of an existing tag without changing every reference to it which would be too complicated to bother with. But that's okay cause there's no compelling reason to change a tag's ID number.
In my system what I might do is go:
Switch:
ID = 5 ; This is a press switch
Data_Int[0]=123 ; What this switch triggers
Door:
ID = 10
Data_Int[0]=123 ; This doors unique identifying number.
But on second thought... Perhaps it would be better if the ID numbers for each tag were unique, and there was a function parameter to define what they did instead. Or their function could just be the first integer data always.
The only problem with automatically choosing ID's for every tag is that I have to scan through all tags every time I add a tag so I can find a suitable available number, and I cannoy ever change the ID number of an existing tag without changing every reference to it which would be too complicated to bother with. But that's okay cause there's no compelling reason to change a tag's ID number.