IToiAudioOutputService.idl

00001 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
00002  *--------------------------------------------------------------------
00003  *
00004  * IToiAudioOutputService.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 ITOIAUDIOOUTPUTSERVICE_IDL
00016 #define ITOIAUDIOOUTPUTSERVICE_IDL
00017 
00018 #include "TToiInvalidArgumentException.idl"
00019 #include "TToiInvalidPreconditionException.idl"
00020 #include "TToiOperationNotSupportedException.idl"
00021 #include "TToiUnhandledValueException.idl"
00022 #include "IToiApplicationService.idl"
00023 
00024 #include "IToiApplicationService.idl"
00032 //@ [EventTarget(EventObserver=IToiAudioOutputObserver)]
00033 //@ [Service(Name=AudioOutputService)]
00034 
00035 interface IToiAudioOutputService {
00036 
00038   typedef long TToiAudioConnectionId;
00039   
00043   enum TToiAudioConnectionType
00044   {
00045     
00048     //Value of AUDIO_CONNECTION_TYPE_ANALOG = 0
00049     AUDIO_CONNECTION_TYPE_ANALOG,
00050     
00053     //Value of AUDIO_CONNECTION_TYPE_SPDIF = 1
00054     AUDIO_CONNECTION_TYPE_SPDIF,
00055     
00058     //Value of AUDIO_CONNECTION_TYPE_HDMI = 2
00059     AUDIO_CONNECTION_TYPE_HDMI,
00060     
00064     //Value of AUDIO_CONNECTION_TYPE_DECODER = 3
00065     AUDIO_CONNECTION_TYPE_DECODER,
00066     
00070     //Value of AUDIO_CONNECTION_TYPE_BUFFER = 4
00071     AUDIO_CONNECTION_TYPE_BUFFER,
00072     
00075     //Value of AUDIO_CONNECTION_TYPE_I2S = 5
00076     AUDIO_CONNECTION_TYPE_I2S
00077   };
00081   enum TToiAudioConnectionDirection
00082   {
00083     
00086     //Value of AUDIO_CONNECTION_DIRECTION_INPUT = 0
00087     AUDIO_CONNECTION_DIRECTION_INPUT,
00088     
00091     //Value of AUDIO_CONNECTION_DIRECTION_OUTPUT = 1
00092     AUDIO_CONNECTION_DIRECTION_OUTPUT
00093   };
00096   struct TToiAudioConnectionDescriptor {
00098     IToiAudioOutputService::TToiAudioConnectionId Id;
00100     IToiAudioOutputService::TToiAudioConnectionType Type;
00102     IToiAudioOutputService::TToiAudioConnectionDirection Direction;
00105     unsigned long Index;
00107     boolean IsMutable;
00109     boolean IsAdjustable;
00111     boolean IsLatencyAdjustable;
00112   };
00113   
00115   typedef sequence < TToiAudioConnectionDescriptor > TToiAudioConnectionDescriptorSequence;
00116   
00123   void GetConnections(out TToiAudioConnectionDescriptorSequence connectionList);
00124   
00130   //@ [ReturnAddress(Type=IToiAudioOutputConfiguration)]
00131   
00132   
00133   void GetConfiguration(out string address);
00134   
00153   //@ [ReturnAddress(Type=IToiAudioOutputConfigurationSession)]
00154   //@ [IgnoredApplicationId(Position=1)]
00155   
00156   
00157   void CreateConfigurationSession(in IToiApplicationService::TToiApplicationId applicationId, 
00158         out string address)
00159    raises (TToiInvalidArgumentException, TToiInvalidPreconditionException);
00160   
00180   void SetVolume(in TToiAudioConnectionId connectionId, 
00181         in unsigned long level)
00182    raises (TToiInvalidArgumentException, TToiOperationNotSupportedException);
00183   
00200   void GetVolume(in TToiAudioConnectionId connectionId, 
00201         out unsigned long level)
00202    raises (TToiInvalidArgumentException, TToiOperationNotSupportedException);
00203   
00218   void SetMuteState(in TToiAudioConnectionId connectionId, 
00219         in boolean state)
00220    raises (TToiInvalidArgumentException, TToiOperationNotSupportedException);
00221   
00236   void GetMuteState(in TToiAudioConnectionId connectionId, 
00237         out boolean state)
00238    raises (TToiInvalidArgumentException, TToiOperationNotSupportedException);
00239   
00263   void SetLatency(in TToiAudioConnectionId connectionId, 
00264         in long latency)
00265    raises (TToiInvalidArgumentException, TToiOperationNotSupportedException);
00266   
00283   void GetLatency(in TToiAudioConnectionId connectionId, 
00284         out long latency)
00285    raises (TToiInvalidArgumentException, TToiOperationNotSupportedException);
00286   
00287   
00288   
00301   void RegisterObserver(in IToiApplicationService::TToiApplicationId applicationId,
00302                         in string address)
00303     raises (TToiInvalidArgumentException);
00304   
00313   void ReleaseObserver(in string address)
00314     raises (TToiInvalidArgumentException); 
00315   
00316 };
00317 
00318 #endif