here is to introduce a new primitive (node-)datatype. so next to value, string, ... transform there is now: raw
nothing to get too excited about as long as you're not dealing with device-communication and raw-byte handling.
if that is what you do though, this is your lucky day. instead of misusing strings as bytearrays (which you had to do in vvvv until now - and you can still do) there is now a native raw (byte) datatype. so think no more Ord (String) and SpellValue (String) but instead:
make sure to check the helppatches of those to get all their details.
further the following nodes now have raw inputs:
still the old versions of those nodes with string inputs are available as modules and versioned "string".
so this is to distinguish more clearly between string and byte-handling and should also have a positive influence on performance in situations where string/byte conversions can now be omitted.
please give it a run and let us know what you think.
as always get the latest from here: alpha builds
YEA BABY I LIKE IT RAWWWW
YES!! long live the byte! appriciating it very much indeed.
super just in time!
thank you devvvvs!!!!!!!!!!!!!!!!!!!
See, when a nigga say he likes it raw he means dirty, down to the floor
i would strongly consider REMOVING the RS232 (string) variant, as it will garble characters between $80 and $A0 in a way wich is only understandable by someone knowing the exact difference between the Latin Extension 0x0080-0x00FF) codepage of Unicode http://www.unicode.org/charts/PDF/U0080.pdf and good old ANSI in the area (0x80 and 0xFF) http://msdn.microsoft.com/en-us/library/cc195054.aspx.
99% of all programmers using RS232 to control devices will drive this crazy, as patches which worked perfect in previous versions will have unobvious but serious bugs.
the same goes for TCP, UDP, Reader, Writer (string) i would strongly argue for removing these completely.
we were actually hoping that by setting encoding of all related nodes to "System Default" we would circumvent such problems. but we are well aware that this is a delicate topic, we just couldn't come up with an actual problem yet. so pleaseplease provide us a simple demo where your scenario happens.
what i don't like concerning the raw datatype is that there's nothing visible in the ioboxes. is it possible to display the same thing that is shown in the Pins' tooltip? that'd be really nice.
can we have the spectral nodes working with raw, too?
next release introduces Skip (Raw) and Take (Raw) nodes. the former skips n bytes and returns the rest, the latter takes and returns n bytes. there'll also be a module called GetBytes (Raw) similiar to GetSpread (Spreads) using both of them.
what spectral nodes? i can only think of + (Raw Spectral), similiar to + (String Spectral) ... all the others are specific to values, not byte streams.
yes, i had a need for + (Raw Spectral). i thought there were more, but didn't have specific ones in mind...
aaand another thing:
i think it's often hard to 'see' the raw data, because iobox (Node) doesn't display them. Though every pin displays raw-values while hovering, that doesn't help when one wants to watch a spread of raws.
a possible solution could be a iobox (Raw) what essentially is a iobox (Node) but has the ability to display raw data similar to Value or String iobox.
what do you think, or how do you inspect raw data? always Asvalue (Raw) and an iobox afterwards?
well i think the + (Raw Spectral) should be easy enough to write and should make it into the upcoming release. i fear the iobox raw will have to wait a little more.
whoop, thanks! iobox (raw) was just a spontaneous idea... but i still think it has its right to exist.
+1 for IOBox (Raw)
This node would make debugging of device-communication much more comfortable.
Displaying the byte pattern hovering the output pin with the mouse in many cases is not really helping a lot. And even this is not working on the output pin of IOBox (Node) if Raw is used as output of a subpatch or module ( like for example GetBytes (Raw) ).
Another very basic node that is somehow missing in the raw-category is = (Raw), which also would be good (and logical) to have as a native node.
in the upcoming release (beta32) the IOBox (Raw) will now show the byte pattern and we've also included the = (Raw) node.
Can you enter byte patterns into the iobox directly?
@mrboni: nope. this will still take a while but latest alpha already contains a convenience module AsRaw (String Hex)
anonymous user login