IMediaDistributor.idl
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #ifndef IMEDIADISTRIBUTOR_IDL
00012 #define IMEDIADISTRIBUTOR_IDL
00013
00014 #include "IToiMediaSession.idl"
00015 #include "TToiSessionViolationException.idl"
00016 #include "TToiInvalidArgumentException.idl"
00017 #include "TToiOperationNotSupportedException.idl"
00018 #include "TToiPermissionDeniedException.idl"
00019
00028
00029
00030 interface IMediaDistributor
00031 {
00032
00034 enum TMediaDistributorState
00035 {
00042 STATE_IDLE,
00043
00055 STATE_CONNECTING,
00056
00066 STATE_PAUSED,
00067
00077 STATE_PLAYING,
00078
00090 STATE_FASTFORWARDING,
00091
00103 STATE_REWINDING,
00104
00111 STATE_FAILED
00112 };
00113
00145 void Open(in string sourceUrl, in string destinationUrl)
00146 raises (TToiSessionViolationException,
00147 TToiInvalidArgumentException);
00148
00149
00165 void Close()
00166 raises (TToiSessionViolationException);
00167
00168
00199 void Play(in long pace)
00200 raises (TToiSessionViolationException,
00201 TToiOperationNotSupportedException,
00202 TToiInvalidArgumentException);
00203
00204
00209 void GetState(out TMediaDistributorState state);
00210
00222 void GetSessionId(out IToiMediaSession::TToiSessionId id)
00223 raises (TToiSessionViolationException);
00224
00233 void GetSourceUrl(out string url)
00234 raises (TToiSessionViolationException);
00235
00257 void SetParameter(in string name, in string value)
00258 raises (TToiInvalidArgumentException,
00259 TToiPermissionDeniedException);
00260
00261
00281 void UnsetParameter(in string name)
00282 raises (TToiInvalidArgumentException,
00283 TToiPermissionDeniedException);
00284
00285
00296 void GetParameter(in string name, out string value)
00297 raises (TToiInvalidArgumentException);
00298
00299
00312 void SubscribeParameter(in string name)
00313 raises (TToiInvalidArgumentException);
00314
00315
00328 void UnsubscribeParameter(in string name)
00329 raises (TToiInvalidArgumentException);
00330
00334
00335 void ReleaseInstance();
00336
00339 void RegisterObserverInternal(in string address)
00340 raises (TToiInvalidArgumentException);
00341
00342 void ReleaseObserverInternal(in string address)
00343 raises (TToiInvalidArgumentException);
00344
00345 };
00346
00347 #endif