IToiMediaConsumer.idl
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef ITOIMEDIACONSUMER_IDL
00016 #define ITOIMEDIACONSUMER_IDL
00017
00018 #include "TToiSessionViolationException.idl"
00019 #include "TToiUnavailableException.idl"
00020 #include "TToiInvalidArgumentException.idl"
00021 #include "TToiNoDataException.idl"
00022 #include "TToiOperationNotSupportedException.idl"
00023 #include "TToiNotEnoughResourcesException.idl"
00024 #include "IToiMediaSession.idl"
00025 #include "TToiPermissionDeniedException.idl"
00026 #include "TToiUnhandledValueException.idl"
00027 #include "IToiApplicationService.idl"
00028 #include "IToiMediaService.idl"
00029
00030 #include "IToiApplicationService.idl"
00041
00042
00043
00044 interface IToiMediaConsumer {
00045
00048 enum TToiState
00049 {
00050
00058
00059 STATE_IDLE,
00060
00073
00074 STATE_CONNECTING,
00075
00084
00085 STATE_PAUSED,
00086
00094
00095 STATE_CONSUMING,
00096
00103
00104 STATE_FAILED
00105 };
00112 void GetState(out TToiState state);
00113
00125 void GetSessionId(out IToiMediaSession::TToiSessionId id)
00126 raises (TToiSessionViolationException);
00127
00138 void GetUrl(out string url)
00139 raises (TToiSessionViolationException);
00140
00175 void Open(in string url)
00176 raises (TToiSessionViolationException, TToiInvalidArgumentException, TToiUnavailableException);
00177
00198 void Close()
00199 raises (TToiSessionViolationException, TToiUnavailableException);
00200
00224 void Consume()
00225 raises (TToiSessionViolationException, TToiOperationNotSupportedException, TToiUnavailableException);
00226
00231
00232
00233
00234 void ReleaseInstance();
00235
00236
00237
00250 void RegisterObserver(in IToiApplicationService::TToiApplicationId applicationId,
00251 in string address)
00252 raises (TToiInvalidArgumentException);
00253
00262 void ReleaseObserver(in string address)
00263 raises (TToiInvalidArgumentException);
00264
00265 };
00266
00267 #endif