Isomet Modular Synthesiser (iMS) API
v1.4.2
iMS API
|
Controls the behaviour of a Connection Module during its discovery process. More...
#include <include\ConnectionList.h>
Public Member Functions | |
ConnectionConfig (bool inc=true, std::list< std::string > mask=std::list< std::string >()) | |
Public Attributes | |
bool | IncludeInScan |
std::list< std::string > | PortMask |
Controls the behaviour of a Connection Module during its discovery process.
The ConnectionList class maintains an internal map of ConnectionConfig configuration structs, one per module included in the ConnectionList.
Each Connection Module has a discovery mechanism which is invoked when the ConnectionList performs a scan. Before calling the discovery function, the ConnectionList first checks the ConnectionConfigMap for details about how the discovery function for that module should be configured. Firstly, it checks to see if the module should be included in the scan, and only calls the discovery function if this is set to true. Secondly, a user supplied list of strings is passed to the discovery functions which, if non-empty, acts as a mask, only permitting discovery on interface ports that can be matched to an entry in the list. If the list is empty, all interface ports are queried.
iMS::ConnectionList::ConnectionConfig::ConnectionConfig | ( | bool | inc = true , |
std::list< std::string > | mask = std::list< std::string >() |
||
) |
Constructor for ConnectionConfig
Default Constructor enables scan on all available interface ports
bool iMS::ConnectionList::ConnectionConfig::IncludeInScan |
If true, the Connection Module associated with the ConnectionConfig is enabled for iMS discovery
std::list<std::string> iMS::ConnectionList::ConnectionConfig::PortMask |
A list of interfaces (ports) that may be queried. For example, an Ethernet Connection Module might include a reference to a host static IP address that is known to reside on a network containing iMS devices (e.g. "192.168.1.100"). An application might know that it is expecting to find an iMS connected to Windows serial port COM8 so it would add "COM8" to the PortMask. If the PortMask is empty, the module will iterate through every interface port that is available to it.