Commit 7151b1d6 authored by Olivier Aubert's avatar Olivier Aubert

mediacontrol:

 * prefix non-exported function names with private_ (as by Pierre d'Herbemont's suggestion)
 * move private functions definitions to src/control/mediacontrol_internal.h
 * move all structure definitions to include/vlc/mediacontrol_structure.h
parent 6f47f369
......@@ -45,92 +45,22 @@ extern "C" {
#include <vlc/mediacontrol_structures.h>
/**
* RGBPicture structure
* This generic structure holds a picture in an encoding specified by type.
*/
typedef struct {
int width;
int height;
long type;
vlc_int64_t date;
int size;
char *data;
} mediacontrol_RGBPicture;
/**
* Playlist sequence
* A simple list of strings.
*/
typedef struct {
int size;
char **data;
} mediacontrol_PlaylistSeq;
typedef struct {
int code;
char *message;
} mediacontrol_Exception;
/**
* Exception codes
*/
#define mediacontrol_PositionKeyNotSupported 1
#define mediacontrol_PositionOriginNotSupported 2
#define mediacontrol_InvalidPosition 3
#define mediacontrol_PlaylistException 4
#define mediacontrol_InternalException 5
/**
* mediacontrol_Instance is an opaque structure, defined in
* mediacontrol_internal.h. API users do not have to mess with it.
*/
typedef struct mediacontrol_Instance mediacontrol_Instance;
/**
* Possible player status
*/
enum mediacontrol_PlayerStatusList
{
mediacontrol_PlayingStatus, mediacontrol_PauseStatus,
mediacontrol_ForwardStatus, mediacontrol_BackwardStatus,
mediacontrol_InitStatus, mediacontrol_EndStatus,
mediacontrol_UndefinedStatus
};
typedef enum mediacontrol_PlayerStatusList mediacontrol_PlayerStatus;
/**
* Stream information
* This structure allows to quickly get various informations about the stream.
*/
typedef struct {
mediacontrol_PlayerStatus streamstatus;
char *url; /* The URL of the current media stream */
vlc_int64_t position; /* actual location in the stream (in ms) */
vlc_int64_t length; /* total length of the stream (in ms) */
} mediacontrol_StreamInformation;
/**************************************************************************
* Helper functions
***************************************************************************/
/**
* Allocate a RGBPicture structure.
* \param datasize: the size of the data
*/
mediacontrol_RGBPicture *mediacontrol_RGBPicture__alloc( int datasize );
/**
* Free a RGBPicture structure.
* \param pic: the RGBPicture structure
*/
VLC_PUBLIC_API void mediacontrol_RGBPicture__free( mediacontrol_RGBPicture *pic );
mediacontrol_RGBPicture *_mediacontrol_createRGBPicture( int, int, long, vlc_int64_t l_date,
char *, int);
mediacontrol_PlaylistSeq *mediacontrol_PlaylistSeq__alloc( int size );
VLC_PUBLIC_API void mediacontrol_PlaylistSeq__free( mediacontrol_PlaylistSeq *ps );
/**
......
......@@ -58,6 +58,16 @@ typedef enum {
mediacontrol_MediaTime
} mediacontrol_PositionKey;
/**
* Possible player status
*/
typedef enum {
mediacontrol_PlayingStatus, mediacontrol_PauseStatus,
mediacontrol_ForwardStatus, mediacontrol_BackwardStatus,
mediacontrol_InitStatus, mediacontrol_EndStatus,
mediacontrol_UndefinedStatus
} mediacontrol_PlayerStatus;
/**
* MediaControl Position
*/
......@@ -67,6 +77,54 @@ typedef struct {
long value;
} mediacontrol_Position;
/**
* RGBPicture structure
* This generic structure holds a picture in an encoding specified by type.
*/
typedef struct {
int width;
int height;
long type;
vlc_int64_t date;
int size;
char *data;
} mediacontrol_RGBPicture;
/**
* Playlist sequence
* A simple list of strings.
*/
typedef struct {
int size;
char **data;
} mediacontrol_PlaylistSeq;
typedef struct {
int code;
char *message;
} mediacontrol_Exception;
/**
* Exception codes
*/
#define mediacontrol_PositionKeyNotSupported 1
#define mediacontrol_PositionOriginNotSupported 2
#define mediacontrol_InvalidPosition 3
#define mediacontrol_PlaylistException 4
#define mediacontrol_InternalException 5
/**
* Stream information
* This structure allows to quickly get various informations about the stream.
*/
typedef struct {
mediacontrol_PlayerStatus streamstatus;
char *url; /* The URL of the current media stream */
vlc_int64_t position; /* actual location in the stream (in ms) */
vlc_int64_t length; /* total length of the stream (in ms) */
} mediacontrol_StreamInformation;
# ifdef __cplusplus
}
# endif
......
......@@ -88,12 +88,12 @@ mediacontrol_snapshot( mediacontrol_Instance *self,
if( p_snapshot )
{
p_pic = _mediacontrol_createRGBPicture( p_snapshot->i_width,
p_snapshot->i_height,
VLC_FOURCC( 'p','n','g',' ' ),
p_snapshot->date,
p_snapshot->p_data,
p_snapshot->i_datasize );
p_pic = private_mediacontrol_createRGBPicture( p_snapshot->i_width,
p_snapshot->i_height,
VLC_FOURCC( 'p','n','g',' ' ),
p_snapshot->date,
p_snapshot->p_data,
p_snapshot->i_datasize );
if( !p_pic )
{
free( p_snapshot->p_data );
......
......@@ -357,7 +357,7 @@ mediacontrol_playlist_get_list( mediacontrol_Instance *self,
vlc_mutex_lock( &p_playlist->object_lock );
i_playlist_size = p_playlist->current.i_size;
retval = mediacontrol_PlaylistSeq__alloc( i_playlist_size );
retval = private_mediacontrol_PlaylistSeq__alloc( i_playlist_size );
for( i_index = 0 ; i_index < i_playlist_size ; i_index++ )
{
......
......@@ -46,6 +46,18 @@ vlc_int64_t mediacontrol_position2microsecond(
input_thread_t *p_input,
const mediacontrol_Position *pos );
/**
* Allocate a RGBPicture structure.
* \param datasize: the size of the data
*/
mediacontrol_RGBPicture *private_mediacontrol_RGBPicture__alloc( int datasize );
mediacontrol_RGBPicture *private_mediacontrol_createRGBPicture( int, int, long, vlc_int64_t l_date,
char *, int);
mediacontrol_PlaylistSeq *private_mediacontrol_PlaylistSeq__alloc( int size );
#define RAISE( c, m ) if( exception ) { exception->code = c; \
exception->message = strdup(m); }
......
......@@ -199,7 +199,7 @@ mediacontrol_position2microsecond( input_thread_t* p_input, const mediacontrol_P
}
mediacontrol_RGBPicture*
mediacontrol_RGBPicture__alloc( int datasize )
private_mediacontrol_RGBPicture__alloc( int datasize )
{
mediacontrol_RGBPicture* pic;
......@@ -223,7 +223,7 @@ mediacontrol_RGBPicture__free( mediacontrol_RGBPicture* pic )
}
mediacontrol_PlaylistSeq*
mediacontrol_PlaylistSeq__alloc( int size )
private_mediacontrol_PlaylistSeq__alloc( int size )
{
mediacontrol_PlaylistSeq* ps;
......@@ -291,12 +291,12 @@ mediacontrol_exception_free( mediacontrol_Exception *exception )
}
mediacontrol_RGBPicture*
_mediacontrol_createRGBPicture( int i_width, int i_height, long i_chroma, vlc_int64_t l_date,
private_mediacontrol_createRGBPicture( int i_width, int i_height, long i_chroma, vlc_int64_t l_date,
char* p_data, int i_datasize )
{
mediacontrol_RGBPicture *retval;
retval = mediacontrol_RGBPicture__alloc( i_datasize );
retval = private_mediacontrol_RGBPicture__alloc( i_datasize );
if( retval )
{
retval->width = i_width;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment