MLGetAvailableLinkProtocolNames (C Function)

MLGetAvailableLinkProtocolNames has been replaced by WSGetAvailableLinkProtocolNames.

int MLGetAvailableLinkProtocolNames( MLENV env , char *** p , int * l )

gets a list of strings containing the names of the install link protocols from the MathLink environment env storing the strings in p and the length of the list of names in l.

Details

  • MathLink currently supports the following link protocol names: SharedMemory, TCPIP, IntraProcess, Pipes, FileMap, and TCP.
  • Not all link protocols are available on all platforms.
  • PlatformProtocol
    LinuxSharedMemory, TCPIP, Intraprocess, Pipes, TCP
    WindowsSharedMemory, TCPIP, IntraProcess, FileMap, TCP
    OS XSharedMemory, TCPIP, IntraProcess, Pipes, TCP
  • MLGetAvailableLinkProtocolNames() allocates memory to store the list of protocol names that must be released by calling MLReleaseLinkProtocolNames(). If MLGetAvailableLinkProtocolNames() returns an error, do not call MLReleaseLinkProtocolNames() on the contents of p.
  • MLGetAvailableLinkProtocolNames() returns 0 on success and a nonzero error code on failure.
  • MLGetAvailableLinkProtocolNames() is declared in the MathLink header file mathlink.h.

Examples

Basic Examples  (1)

#include "mathlink.h"

int main()
{
    MLENV env;
    char **protocolNames;
    int length;
    int apiResult;

    env = MLInitialize((MLEnvironmentParameter)0);
    if(env == (MLENV)0)
    { /* Unable to create MathLink environment */ }

    apiResult = MLGetAvailableLinkProtocolNames(env, &protocolNames, &length);
    if(apiResult != 0)
    { /* Unable to retrieve link protocol names */ }

    /* ... */

    MLReleaseLinkProtocolNames(env, protocolNames, length);

    MLDeinitialize(env);
}