/extra/kbs/check_outs/co_155322/STABLE_elymus_firebrick_7/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   
00146   typedef long TToiSessionType;
00147   
00152   const TToiSessionType TYPE_PLAYER = 1;
00153   
00158   const TToiSessionType TYPE_RECORDER = 2;
00159   
00164   const TToiSessionType TYPE_CONSUMER = 4;
00165   
00170   const TToiSessionType TYPE_DISTRIBUTOR = 8;
00171   
00177   const TToiSessionType TYPE_EXTENDED = 16;
00178   
00185   const string PROPERTY_DISTRIBUTION_PROTOCOL_TYPE = "distribution.protocol.type";
00186   
00193   const string PROPERTY_DISTRIBUTION_DRM_TYPE = "distribution.drm.type";
00194   
00200   const string PROPERTY_DISTRIBUTION_CLIENT_MAC_ADDRESS = "distribution.client.macaddress";
00201   
00209   const string PROPERTY_DISTRIBUTION_TRANSCODING_AUDIO_LANGUAGE = "distribution.transcoding.audiolanguage";
00210   
00217   const string PROPERTY_DISTRIBUTION_TRANSCODING_DVS_ENABLED = "distribution.transcoding.dvsenabled";
00218   
00226   const string PROPERTY_DISTRIBUTION_STARTPOSITION = "distribution.media.startposition";
00227   
00236   const string PROPERTY_DISTRIBUTION_TIMESHIFT_ASSET = "distribution.media.timeshift.asset";
00237   
00240   //@ [Enum]
00241   typedef long TToiCipher;
00244   
00250   //@ [Enumerator(Enum=TToiCipher,Name=CIPHER_NONE)]
00251   const TToiCipher CIPHER_NONE = 0;
00252   
00258   //@ [Enumerator(Enum=TToiCipher,Name=CIPHER_DVB_CSA)]
00259   const TToiCipher CIPHER_DVB_CSA = 1;
00260   
00266   //@ [Enumerator(Enum=TToiCipher,Name=CIPHER_ARIB_MULTI2)]
00267   const TToiCipher CIPHER_ARIB_MULTI2 = 2;
00268   
00274   //@ [Enumerator(Enum=TToiCipher,Name=CIPHER_AES_128)]
00275   const TToiCipher CIPHER_AES_128 = 3;
00276   
00282   //@ [Enumerator(Enum=TToiCipher,Name=CIPHER_TRIPLE_DES)]
00283   const TToiCipher CIPHER_TRIPLE_DES = 4;
00284   
00286 
00288   //@ [Enum]
00289   typedef long TToiCipherBlockMode;
00292   
00298   //@ [Enumerator(Enum=TToiCipherBlockMode,Name=CIPHER_BLOCK_MODE_NONE)]
00299   const TToiCipherBlockMode CIPHER_BLOCK_MODE_NONE = 0;
00300   
00306   //@ [Enumerator(Enum=TToiCipherBlockMode,Name=CIPHER_BLOCK_MODE_ECB)]
00307   const TToiCipherBlockMode CIPHER_BLOCK_MODE_ECB = 1;
00308   
00314   //@ [Enumerator(Enum=TToiCipherBlockMode,Name=CIPHER_BLOCK_MODE_CBC)]
00315   const TToiCipherBlockMode CIPHER_BLOCK_MODE_CBC = 2;
00316   
00322   //@ [Enumerator(Enum=TToiCipherBlockMode,Name=CIPHER_BLOCK_MODE_CFB)]
00323   const TToiCipherBlockMode CIPHER_BLOCK_MODE_CFB = 3;
00324   
00330   //@ [Enumerator(Enum=TToiCipherBlockMode,Name=CIPHER_BLOCK_MODE_OFB)]
00331   const TToiCipherBlockMode CIPHER_BLOCK_MODE_OFB = 4;
00332   
00338   //@ [Enumerator(Enum=TToiCipherBlockMode,Name=CIPHER_BLOCK_MODE_CTR)]
00339   const TToiCipherBlockMode CIPHER_BLOCK_MODE_CTR = 5;
00340   
00342 
00344   //@ [Enum]
00345   typedef long TToiCipherResidueMode;
00348   
00354   //@ [Enumerator(Enum=TToiCipherResidueMode,Name=CIPHER_RESIDUE_MODE_NONE)]
00355   const TToiCipherResidueMode CIPHER_RESIDUE_MODE_NONE = 0;
00356   
00362   //@ [Enumerator(Enum=TToiCipherResidueMode,Name=CIPHER_RESIDUE_MODE_FRONT)]
00363   const TToiCipherResidueMode CIPHER_RESIDUE_MODE_FRONT = 1;
00364   
00370   //@ [Enumerator(Enum=TToiCipherResidueMode,Name=CIPHER_RESIDUE_MODE_BACK)]
00371   const TToiCipherResidueMode CIPHER_RESIDUE_MODE_BACK = 2;
00372   
00378   //@ [Enumerator(Enum=TToiCipherResidueMode,Name=CIPHER_RESIDUE_MODE_CTS)]
00379   const TToiCipherResidueMode CIPHER_RESIDUE_MODE_CTS = 3;
00380   
00386   //@ [Enumerator(Enum=TToiCipherResidueMode,Name=CIPHER_RESIDUE_MODE_OFB)]
00387   const TToiCipherResidueMode CIPHER_RESIDUE_MODE_OFB = 4;
00388   
00390 
00404   //@ [OutParam(Name=distributionId,Position=1,IsBinary=0, Bound=0)]
00405   TToiDistributionId enableDistribution()
00406    raises (TToiSessionViolationException);
00407   
00430   void setDistributionProperties(in TToiDistributionId distributionId, 
00431         in TToiDistributionPropertySequence properties)
00432    raises (TToiInvalidArgumentException, TToiSessionViolationException);
00433   
00451   void disableDistribution(in TToiDistributionId distributionId)
00452    raises (TToiSessionViolationException, TToiInvalidArgumentException);
00453   
00474   //@ [OutParam(Name=info,Position=2,IsBinary=0, Bound=0)]
00475   ToiMediaSessionDistributionInfo getDistributionInfo(in TToiDistributionId distributionId)
00476    raises (TToiSessionViolationException, TToiInvalidArgumentException);
00477   
00491   //@ [OutParam(Name=ids,Position=1,IsBinary=0, Bound=0)]
00492   TToiDistributionIdSequence getDistributionIds()
00493    raises (TToiSessionViolationException);
00494   
00501   //@ [OutParam(Name=id,Position=1,IsBinary=0, Bound=0)]
00502   TToiSessionId getId();
00503   
00516   //@ [OutParam(Name=type,Position=1,IsBinary=0, Bound=0)]
00517   TToiSessionType getType()
00518    raises (TToiSessionViolationException);
00519   
00530   //@ [OutParam(Name=url,Position=1,IsBinary=0, Bound=0)]
00531   string getUrl()
00532    raises (TToiSessionViolationException);
00533   
00544   //@ [OutParam(Name=state,Position=1,IsBinary=0, Bound=0)]
00545   TToiState getState();
00546   
00561   //@ [OutParam(Name=info,Position=1,IsBinary=0, Bound=0)]
00562   ToiMediaSessionStreamInfo getStreamInfo()
00563    raises (TToiNoDataException, TToiSessionViolationException);
00564   
00583   //@ [OutParam(Name=assetId,Position=1,IsBinary=0, Bound=0)]
00584   string getAssetId()
00585    raises (TToiOperationNotSupportedException, TToiSessionViolationException);
00586   
00603   //@ [OutParam(Name=value,Position=2,IsBinary=0, Bound=0)]
00604   string getParameter(in string name)
00605    raises (TToiInvalidArgumentException, TToiSessionViolationException);
00606   
00623   void setParameter(in string name, 
00624         in string value)
00625    raises (TToiInvalidArgumentException, TToiSessionViolationException);
00626   
00643   //@ [ReleaseInstance]
00644   
00645   
00646   void releaseInstance();
00647   
00648 };
00649 
00650 #endif