Motorola Mobility Confidential Restricted.
/extra/kbs/check_outs/co_356297/STABLE_geranium_lpm_cornsilk_10/dist/idl/js/toi/ToiMediaSession.idl
00001 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
00002  *--------------------------------------------------------------------
00003  *
00004  * ToiMediaSession.idl
00005  *
00006  * This file was created by the Motorola IDL backend, 
00007  * which is based on the OmniORB IDL parser.
00008  * Please do not modify.
00009  *
00010  * Copyright (c) 2009 Motorola Inc. All Rights Reserved.
00011  *
00012  *--------------------------------------------------------------------
00013  */
00014 
00015 #ifndef TOIMEDIASESSION_IDL
00016 #define TOIMEDIASESSION_IDL
00017 
00018 #include "TToiOperationNotSupportedException.idl"
00019 #include "TToiNoDataException.idl"
00020 #include "TToiNotEnoughResourcesException.idl"
00021 #include "TToiInvalidArgumentException.idl"
00022 #include "TToiSessionViolationException.idl"
00023 #include "ToiEventTarget.idl"
00024 
00025 //@ [Struct(Interface=IToiMediaSession,Name=TToiDistributionProperty)]
00026 interface ToiMediaSessionDistributionProperty;
00027 //@ [Struct(Interface=IToiMediaSession,Name=TToiDistributionInfo)]
00028 interface ToiMediaSessionDistributionInfo;
00029 //@ [Struct(Interface=IToiMediaSession,Name=TToiStreamInfo)]
00030 interface ToiMediaSessionStreamInfo;
00031 
00049 //@ [EventTarget(EventObserver=IToiMediaSessionObserver)]
00050 
00051 //@ [ReleaseInstance(Method=ReleaseInstance)]
00052 interface ToiMediaSession : ToiEventTarget {
00053 
00056   
00060   const long ON_PARAMETER_CHANGED = 1900;
00061   
00063   
00066   //@ [Enum]
00067   typedef long TToiState;
00070   
00081   //@ [Enumerator(Enum=TToiState,Name=STATE_CONNECTING)]
00082   const TToiState STATE_CONNECTING = 0;
00083   
00091   //@ [Enumerator(Enum=TToiState,Name=STATE_RUNNING)]
00092   const TToiState STATE_RUNNING = 1;
00093   
00099   //@ [Enumerator(Enum=TToiState,Name=STATE_FAILED)]
00100   const TToiState STATE_FAILED = 2;
00101   
00108   //@ [Enumerator(Enum=TToiState,Name=STATE_CLOSED)]
00109   const TToiState STATE_CLOSED = 3;
00110   
00112 
00116   typedef long TToiDistributionId;
00117   
00120   typedef sequence < TToiDistributionId > TToiDistributionIdSequence;
00121   
00124   typedef sequence < ToiMediaSessionDistributionProperty > TToiDistributionPropertySequence;
00125   
00128   typedef sequence < octet > TToiDataRelayData;
00129   
00131   typedef long TToiStreamId;
00132   
00135   typedef sequence < TToiStreamId > TToiStreamIdSequence;
00136   
00139   typedef sequence < octet > TToiCipherData;
00140   
00142   typedef long TToiSessionId;
00143   
00148   const TToiSessionId INVALID_SESSION_ID = -1;
00149   
00152   typedef long TToiSessionType;
00153   
00158   const TToiSessionType TYPE_PLAYER = 1;
00159   
00164   const TToiSessionType TYPE_RECORDER = 2;
00165   
00170   const TToiSessionType TYPE_CONSUMER = 4;
00171   
00176   const TToiSessionType TYPE_DISTRIBUTOR = 8;
00177   
00184   const TToiSessionType TYPE_EXTENDED = 16;
00185   
00192   const string PROPERTY_DISTRIBUTION_PROTOCOL_TYPE = "distribution.protocol.type";
00193   
00200   const string PROPERTY_DISTRIBUTION_DRM_TYPE = "distribution.drm.type";
00201   
00207   const string PROPERTY_DISTRIBUTION_CLIENT_MAC_ADDRESS = "distribution.client.macaddress";
00208   
00216   const string PROPERTY_DISTRIBUTION_TRANSCODING_AUDIO_LANGUAGE = "distribution.transcoding.audiolanguage";
00217   
00224   const string PROPERTY_DISTRIBUTION_TRANSCODING_DVS_ENABLED = "distribution.transcoding.dvsenabled";
00225   
00233   const string PROPERTY_DISTRIBUTION_STARTPOSITION = "distribution.media.startposition";
00234   
00243   const string PROPERTY_DISTRIBUTION_TIMESHIFT_ASSET = "distribution.media.timeshift.asset";
00244   
00247   //@ [Enum]
00248   typedef long TToiCipher;
00251   
00257   //@ [Enumerator(Enum=TToiCipher,Name=CIPHER_NONE)]
00258   const TToiCipher CIPHER_NONE = 0;
00259   
00265   //@ [Enumerator(Enum=TToiCipher,Name=CIPHER_DVB_CSA)]
00266   const TToiCipher CIPHER_DVB_CSA = 1;
00267   
00273   //@ [Enumerator(Enum=TToiCipher,Name=CIPHER_ARIB_MULTI2)]
00274   const TToiCipher CIPHER_ARIB_MULTI2 = 2;
00275   
00281   //@ [Enumerator(Enum=TToiCipher,Name=CIPHER_AES_128)]
00282   const TToiCipher CIPHER_AES_128 = 3;
00283   
00289   //@ [Enumerator(Enum=TToiCipher,Name=CIPHER_TRIPLE_DES)]
00290   const TToiCipher CIPHER_TRIPLE_DES = 4;
00291   
00293 
00295   //@ [Enum]
00296   typedef long TToiCipherBlockMode;
00299   
00305   //@ [Enumerator(Enum=TToiCipherBlockMode,Name=CIPHER_BLOCK_MODE_NONE)]
00306   const TToiCipherBlockMode CIPHER_BLOCK_MODE_NONE = 0;
00307   
00313   //@ [Enumerator(Enum=TToiCipherBlockMode,Name=CIPHER_BLOCK_MODE_ECB)]
00314   const TToiCipherBlockMode CIPHER_BLOCK_MODE_ECB = 1;
00315   
00321   //@ [Enumerator(Enum=TToiCipherBlockMode,Name=CIPHER_BLOCK_MODE_CBC)]
00322   const TToiCipherBlockMode CIPHER_BLOCK_MODE_CBC = 2;
00323   
00329   //@ [Enumerator(Enum=TToiCipherBlockMode,Name=CIPHER_BLOCK_MODE_CFB)]
00330   const TToiCipherBlockMode CIPHER_BLOCK_MODE_CFB = 3;
00331   
00337   //@ [Enumerator(Enum=TToiCipherBlockMode,Name=CIPHER_BLOCK_MODE_OFB)]
00338   const TToiCipherBlockMode CIPHER_BLOCK_MODE_OFB = 4;
00339   
00345   //@ [Enumerator(Enum=TToiCipherBlockMode,Name=CIPHER_BLOCK_MODE_CTR)]
00346   const TToiCipherBlockMode CIPHER_BLOCK_MODE_CTR = 5;
00347   
00349 
00351   //@ [Enum]
00352   typedef long TToiCipherResidueMode;
00355   
00361   //@ [Enumerator(Enum=TToiCipherResidueMode,Name=CIPHER_RESIDUE_MODE_NONE)]
00362   const TToiCipherResidueMode CIPHER_RESIDUE_MODE_NONE = 0;
00363   
00369   //@ [Enumerator(Enum=TToiCipherResidueMode,Name=CIPHER_RESIDUE_MODE_FRONT)]
00370   const TToiCipherResidueMode CIPHER_RESIDUE_MODE_FRONT = 1;
00371   
00377   //@ [Enumerator(Enum=TToiCipherResidueMode,Name=CIPHER_RESIDUE_MODE_BACK)]
00378   const TToiCipherResidueMode CIPHER_RESIDUE_MODE_BACK = 2;
00379   
00385   //@ [Enumerator(Enum=TToiCipherResidueMode,Name=CIPHER_RESIDUE_MODE_CTS)]
00386   const TToiCipherResidueMode CIPHER_RESIDUE_MODE_CTS = 3;
00387   
00393   //@ [Enumerator(Enum=TToiCipherResidueMode,Name=CIPHER_RESIDUE_MODE_OFB)]
00394   const TToiCipherResidueMode CIPHER_RESIDUE_MODE_OFB = 4;
00395   
00397 
00411   //@ [OutParam(Name=distributionId,Position=1,IsBinary=0, Bound=0)]
00412   TToiDistributionId enableDistribution()
00413    raises (TToiSessionViolationException);
00414   
00437   void setDistributionProperties(in TToiDistributionId distributionId, 
00438         in TToiDistributionPropertySequence properties)
00439    raises (TToiInvalidArgumentException, TToiSessionViolationException);
00440   
00458   void disableDistribution(in TToiDistributionId distributionId)
00459    raises (TToiSessionViolationException, TToiInvalidArgumentException);
00460   
00481   //@ [OutParam(Name=info,Position=2,IsBinary=0, Bound=0)]
00482   ToiMediaSessionDistributionInfo getDistributionInfo(in TToiDistributionId distributionId)
00483    raises (TToiSessionViolationException, TToiInvalidArgumentException);
00484   
00498   //@ [OutParam(Name=ids,Position=1,IsBinary=0, Bound=0)]
00499   TToiDistributionIdSequence getDistributionIds()
00500    raises (TToiSessionViolationException);
00501   
00508   //@ [OutParam(Name=id,Position=1,IsBinary=0, Bound=0)]
00509   TToiSessionId getId();
00510   
00523   //@ [OutParam(Name=type,Position=1,IsBinary=0, Bound=0)]
00524   TToiSessionType getType()
00525    raises (TToiSessionViolationException);
00526   
00537   //@ [OutParam(Name=url,Position=1,IsBinary=0, Bound=0)]
00538   string getUrl()
00539    raises (TToiSessionViolationException);
00540   
00551   //@ [OutParam(Name=state,Position=1,IsBinary=0, Bound=0)]
00552   TToiState getState();
00553   
00568   //@ [OutParam(Name=info,Position=1,IsBinary=0, Bound=0)]
00569   ToiMediaSessionStreamInfo getStreamInfo()
00570    raises (TToiNoDataException, TToiSessionViolationException);
00571   
00590   //@ [OutParam(Name=assetId,Position=1,IsBinary=0, Bound=0)]
00591   string getAssetId()
00592    raises (TToiOperationNotSupportedException, TToiSessionViolationException);
00593   
00610   //@ [OutParam(Name=value,Position=2,IsBinary=0, Bound=0)]
00611   string getParameter(in string name)
00612    raises (TToiInvalidArgumentException, TToiSessionViolationException);
00613   
00630   void setParameter(in string name, 
00631         in string value)
00632    raises (TToiInvalidArgumentException, TToiSessionViolationException);
00633   
00650   //@ [ReleaseInstance]
00651   
00652   
00653   void releaseInstance();
00654   
00655 };
00656 
00657 #endif