Dante Application Library API
Public Member Functions | List of all members
Audinate::DAL::InstanceConfig Class Reference

Configuration for an DAL instance. More...

#include <InstanceConfig.hpp>

Public Member Functions

void setManufacturerName (const std::string &manufacturerName)
 Set the manufacturer friendly name for the DAL Instance. More...
 
std::string getManufacturerName () const
 Get the manufacturer friendly name for the DAL Instance. More...
 
void setManufacturerVersion (const Version &manufacturerVersion)
 Set the manufacturer product version for the DAL Instance. More...
 
Version getManufacturerVersion () const
 Get the manufacturer product version for the DAL Instance. More...
 
void setModelName (const std::string &modelName)
 Set the model name for the DAL Instance. More...
 
std::string getModelName () const
 Get the model name for the DAL Instance. More...
 
void setModelId (const Id64 &modelId)
 Set the model id for the DAL Instance. More...
 
Id64 getModelId () const
 Get the model id for the DAL Instance. More...
 
void setDefaultName (const std::string &name)
 Set the default device name for the DAL instance. More...
 
std::string getDefaultName () const
 Get the default device name for the DAL instance. More...
 
void setNumTxChannels (unsigned int numTxChannels)
 Set the number of transmit channels for the DAL instance. More...
 
unsigned int getNumTxChannels () const
 Get the number of transmit channels for the DAL instance. More...
 
void setTxChannelName (unsigned int txChannelIndex, const std::string &name)
 Set the default name for the given transmit (tx) channel. More...
 
std::string getTxChannelName (unsigned int txChannelIndex) const
 Get the default name for the given tx channel. More...
 
void setNumRxChannels (unsigned int numRxChannels)
 Set the number of receive channels for the DAL instance. More...
 
unsigned int getNumRxChannels () const
 Get the number of receive channels for the DAL instance. More...
 
void setRxChannelName (unsigned int rxChannelIndex, const std::string &name)
 Set the default name for the given receive (rx) channel. More...
 
std::string getRxChannelName (unsigned int rxChannelIndex) const
 Get the default name for the given receive (rx) channel. More...
 
void setNumTxFlows (unsigned int numTxFlows)
 Override the default number of the transmit flows for the DAL instance. More...
 
unsigned int getNumTxFlows () const
 Get the number of transmit (tx) flows. More...
 
void setNumRxFlows (unsigned int numRxFlows)
 Override the default number of receive flows for the DAL instance. More...
 
unsigned int getNumRxFlows () const
 Get the number of receive (rx) flows. More...
 
void setSamplerate (Samplerate samplerate)
 Set the samplerate for the DAL instance. More...
 
Samplerate getSamplerate () const
 Get the samplerate for the DAL instance. More...
 
void setInterfaceName (InterfaceName name)
 Set the name of the local network interface on which DAL will run. More...
 
InterfaceName getInterfaceName () const
 Get the name of the local network interface on which DAL will run. More...
 
void setInterfaceIndex (InterfaceIndex index)
 Set the index of the local network interface on which DAL will run. More...
 
InterfaceIndex getInterfaceIndex () const
 Get the index of the local network interface on which DAL will run. More...
 
void setProtocolSocketDescriptor (Protocol protocol, SocketDescriptor socketDescriptor)
 Set the socket descriptor (port number or socket path) to be used by DAL for the given protocol. More...
 
SocketDescriptor getProtocolSocketDescriptor (Protocol protocol) const
 Get the socket descriptor (port number or socket path) to be used by DAL for the given protocol. More...
 
void setAudioPortRange (uint16_t range)
 Set the audio port range to be used by DAL instance. More...
 
uint16_t getAudioPortRange () const
 Get the audio port range to be used by DAL instance. More...
 
void setTimeSource (TimeSource timeSource)
 Set the time source for the DAL instance. More...
 
TimeSource getTimeSource () const
 Get the time source for the DAL instance. More...
 
void setProcessPath (std::string processPath)
 Set the local filesystem path where the DAL instance's supporting binaries can be found. More...
 
std::string getProcessPath () const
 Get the local filesystem path where the DAL instance's supporting binaries can be found. More...
 
void setConfigurationPath (std::string configurationPath)
 Set the configuration path used by the DAL instance (including its child processes) for storing configuration data. More...
 
std::string getConfigurationPath () const
 Get the configuration path used by the child processes for storing configuration data. More...
 
void setLoggingPath (std::string loggingPath)
 Set the logging path used by the child processes for storing log information. More...
 
std::string getLoggingPath () const
 Get the logging path used by the child processes for storing log information. More...
 
void setSamplesPerPeriod (unsigned int samplesPerPeriod)
 Set the number of samples between audio period events. More...
 
unsigned int getSamplesPerPeriod () const
 Get the number of samples between audio period events. More...
 
void setPeriodsPerBuffer (unsigned int periodsPerBuffer)
 Set the number of periods to be stored in each channel buffer. More...
 
unsigned int getPeriodsPerBuffer () const
 Get the number of periods for each channel buffer. More...
 
void setEncoding (unsigned int encoding)
 Set the encoding used by the DAL instance. More...
 
unsigned int getEncoding () const
 Get the encoding used by the DAL instance. More...
 
void setPerChannelEncodingFile (const std::string &fileName)
 Set per-channel encoding configuration in DAL. More...
 
std::string getPerChannelEncodingFile () const
 Get the path to per-channel encoding file used by DAL instance. More...
 
void setLogLevel (LogLevel logLevel)
 Set the log level for DAL instance. More...
 
LogLevel getLogLevel () const
 Get the log level for DAL instance. More...
 
void setNetworkLatency (unsigned int networkLatency)
 Set the DAL device network latency
More...
 
unsigned int getNetworkLatency () const
 Get DAL device network latency. More...
 
void setActivationDirectory (const std::string &path)
 Set the activation directory path for the DAL instance. More...
 
std::string getActivationDirectory () const
 Get the activation directory path for the DAL instance. More...
 

Detailed Description

Configuration for an DAL instance.

These fields are generally fixed for the duration of a DAL instance start / stop cycle. DAL devices support the following Dante configuration. Sample rates: 44100, 48000 88200 and 96000 Up to 64x64 channels; default channel names; flow counts Encoding can be either PCM (16, 24, 32) or custom encoding (0x1300 - 0x13FF).

Member Function Documentation

◆ getActivationDirectory()

std::string Audinate::DAL::InstanceConfig::getActivationDirectory ( ) const

Get the activation directory path for the DAL instance.

Returns
the path where the device activation file is stored.

◆ getAudioPortRange()

uint16_t Audinate::DAL::InstanceConfig::getAudioPortRange ( ) const

Get the audio port range to be used by DAL instance.

This should be >= the number of RX flows.

Returns
the port range

◆ getConfigurationPath()

std::string Audinate::DAL::InstanceConfig::getConfigurationPath ( ) const

Get the configuration path used by the child processes for storing configuration data.

Returns
the configuration path used by the child processes for storing configuration data

◆ getDefaultName()

std::string Audinate::DAL::InstanceConfig::getDefaultName ( ) const

Get the default device name for the DAL instance.

Returns
the default name for the DAL instance

◆ getEncoding()

unsigned int Audinate::DAL::InstanceConfig::getEncoding ( ) const

Get the encoding used by the DAL instance.

Returns
the encoding used by the DAL instance. One of 16,24,32 or a custom encoding

◆ getInterfaceIndex()

InterfaceIndex Audinate::DAL::InstanceConfig::getInterfaceIndex ( ) const

Get the index of the local network interface on which DAL will run.

Returns
the index of the local network interface on which DAL will run

◆ getInterfaceName()

InterfaceName Audinate::DAL::InstanceConfig::getInterfaceName ( ) const

Get the name of the local network interface on which DAL will run.

Note
On Windows the interface name can contain UTF8 characters

◆ getLoggingPath()

std::string Audinate::DAL::InstanceConfig::getLoggingPath ( ) const

Get the logging path used by the child processes for storing log information.

Returns
the logging path used by the child processes for storing log information

◆ getLogLevel()

LogLevel Audinate::DAL::InstanceConfig::getLogLevel ( ) const

Get the log level for DAL instance.

Returns
the log level for DAL instance.

◆ getManufacturerName()

std::string Audinate::DAL::InstanceConfig::getManufacturerName ( ) const

Get the manufacturer friendly name for the DAL Instance.

Returns
the instance's manufacturer name

◆ getManufacturerVersion()

Version Audinate::DAL::InstanceConfig::getManufacturerVersion ( ) const

Get the manufacturer product version for the DAL Instance.

Returns
the instance's manufacturer version

◆ getModelId()

Id64 Audinate::DAL::InstanceConfig::getModelId ( ) const

Get the model id for the DAL Instance.

Returns
the instance's model id

◆ getModelName()

std::string Audinate::DAL::InstanceConfig::getModelName ( ) const

Get the model name for the DAL Instance.

Returns
the instance's model name

◆ getNetworkLatency()

unsigned int Audinate::DAL::InstanceConfig::getNetworkLatency ( ) const

Get DAL device network latency.

Returns
the DAL device network latency

◆ getNumRxChannels()

unsigned int Audinate::DAL::InstanceConfig::getNumRxChannels ( ) const

Get the number of receive channels for the DAL instance.

Returns
the number of receive channels for the DAL instance

◆ getNumRxFlows()

unsigned int Audinate::DAL::InstanceConfig::getNumRxFlows ( ) const

Get the number of receive (rx) flows.

Returns
the current number of receive flows

◆ getNumTxChannels()

unsigned int Audinate::DAL::InstanceConfig::getNumTxChannels ( ) const

Get the number of transmit channels for the DAL instance.

Returns
the number of transmit channels for the DAL instance

◆ getNumTxFlows()

unsigned int Audinate::DAL::InstanceConfig::getNumTxFlows ( ) const

Get the number of transmit (tx) flows.

Returns
the current number of transmit flows

◆ getPerChannelEncodingFile()

std::string Audinate::DAL::InstanceConfig::getPerChannelEncodingFile ( ) const

Get the path to per-channel encoding file used by DAL instance.

Note
Contact Audinate Support for more information on this feature.
Returns
the path to per-channel encoding file used by DAL instance.

◆ getPeriodsPerBuffer()

unsigned int Audinate::DAL::InstanceConfig::getPeriodsPerBuffer ( ) const

Get the number of periods for each channel buffer.

Returns
the number of periods for each channel buffer

◆ getProcessPath()

std::string Audinate::DAL::InstanceConfig::getProcessPath ( ) const

Get the local filesystem path where the DAL instance's supporting binaries can be found.

Returns
the path to the DAL support processes

◆ getProtocolSocketDescriptor()

SocketDescriptor Audinate::DAL::InstanceConfig::getProtocolSocketDescriptor ( Protocol  protocol) const

Get the socket descriptor (port number or socket path) to be used by DAL for the given protocol.

Returns
socketDescriptor the socket decriptor, either a port number or socket path

◆ getRxChannelName()

std::string Audinate::DAL::InstanceConfig::getRxChannelName ( unsigned int  rxChannelIndex) const

Get the default name for the given receive (rx) channel.

Parameters
rxChannelIndexthe 0-based index of the rx channel whose name we are obtaining. Must be < numRxChannels()
Returns
the default name for the given rx channel

◆ getSamplerate()

Samplerate Audinate::DAL::InstanceConfig::getSamplerate ( ) const

Get the samplerate for the DAL instance.

Returns
The current samplerate for the DAL instance

◆ getSamplesPerPeriod()

unsigned int Audinate::DAL::InstanceConfig::getSamplesPerPeriod ( ) const

Get the number of samples between audio period events.

Returns
the number of samples between audio period events

◆ getTimeSource()

TimeSource Audinate::DAL::InstanceConfig::getTimeSource ( ) const

Get the time source for the DAL instance.

Returns
the time source for the DAL instance

◆ getTxChannelName()

std::string Audinate::DAL::InstanceConfig::getTxChannelName ( unsigned int  txChannelIndex) const

Get the default name for the given tx channel.

Parameters
txChannelIndexthe 0-based index of the tx channel whose name we are obtaining. Must be < numTxChannels()
Returns
the default name for the given tx channel

◆ setActivationDirectory()

void Audinate::DAL::InstanceConfig::setActivationDirectory ( const std::string &  path)

Set the activation directory path for the DAL instance.

Parameters
paththe path where the device activation file is stored.
Exceptions
DalExceptionif the path does not exist or no read/write access

◆ setAudioPortRange()

void Audinate::DAL::InstanceConfig::setAudioPortRange ( uint16_t  range)

Set the audio port range to be used by DAL instance.

This should be >= the number of RX flows.

Parameters
rangethe port range

◆ setConfigurationPath()

void Audinate::DAL::InstanceConfig::setConfigurationPath ( std::string  configurationPath)

Set the configuration path used by the DAL instance (including its child processes) for storing configuration data.

Path must exist

Parameters
configurationPaththe configuration path to be used be the DAL instance

◆ setDefaultName()

void Audinate::DAL::InstanceConfig::setDefaultName ( const std::string &  name)

Set the default device name for the DAL instance.

Parameters
namethe default name for the DAL instance
Exceptions
DalExceptionif the value is not a valid dante device name

◆ setEncoding()

void Audinate::DAL::InstanceConfig::setEncoding ( unsigned int  encoding)

Set the encoding used by the DAL instance.

Parameters
encodingthe encoding used by the DAL instance. One of 16,24,32 or a custom encoding

◆ setInterfaceIndex()

void Audinate::DAL::InstanceConfig::setInterfaceIndex ( InterfaceIndex  index)

Set the index of the local network interface on which DAL will run.

Overrides any previously configured interface names or indexes.

Parameters
indexthe index of the local network interface on which DAL will run

◆ setInterfaceName()

void Audinate::DAL::InstanceConfig::setInterfaceName ( InterfaceName  name)

Set the name of the local network interface on which DAL will run.

Overrides any previously configured interface names or indexes.

Note
On Windows the interface name can contain UTF8 characters
Parameters
namethe name of the local network interface on which DAL will run

◆ setLoggingPath()

void Audinate::DAL::InstanceConfig::setLoggingPath ( std::string  loggingPath)

Set the logging path used by the child processes for storing log information.

Path must exist

Parameters
loggingPaththe logging path to be used by the DAL instance.

◆ setLogLevel()

void Audinate::DAL::InstanceConfig::setLogLevel ( LogLevel  logLevel)

Set the log level for DAL instance.

Parameters
logLevelthe log level for the DAL instance

◆ setManufacturerName()

void Audinate::DAL::InstanceConfig::setManufacturerName ( const std::string &  manufacturerName)

Set the manufacturer friendly name for the DAL Instance.

Parameters
manufacturerNamethe instance's manufacturer name

◆ setManufacturerVersion()

void Audinate::DAL::InstanceConfig::setManufacturerVersion ( const Version manufacturerVersion)

Set the manufacturer product version for the DAL Instance.

Parameters
manufacturerVersionthe instance's manufacturer version

◆ setModelId()

void Audinate::DAL::InstanceConfig::setModelId ( const Id64 modelId)

Set the model id for the DAL Instance.

Parameters
modelIdthe instance's model id

◆ setModelName()

void Audinate::DAL::InstanceConfig::setModelName ( const std::string &  modelName)

Set the model name for the DAL Instance.

Parameters
modelNamethe instance's model name

◆ setNetworkLatency()

void Audinate::DAL::InstanceConfig::setNetworkLatency ( unsigned int  networkLatency)

Set the DAL device network latency

Parameters
networkLatencythe DAL device latency for the Dante network. Must be between 4 and 10 (ms). Default is 10 (ms)

◆ setNumRxChannels()

void Audinate::DAL::InstanceConfig::setNumRxChannels ( unsigned int  numRxChannels)

Set the number of receive channels for the DAL instance.

Parameters
numRxChannelsthe number of receive channels for the DAL instance

◆ setNumRxFlows()

void Audinate::DAL::InstanceConfig::setNumRxFlows ( unsigned int  numRxFlows)

Override the default number of receive flows for the DAL instance.

Parameters
numRxFlowsthe number of receive flows for the DAL instance

◆ setNumTxChannels()

void Audinate::DAL::InstanceConfig::setNumTxChannels ( unsigned int  numTxChannels)

Set the number of transmit channels for the DAL instance.

Parameters
numTxChannelsnumber of transmit channels for the DAL instance

◆ setNumTxFlows()

void Audinate::DAL::InstanceConfig::setNumTxFlows ( unsigned int  numTxFlows)

Override the default number of the transmit flows for the DAL instance.

Parameters
numTxFlowsthe number of transmit channels for the DAL instance

◆ setPerChannelEncodingFile()

void Audinate::DAL::InstanceConfig::setPerChannelEncodingFile ( const std::string &  fileName)

Set per-channel encoding configuration in DAL.

Note
Contact Audinate Support for more information on this feature.
Parameters
fileNamepath to file which has OEM per-channel encoding configuration.

◆ setPeriodsPerBuffer()

void Audinate::DAL::InstanceConfig::setPeriodsPerBuffer ( unsigned int  periodsPerBuffer)

Set the number of periods to be stored in each channel buffer.

Parameters
periodsPerBufferthe number of periods in each channel buffer

◆ setProcessPath()

void Audinate::DAL::InstanceConfig::setProcessPath ( std::string  processPath)

Set the local filesystem path where the DAL instance's supporting binaries can be found.

Parameters
processPaththe path to the DAL support processes

◆ setProtocolSocketDescriptor()

void Audinate::DAL::InstanceConfig::setProtocolSocketDescriptor ( Protocol  protocol,
SocketDescriptor  socketDescriptor 
)

Set the socket descriptor (port number or socket path) to be used by DAL for the given protocol.

Parameters
protocolthe protocol
socketDescriptorthe socket decriptor, either a port number or socket path

◆ setRxChannelName()

void Audinate::DAL::InstanceConfig::setRxChannelName ( unsigned int  rxChannelIndex,
const std::string &  name 
)

Set the default name for the given receive (rx) channel.

Parameters
rxChannelIndexthe 0-based index of the channel whose name is to be set. Must be < numRxChannels()
namethe name for the channel.
Note
Receive channels names can support UTF8 and be up to 31 bytes long but may not include '@', '.' or '+'.

◆ setSamplerate()

void Audinate::DAL::InstanceConfig::setSamplerate ( Samplerate  samplerate)

Set the samplerate for the DAL instance.

The supported samplerates are 44100, 48000, 88200 and 96000. The default samplerate is 48000. A DalException will be thrown if the DAL instance is started with an invalid samplerate.

Parameters
sampleratethe samplerate for the DAL instance

◆ setSamplesPerPeriod()

void Audinate::DAL::InstanceConfig::setSamplesPerPeriod ( unsigned int  samplesPerPeriod)

Set the number of samples between audio period events.

Parameters
samplesPerPeriodthe number of samples between audio period events

◆ setTimeSource()

void Audinate::DAL::InstanceConfig::setTimeSource ( TimeSource  timeSource)

Set the time source for the DAL instance.

Parameters
timeSourcethe time source for the DAL instance

◆ setTxChannelName()

void Audinate::DAL::InstanceConfig::setTxChannelName ( unsigned int  txChannelIndex,
const std::string &  name 
)

Set the default name for the given transmit (tx) channel.

Parameters
txChannelIndexthe 0-based index of the channel whose name is to be set. Must be < numTxChannels()
namethe name for the channel.
Note
Transmit channels names can support UTF8 and be up to 31 bytes long but may not include '@', '.' or '+'.

The documentation for this class was generated from the following file: