iPlug2 - C++ Audio Plug-in Framework
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
IOConfig Struct Reference

An IOConfig is used to store bus info for each input/output configuration defined in the channel io string. More...

#include <IPlugStructs.h>

Public Member Functions

void AddBusInfo (ERoute direction, int NChans)
 Adds bus information for this IOConfig. More...
 
const IBusInfoGetBusInfo (ERoute direction, int index) const
 Gets bus information for a specific bus. More...
 
int NChansOnBusSAFE (ERoute direction, int index) const
 Gets the number of channels on a bus with bounds checking. More...
 
int NBuses (ERoute direction) const
 Gets the number of buses for a given direction. More...
 
int GetTotalNChannels (ERoute direction) const
 Get the total number of channels across all buses for this IOConfig. More...
 
bool ContainsWildcard (ERoute direction) const
 Checks if any bus in the given direction has a wildcard channel count. More...
 

Public Attributes

WDL_PtrList< IBusInfomBusInfo [2]
 

Detailed Description

An IOConfig is used to store bus info for each input/output configuration defined in the channel io string.

Definition at line 503 of file IPlugStructs.h.

Constructor & Destructor Documentation

◆ ~IOConfig()

IOConfig::~IOConfig ( )
inline

Definition at line 507 of file IPlugStructs.h.

Member Function Documentation

◆ AddBusInfo()

void IOConfig::AddBusInfo ( ERoute  direction,
int  NChans 
)
inline

Adds bus information for this IOConfig.

Parameters
directionThe signal direction (kInput or kOutput)
NChansThe number of channels on this bus

Definition at line 516 of file IPlugStructs.h.

◆ ContainsWildcard()

bool IOConfig::ContainsWildcard ( ERoute  direction) const
inline

Checks if any bus in the given direction has a wildcard channel count.

Parameters
directionThe signal direction (kInput or kOutput)
Returns
true if any bus has a wildcard (negative) channel count
false if all buses have explicit channel counts

Definition at line 570 of file IPlugStructs.h.

◆ GetBusInfo()

const IBusInfo * IOConfig::GetBusInfo ( ERoute  direction,
int  index 
) const
inline

Gets bus information for a specific bus.

Parameters
directionThe signal direction (kInput or kOutput)
indexThe bus index
Returns
Pointer to the bus information

Definition at line 525 of file IPlugStructs.h.

Referenced by IPlugProcessor::GetIOConfigWithChanCounts().

◆ GetTotalNChannels()

int IOConfig::GetTotalNChannels ( ERoute  direction) const
inline

Get the total number of channels across all buses for this IOConfig.

Parameters
directionThe signal direction (kInput or kOutput)
Returns
The total number of channels across all buses in the given direction

Definition at line 556 of file IPlugStructs.h.

Referenced by IPlugProcessor::LegalIO().

◆ NBuses()

int IOConfig::NBuses ( ERoute  direction) const
inline

Gets the number of buses for a given direction.

Parameters
directionThe signal direction (kInput or kOutput)
Returns
The number of buses

Definition at line 548 of file IPlugStructs.h.

Referenced by IPlugProcessor::GetIOConfigWithChanCounts(), and IPlugProcessor::MaxNBuses().

◆ NChansOnBusSAFE()

int IOConfig::NChansOnBusSAFE ( ERoute  direction,
int  index 
) const
inline

Gets the number of channels on a bus with bounds checking.

Parameters
directionThe signal direction (kInput or kOutput)
indexThe bus index
Returns
The number of channels on the bus, or 0 if index is out of bounds

Definition at line 535 of file IPlugStructs.h.

Referenced by IPlugProcessor::MaxNChannelsForBus(), and IPlugProcessor::ParseChannelIOStr().

Member Data Documentation

◆ mBusInfo

WDL_PtrList<IBusInfo> IOConfig::mBusInfo[2]

Definition at line 505 of file IPlugStructs.h.


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