blob: 5008c25b92b0a6c70255d40448b7804b7fadd77a [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>pv_player_interface.h Source File</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.2.18 -->
<center>
<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="annotated.html">Data Structures</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Data Fields</a> &nbsp; </center>
<hr><h1>pv_player_interface.h</h1><a href="pv__player__interface_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/*</span>
00002 <span class="comment">* ==============================================================================</span>
00003 <span class="comment">* Name : pv_player_interface.h</span>
00004 <span class="comment">* Part of :</span>
00005 <span class="comment">* Interface :</span>
00006 <span class="comment">* Description : Interface class and supporting definitions for the pvPlayer engine</span>
00007 <span class="comment">* Version : (see RELEASE field in copyright header above)</span>
00008 <span class="comment">*</span>
00009 <span class="comment">* ==============================================================================</span>
00010 <span class="comment">*/</span>
00011
00012 <span class="preprocessor">#ifndef PV_PLAYER_INTERFACE_H_INCLUDED</span>
00013 <span class="preprocessor"></span><span class="preprocessor">#define PV_PLAYER_INTERFACE_H_INCLUDED</span>
00014 <span class="preprocessor"></span>
00015
00016 <span class="comment">// INCLUDES</span>
00017 <span class="preprocessor">#ifndef OSCL_BASE_H_INCLUDED</span>
00018 <span class="preprocessor"></span><span class="preprocessor">#include "oscl_base.h"</span>
00019 <span class="preprocessor">#endif</span>
00020 <span class="preprocessor"></span>
00021 <span class="preprocessor">#ifndef OSCL_STRING_H_INCLUDED</span>
00022 <span class="preprocessor"></span><span class="preprocessor">#include "oscl_string.h"</span>
00023 <span class="preprocessor">#endif</span>
00024 <span class="preprocessor"></span>
00025 <span class="preprocessor">#ifndef OSCL_VECTOR_H_INCLUDED</span>
00026 <span class="preprocessor"></span><span class="preprocessor">#include "oscl_vector.h"</span>
00027 <span class="preprocessor">#endif</span>
00028 <span class="preprocessor"></span>
00029 <span class="preprocessor">#ifndef OSCL_MEM_H_INCLUDED</span>
00030 <span class="preprocessor"></span><span class="preprocessor">#include "oscl_mem.h"</span>
00031 <span class="preprocessor">#endif</span>
00032 <span class="preprocessor"></span>
00033 <span class="preprocessor">#ifndef PVLOGGER_H_INCLUDED</span>
00034 <span class="preprocessor"></span><span class="preprocessor">#include "pvlogger.h"</span>
00035 <span class="preprocessor">#endif</span>
00036 <span class="preprocessor"></span>
00037 <span class="preprocessor">#ifndef PVMF_RETURN_CODES_H_INCLUDED</span>
00038 <span class="preprocessor"></span><span class="preprocessor">#include "pvmf_return_codes.h"</span>
00039 <span class="preprocessor">#endif</span>
00040 <span class="preprocessor"></span>
00041 <span class="preprocessor">#ifndef PV_ENGINE_TYPES_H_INCLUDED</span>
00042 <span class="preprocessor"></span><span class="preprocessor">#include "pv_engine_types.h"</span>
00043 <span class="preprocessor">#endif</span>
00044 <span class="preprocessor"></span>
00045 <span class="preprocessor">#ifndef PV_PLAYER_TYPES_H_INCLUDED</span>
00046 <span class="preprocessor"></span><span class="preprocessor">#include "pv_player_types.h"</span>
00047 <span class="preprocessor">#endif</span>
00048 <span class="preprocessor"></span>
00049 <span class="preprocessor">#ifndef PV_PLAYER_EVENTS_H_INCLUDED</span>
00050 <span class="preprocessor"></span><span class="preprocessor">#include "pv_player_events.h"</span>
00051 <span class="preprocessor">#endif</span>
00052 <span class="preprocessor"></span>
00053 <span class="preprocessor">#ifndef PV_PLAYER_DATASOURCE_H_INCLUDED</span>
00054 <span class="preprocessor"></span><span class="preprocessor">#include "pv_player_datasource.h"</span>
00055 <span class="preprocessor">#endif</span>
00056 <span class="preprocessor"></span>
00057 <span class="preprocessor">#ifndef PV_PLAYER_DATASINK_H_INCLUDED</span>
00058 <span class="preprocessor"></span><span class="preprocessor">#include "pv_player_datasink.h"</span>
00059 <span class="preprocessor">#endif</span>
00060 <span class="preprocessor"></span>
00061 <span class="preprocessor">#ifndef PVMI_KVP_H_INCLUDED</span>
00062 <span class="preprocessor"></span><span class="preprocessor">#include "pvmi_kvp.h"</span>
00063 <span class="preprocessor">#endif</span>
00064 <span class="preprocessor"></span>
00065 <span class="preprocessor">#ifndef PVMF_MEDIA_CLOCK_H_INCLUDED</span>
00066 <span class="preprocessor"></span><span class="preprocessor">#include "pvmf_media_clock.h"</span>
00067 <span class="preprocessor">#endif</span>
00068 <span class="preprocessor"></span>
00069
00070 <span class="comment">// CLASS DECLARATION</span>
<a name="l00077"></a><a class="code" href="classPVPlayerInterface.html">00077</a> <span class="comment"></span><span class="keyword">class </span><a class="code" href="classPVPlayerInterface.html">PVPlayerInterface</a>
00078 {
00079 <span class="keyword">public</span>:
00080
<a name="l00085"></a><a class="code" href="classPVPlayerInterface.html#a0">00085</a> <span class="keyword">virtual</span> <a class="code" href="classPVPlayerInterface.html#a0">~PVPlayerInterface</a>() {};
00086
00104 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a1">GetSDKModuleInfo</a>(PVSDKModuleInfo &amp;aSDKModuleInfo, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00105
00128 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a2">SetLogAppender</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* aTag, OsclSharedPtr&lt;PVLoggerAppender&gt;&amp; aAppender, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00129
00149 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a3">RemoveLogAppender</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* aTag, OsclSharedPtr&lt;PVLoggerAppender&gt;&amp; aAppender, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00150
00174 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a4">SetLogLevel</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* aTag, int32 aLevel, <span class="keywordtype">bool</span> aSetSubtree = <span class="keyword">false</span>, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00175
00194 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a5">GetLogLevel</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* aTag, PVLogLevelInfo&amp; aLogInfo, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00195
00219 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a6">QueryUUID</a>(<span class="keyword">const</span> PvmfMimeString&amp; aMimeType, Oscl_Vector&lt;PVUuid, OsclMemAllocator&gt;&amp; aUuids,
00220 <span class="keywordtype">bool</span> aExactUuidsOnly = <span class="keyword">false</span>, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00241 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a7">QueryInterface</a>(<span class="keyword">const</span> PVUuid&amp; aUuid, PVInterface*&amp; aInterfacePtr, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00242
00259 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a8">CancelCommand</a>(PVCommandId aCancelCmdId, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00260
00272 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a9">CancelAllCommands</a>(<span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00273
00288 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a10">GetPVPlayerState</a>(PVPlayerState&amp; aState, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00289
00300 <span class="keyword">virtual</span> PVMFStatus <a class="code" href="classPVPlayerInterface.html#a11">GetPVPlayerStateSync</a>(PVPlayerState&amp; aState) = 0;
00301
00319 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a12">AddDataSource</a>(PVPlayerDataSource&amp; aDataSource, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00320
00338 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a13">Init</a>(<span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00339
00366 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a14">GetMetadataKeys</a>(PVPMetadataList&amp; aKeyList, int32 aStartingIndex = 0, int32 aMaxEntries = -1,
00367 <span class="keywordtype">char</span>* aQueryKey = NULL, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00368
00399 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a15">GetMetadataValues</a>(PVPMetadataList&amp; aKeyList, int32 aStartingValueIndex, int32 aMaxValueEntries, int32&amp; aNumAvailableValueEntries,
00400 Oscl_Vector&lt;PvmiKvp, OsclMemAllocator&gt;&amp; aValueList, <span class="keyword">const</span> OsclAny* aContextData = NULL, <span class="keywordtype">bool</span> aMetadataValuesCopiedInCallBack = <span class="keyword">true</span>) = 0;
00401
00419 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a16">ReleaseMetadataValues</a>(Oscl_Vector&lt;PvmiKvp, OsclMemAllocator&gt;&amp; aValueList, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00420
00438 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a17">AddDataSink</a>(PVPlayerDataSink&amp; aDataSink, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00439
00470 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a18">SetPlaybackRange</a>(PVPPlaybackPosition aBeginPos, PVPPlaybackPosition aEndPos, <span class="keywordtype">bool</span> aQueueRange, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00471
00492 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a19">GetPlaybackRange</a>(PVPPlaybackPosition &amp;aBeginPos, PVPPlaybackPosition &amp;aEndPos, <span class="keywordtype">bool</span> aQueued, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00493
00509 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a20">GetCurrentPosition</a>(PVPPlaybackPosition &amp;aPos, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00510
00543 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a21">SetPlaybackRate</a>(int32 aRate, PVMFTimebase* aTimebase = NULL, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00544
00568 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a22">GetPlaybackRate</a>(int32&amp; aRate, PVMFTimebase*&amp; aTimebase, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00569
00589 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a23">GetPlaybackMinMaxRate</a>(int32&amp; aMinRate, int32&amp; aMaxRate, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00590
00602 <span class="keyword">virtual</span> PVMFStatus <a class="code" href="classPVPlayerInterface.html#a24">GetCurrentPositionSync</a>(PVPPlaybackPosition &amp;aPos) = 0;
00603
00620 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a25">Prepare</a>(<span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00621
00636 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a26">Start</a>(<span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00637
00651 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a27">Pause</a>(<span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00652
00667 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a28">Resume</a>(<span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00668
00684 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a29">Stop</a>(<span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00685
00703 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a30">RemoveDataSink</a>(PVPlayerDataSink&amp; aDataSink, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00704
00720 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a31">Reset</a>(<span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00721
00739 <span class="keyword">virtual</span> PVCommandId <a class="code" href="classPVPlayerInterface.html#a32">RemoveDataSource</a>(PVPlayerDataSource&amp; aDataSource, <span class="keyword">const</span> OsclAny* aContextData = NULL) = 0;
00740
00750 OSCL_IMPORT_REF <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classPVPlayerInterface.html#d0">GetSDKInfo</a>(PVSDKInfo&amp; aSDKInfo);
00751
00752 };
00753
00754
00755
00756
00757 <span class="preprocessor">#endif // PV_PLAYER_INTERFACE_H_INCLUDED</span>
</pre></div><hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>PV Player Engine</small>
<address style="align: left;"><small>Posting Version: OPENCORE_20090310 </small>
</small></address>
</body>
</html>