summaryrefslogtreecommitdiff
path: root/audio_codec/libraac/include/rm_packet.h (plain)
blob: e9c47eee63803d2c24ab9289bd305f8fb7b21ebb
1/* ***** BEGIN LICENSE BLOCK *****
2 * Source last modified: $Id: rm_packet.h,v 1.1.1.1.2.1 2005/05/04 18:20:57 hubbe Exp $
3 *
4 * REALNETWORKS CONFIDENTIAL--NOT FOR DISTRIBUTION IN SOURCE CODE FORM
5 * Portions Copyright (c) 1995-2005 RealNetworks, Inc.
6 * All Rights Reserved.
7 *
8 * The contents of this file, and the files included with this file,
9 * are subject to the current version of the Real Format Source Code
10 * Porting and Optimization License, available at
11 * https://helixcommunity.org/2005/license/realformatsource (unless
12 * RealNetworks otherwise expressly agrees in writing that you are
13 * subject to a different license). You may also obtain the license
14 * terms directly from RealNetworks. You may not use this file except
15 * in compliance with the Real Format Source Code Porting and
16 * Optimization License. There are no redistribution rights for the
17 * source code of this file. Please see the Real Format Source Code
18 * Porting and Optimization License for the rights, obligations and
19 * limitations governing use of the contents of the file.
20 *
21 * RealNetworks is the developer of the Original Code and owns the
22 * copyrights in the portions it created.
23 *
24 * This file, and the files included with this file, is distributed and
25 * made available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND,
26 * EITHER EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL
27 * SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF
28 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT
29 * OR NON-INFRINGEMENT.
30 *
31 * Technology Compatibility Kit Test Suite(s) Location:
32 * https://rarvcode-tck.helixcommunity.org
33 *
34 * Contributor(s):
35 *
36 * ***** END LICENSE BLOCK ***** */
37
38#ifndef RM_PACKET_H
39#define RM_PACKET_H
40
41#include "helix_types.h"
42
43#ifdef __cplusplus
44extern "C" {
45#endif /* #ifdef __cplusplus */
46
47 /*
48 * Packet struct
49 *
50 * Users are strongly encouraged to use the
51 * accessor functions below to retrieve information
52 * from the packet, since the definition of this
53 * struct may change in the future.
54 */
55 typedef struct rm_packet_struct {
56 UINT32 ulTime;
57 UINT16 usStream;
58 UINT16 usASMFlags;
59 BYTE ucASMRule;
60 BYTE ucLost;
61 UINT16 usDataLen;
62 BYTE* pData;
63 } rm_packet;
64
65 /*
66 * Packet Accessor functions
67 */
68 UINT32 rm_packet_get_timestamp(rm_packet* packet);
69 UINT32 rm_packet_get_stream_number(rm_packet* packet);
70 UINT32 rm_packet_get_asm_flags(rm_packet* packet);
71 UINT32 rm_packet_get_asm_rule_number(rm_packet* packet);
72 UINT32 rm_packet_get_data_length(rm_packet* packet);
73 BYTE* rm_packet_get_data(rm_packet* packet);
74 HXBOOL rm_packet_is_lost(rm_packet* packet);
75
76#ifdef __cplusplus
77}
78#endif /* #ifdef __cplusplus */
79
80#endif /* #ifndef RM_PACKET_H */
81