Changeset 3326

Show
Ignore:
Timestamp:
05/22/08 11:44:39 (4 months ago)
Author:
dgollub
Message:

Introduced osync_message_read_uint() and osync_message_write_uint()
function for easy (de)marshaling of unsigned integers.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/opensync/ipc/opensync_message.c

    r3173 r3326  
    340340{ 
    341341        g_byte_array_append( message->buffer, (unsigned char*)&value, sizeof( int ) ); 
     342} 
     343 
     344/*! @brief Appends an unsigned integer value to serialized message buffer 
     345 *  
     346 * @param message The message 
     347 * @param value The integer value to append 
     348 */ 
     349void osync_message_write_uint(OSyncMessage *message, unsigned int value) 
     350{ 
     351        g_byte_array_append( message->buffer, (unsigned char*)&value, sizeof( unsigned int ) ); 
    342352} 
    343353 
     
    413423        memcpy(value, &(message->buffer->data[ message->buffer_read_pos ]), sizeof(int)); 
    414424        message->buffer_read_pos += sizeof(int); 
     425} 
     426 
     427/*! @brief Read serialized unsigned integer from message buffer. This increments the read 
     428 * position of the message buffer. 
     429 * 
     430 * @param message The message 
     431 * @param value Reference to store the integer value  
     432 */ 
     433void osync_message_read_uint(OSyncMessage *message, unsigned int *value) 
     434{ 
     435        osync_assert(message->buffer->len >= message->buffer_read_pos + sizeof(unsigned int)); 
     436         
     437        memcpy(value, &(message->buffer->data[ message->buffer_read_pos ]), sizeof(unsigned int)); 
     438        message->buffer_read_pos += sizeof(unsigned int); 
    415439} 
    416440 
  • trunk/opensync/ipc/opensync_message.h

    r3174 r3326  
    9595 
    9696OSYNC_EXPORT void osync_message_write_int(OSyncMessage *message, int value); 
     97OSYNC_EXPORT void osync_message_write_uint(OSyncMessage *message, unsigned int value); 
    9798OSYNC_EXPORT void osync_message_write_long_long_int(OSyncMessage *message, long long int value); 
    9899OSYNC_EXPORT void osync_message_write_string(OSyncMessage *message, const char *value); 
     
    101102 
    102103OSYNC_EXPORT void osync_message_read_int(OSyncMessage *message, int *value); 
     104OSYNC_EXPORT void osync_message_read_uint(OSyncMessage *message, unsigned int *value); 
    103105OSYNC_EXPORT void osync_message_read_long_long_int(OSyncMessage *message, long long int *value); 
    104106OSYNC_EXPORT void osync_message_read_string(OSyncMessage *message, char **value);