CHAI SDK  Version 1.3
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
CPNS::IAudioLanManager Class Referenceabstract

This is the AudioLan dedicated audio manager's interface. More...

+ Inheritance diagram for CPNS::IAudioLanManager:
+ Collaboration diagram for CPNS::IAudioLanManager:

Public Member Functions

virtual void SetSamplingRate (CPNS::Enums::AudioSamplingRates const sr)=0
 Set the sampling rate. More...
 
virtual
CPNS::Enums::AudioSamplingRates 
GetSamplingRate ()=0
 Get the current sampling rate. More...
 
virtual CPNS::Enums::Errors AddUnmanagedSourceStream (CPNS::char8 const *const utf8StreamName, CPNS::Enums::AudioSamplingRates const sr, CPNS::uint16 const wChannelCount)=0
 This can be used to add non-CopperLan source streams to the available source streams. More...
 
virtual CPNS::Enums::Errors RemoveUnmanagedSourceStream (CPNS::char8 const *const utf8StreamName)=0
 This can be used to remove non-CopperLan source streams to the available source streams. More...
 
virtual CPNS::Enums::Errors SetDecoderCount (CPNS::uint16 const wCount)=0
 Set the number of decoders. More...
 
virtual CPNS::uint16 GetDecoderCount ()=0
 Get the number of decoders. More...
 
virtual CPNS::Enums::Errors AssignDecoder (CPNS::uint16 const wDecoderIndex, CPNS::char8 const *const utf8SourceStreamName)=0
 Assign a decoder to a source stream This is used to filter the list of available source streams. More...
 
virtual CPNS::Enums::Errors GetDecoderAssignment (CPNS::uint16 const wDecoderIndex, CPNS::UTF8String &strStreamName)=0
 Get a decoder current assignment. More...
 
virtual ISelectorItemListGetPossibleSourceStreamList ()=0
 Get a Selector List object providing the dynamic list of currently available source streams issued from source audio devices having compatible audio settings. More...
 
virtual CPNS::ISelectorItemListAddAvailableSourceChannelList ()=0
 Add a source channel list. More...
 
virtual CPNS::Enums::Errors UpdateAvailableSourceChannelList (CPNS::ISelectorItemList *const pSourceChannelList, CPNS::char8 const *const utf8SourceStreamName)=0
 Update the source channel list for the specified source stream name. More...
 
virtual CPNS::boolean CanReceiveSourceStream (CPNS::char8 const *const utf8SourceStreamName)=0
 Check if the stream name is present in the possible source stream list. More...
 
- Public Member Functions inherited from CPNS::IObject
virtual CPNS::ICHAIGetCHAI ()=0
 Get a pointer to the CHAI hosting this object. More...
 
virtual void RegisterObjectNotificationHandler (CPNS::IObject_NotificationHandler *const pHandler)=0
 Register an Object's notification handler. More...
 
virtual void UnregisterObjectNotificationHandler (CPNS::IObject_NotificationHandler *const pHandler)=0
 Unregister an Object's notification handler. More...
 
virtual CPNS::Enums::ObjectTypes GetObjectType () const =0
 Get the object type. More...
 
virtual CPNS::uint32 GetHandle () const =0
 Get a unique handle to the object if this object is handled by the trashcan. More...
 
virtual void SetUserDataPtr (void const *const pData)=0
 Set a custom user ptr data. More...
 
virtual void * GetUserDataPtr () const =0
 Get custom user ptr data. More...
 
virtual void SetUserDataUInt32 (const CPNS::uint32 dwData)=0
 Set a custom user uint32 data. More...
 
virtual CPNS::uint32 GetUserDataUInt32 () const =0
 Get custom user uint32 data. More...
 

Detailed Description

This is the AudioLan dedicated audio manager's interface.

Member Function Documentation

virtual CPNS::ISelectorItemList* CPNS::IAudioLanManager::AddAvailableSourceChannelList ( )
pure virtual

Add a source channel list.

The audio manager creates a new empty list that can be updated later using UpdateAvailableSourceChannelList

virtual CPNS::Enums::Errors CPNS::IAudioLanManager::AddUnmanagedSourceStream ( CPNS::char8 const *const  utf8StreamName,
CPNS::Enums::AudioSamplingRates const  sr,
CPNS::uint16 const  wChannelCount 
)
pure virtual

This can be used to add non-CopperLan source streams to the available source streams.

All items added by this method are stored, even they are not matching the AudioLan Manager's current sampling rate.

virtual CPNS::Enums::Errors CPNS::IAudioLanManager::AssignDecoder ( CPNS::uint16 const  wDecoderIndex,
CPNS::char8 const *const  utf8SourceStreamName 
)
pure virtual

Assign a decoder to a source stream This is used to filter the list of available source streams.

Parameters
[in]utf8SourceStreamNameThe source stream name, or NULL to unassign the decoder.
virtual CPNS::boolean CPNS::IAudioLanManager::CanReceiveSourceStream ( CPNS::char8 const *const  utf8SourceStreamName)
pure virtual

Check if the stream name is present in the possible source stream list.

virtual CPNS::Enums::Errors CPNS::IAudioLanManager::GetDecoderAssignment ( CPNS::uint16 const  wDecoderIndex,
CPNS::UTF8String strStreamName 
)
pure virtual

Get a decoder current assignment.

Parameters
[out]strStreamNameThe current source stream name, or empty string if the decoder is not assigned.
virtual CPNS::uint16 CPNS::IAudioLanManager::GetDecoderCount ( )
pure virtual

Get the number of decoders.

virtual ISelectorItemList* CPNS::IAudioLanManager::GetPossibleSourceStreamList ( )
pure virtual

Get a Selector List object providing the dynamic list of currently available source streams issued from source audio devices having compatible audio settings.

Note: The list content is limited to the actually used if all the decoders are assigned. An Audio Local Device attached to this AudioLan Manager is automatically using this list to feed its CPNS::Enums::SEL_AudioSourceStream parameters.

Warning
the list object lifetime is depending on the AudioLanManager. The list is destroyed during this object destruction.
Returns
a ready-to-use selector item list
virtual CPNS::Enums::AudioSamplingRates CPNS::IAudioLanManager::GetSamplingRate ( )
pure virtual

Get the current sampling rate.

virtual CPNS::Enums::Errors CPNS::IAudioLanManager::RemoveUnmanagedSourceStream ( CPNS::char8 const *const  utf8StreamName)
pure virtual

This can be used to remove non-CopperLan source streams to the available source streams.

virtual CPNS::Enums::Errors CPNS::IAudioLanManager::SetDecoderCount ( CPNS::uint16 const  wCount)
pure virtual

Set the number of decoders.

This is used to filter the list of available source streams.

virtual void CPNS::IAudioLanManager::SetSamplingRate ( CPNS::Enums::AudioSamplingRates const  sr)
pure virtual

Set the sampling rate.

This is used to filter the list of available source streams.

virtual CPNS::Enums::Errors CPNS::IAudioLanManager::UpdateAvailableSourceChannelList ( CPNS::ISelectorItemList *const  pSourceChannelList,
CPNS::char8 const *const  utf8SourceStreamName 
)
pure virtual

Update the source channel list for the specified source stream name.