To follow my own post with more questions...
On Tue, May 09, 2000 at 08:57:03AM -0500, Gilbert Ramirez wrote:
> 
> 
> tvbuff_cursor_t tvbc    = tvbuff_create_cursor(tvbf)
> int type                = tvbc_get_bits( tvbc, 6 );
> int subtype             = tvbc_get_bits( tvbc, 3 );
> char pad_char           = tvbc_get_bits( tvbc, 7 );
> int plength             = tvbc_get_bits( tvbc, 8 );
> int dlen                = tvbc_get_bits( tvbc, 32 );
> char* pdata             = tvbc_get_bits( tvbc, dlen * 8);
> 
> --gilbert
I made a mistake on the last line. It should be like you had it:
guint8* pdata             = tvbc_get_bytes_ptr( tvbc, dlen );
But anyway...
Given a sequential accessor for tvbuffs, how would you like
to add the data to the proto_tree? The current proto_tree_add_*()
routines take an offset and a byte length.
One way would be to provide proto_tree_add_*() routines that
take a tvbuff_cursor_t* as an argument, and the routine directly
queries the cursor about the offset and length of its previous
access. You'd have to call the proto_tree_add*() function 
before using the cursor again, though.
--gilbert