binaryDecode with variable number of parameters
Len Morgan
len-morgan at crcom.net
Sun Feb 19 19:08:24 EST 2012
Related to my problem with reading binary data from a socket, how do I
handle a variable number of numbers that will come in with binaryDecode?
To explain, I get a number in the packet header that tells me there are
x number of bytes to follow in this packet. I know the first byte is a
remote ID and the second is a function code. Based on the function
code, the number of two byte integers that follows is going to be (the
number of bytes in the message / 2) - 1 (for the function code and
remote ID). One time there might be 2 integers to follow, another there
might be 10. There is a "number of words" number that is part of the
command so I know how many words there will be but the binaryDecode
function requires that I specify a name for each variable that is going
to get a value.
Ideally, I'd like to put all of these words in an array so I can process
them, but this doesn't seem to be an option for the binaryDecode
command. Should I build up a string that has
"...,var[0],var[1],...,var[x] in it to account for all the variables and
then use a "do" or "dispatch" to actually do the binaryDecode?
Also, if I use var[0], var[1], etc., do I need to create ALL of the
indexes first (for binaryDecode) or will just creating the first one
(var[0]) be sufficient?
Thanks,
len morgan
More information about the use-livecode
mailing list