|  |  |  | GStreamer 0.10 Library Reference Manual |  | 
|---|
| GstNetTimePacketGstNetTimePacket — Helper structure to construct clock packets used by network clocks. | 
#include <gst/net/gstnet.h>
            GstNetTimePacket;
#define     GST_NET_TIME_PACKET_SIZE
GstNetTimePacket* gst_net_time_packet_new   (const guint8 *buffer);
GstNetTimePacket* gst_net_time_packet_receive
                                            (gint fd,
                                             struct sockaddr *addr,
                                             socklen_t *len);
gint        gst_net_time_packet_send        (const GstNetTimePacket *packet,
                                             gint fd,
                                             struct sockaddr *addr,
                                             socklen_t len);
guint8*     gst_net_time_packet_serialize   (const GstNetTimePacket *packet);
Various functions for receiving, sending an serializing GstNetTimePacket structures.
Last reviewed on 2005-11-23 (0.9.5)
typedef struct {
  GstClockTime local_time;
  GstClockTime remote_time;
} GstNetTimePacket;
Content of a GstNetTimePacket.
| GstClockTime local_time; | the local time when this packet was sent | 
| GstClockTime remote_time; | the remote time observation | 
#define GST_NET_TIME_PACKET_SIZE 16
The size of the packets sent between network clocks.
GstNetTimePacket* gst_net_time_packet_new (const guint8 *buffer);
Creates a new GstNetTimePacket from a buffer received over the network. The
caller is responsible for ensuring that buffer is at least
GST_NET_TIME_PACKET_SIZE bytes long.
If buffer is NULL, the local and remote times will be set to
GST_CLOCK_TIME_NONE.
MT safe. Caller owns return value (g_free to free).
| buffer: | a buffer from which to construct the packet, or NULL | 
| Returns : | The new GstNetTimePacket. | 
GstNetTimePacket* gst_net_time_packet_receive (gint fd, struct sockaddr *addr, socklen_t *len);
Receives a GstNetTimePacket over a socket. Handles interrupted system calls,
but otherwise returns NULL on error. See recvfrom(2) for more information on
how to interpret sockaddr.
MT safe. Caller owns return value (g_free to free).
| fd: | a file descriptor created by socket(2) | 
| addr: | a pointer to a sockaddr to hold the address of the sender | 
| len: | a pointer to the size of the data pointed to by addr | 
| Returns : | The new GstNetTimePacket. | 
gint gst_net_time_packet_send (const GstNetTimePacket *packet, gint fd, struct sockaddr *addr, socklen_t len);
Sends a GstNetTimePacket over a socket. Essentially a thin wrapper around
sendto(2) and gst_net_time_packet_serialize(). 
MT safe.
| packet: | the GstNetTimePacket | 
| fd: | a file descriptor created by socket(2) | 
| addr: | a pointer to a sockaddr to hold the address of the sender | 
| len: | the size of the data pointed to by addr | 
| Returns : | The return value of sendto(2). | 
guint8* gst_net_time_packet_serialize (const GstNetTimePacket *packet);
Serialized a GstNetTimePacket into a newly-allocated sequence of GST_NET_TIME_PACKET_SIZE bytes, in network byte order. The value returned is suitable for passing to write(2) or sendto(2) for communication over the network.
MT safe. Caller owns return value (g_free to free).
| packet: | the GstNetTimePacket | 
| Returns : | A newly allocated sequence of GST_NET_TIME_PACKET_SIZE bytes. | 
| << GstNetClientClock | GstNetTimeProvider >> |