mclRunMain

Механизм для создания идентичного кода обертки через все платформы

Резюме

typedef int (*mclMainFcnType)(int, const char **);

int mclRunMain(mclMainFcnType run_main,
               int argc,
               const char **argv)

Описание

Когда необходимо предоставить код обертки при создавании приложения, которое использует C, или C++ совместно использовал библиотеку, созданную MATLAB® Compiler SDK™, mclRunMain включает вам с механизмом для создания идентичного кода обертки через все среды платформы MATLAB Compiler SDK.

mclRunMain особенно полезно в средах OS X Macintosh, где цикл запуска должен быть создан для правильной операции MATLAB Runtime.

Когда Mac OS X запускается, цикл запускается, если mclInitializeApplication задает -nojvm или -nodisplay опция, создавая цикл запуска является прямым процессом. В противном случае необходимо создать среду Какао. Среды Какао состоят из библиотек, API и MATLAB Runtime, которые формируют слой разработки для всего Mac OS X.

Обычно на функцию указывает run_main возвращается с указателем (возвращаемое значение) к коду, который вызвал его. При использовании Какао на Macintosh, однако, когда на функцию указывает run_main возвращается, выход вызовов MATLAB Runtime, прежде чем возвращаемое значение сможет быть получено приложением, из-за неспособности базового кода получить контроль, когда Какао закрывается.

Внимание

Вы не должны использовать mclRunMain если ваше приложение поднимает свою собственную полную графическую среду.

Примечание

В средах не-Macintosh, mclRunMain действия как обертка и не выполняют значительной обработки.

Параметры

run_main

Имя функции, чтобы выполниться после кода настройки MATLAB Runtime.

argc

Количество аргументов передается run_main функция. Обычно, argc получен приложением в его main функция.

argv

Указатель на массив символьных указателей. Обычно, argv получен приложением в его main функция.

Примеры

Вызов с помощью этой базовой структуры:

int returncode = 0;
mclInitializeApplication(NULL,0); 
returncode = mclRunMain((mclmainFcn)
                   my_main_function,0,NULL);

Смотрите также

Представленный в R2010b