Программная библиотека интерпретатора
Программная библиотека интерпретатора представляет собой библиотеку динамической компоновки (DLL). Вне зависимости от платформы, для которой реализована библиотека (.NET/нативная), библиотека должна экспортировать две функции:
NCT_GetInterface — возвращает в SprutCAM объект, реализующий интерфейс для взаимодействия ядра SprutCAM с программной библиотекой (INCT_Interpreter);
NCT_FreeMemory — освобождает память от всех объектов, созданных самостоятельно или полученных от SprutCAM в процессе работы.
namespace
sample
{
public
class
Interpreter: MarshalByRefObject
{
public
static
INCT_Interpreter NCT_GetInterface()
{
/* реализация */
}
public
static
void
NCT_FreeMemory()
{
/* реализация */
}
}
}
function
NCT_GetInterface: INCT_Interpreter; stdcall;
procedure
NCT_FreeMemory; stdcall;
INCT_Interpreter __stdcall NCT_GetInterface();
void
__stdcall NCT_FreeMemory();
Все типы, необходимые для взаимодействия SprutCAM c программной библиотекой интерпретатора приведены в библиотеке типов, которая включена в дистрибутив SprutCAM (каталог TypeLibraries\*.tlb).
Следующие TLB-файлы содержат описание типов, которые используются при взаимодействии с библиотекой интерпретатора:
STNCInterpreter.tlb — основной перечень типов;
STNCAnalyzer.tlb — типы, используемые для управления анализом текста управляющей программы;
STNCFormers.tlb — типы, используемые для упрощения построения траектории движения инструмента (линейные/круговые перемещения, циклы).
Для подключения библиотеки типов к вашей среде разработки, обратитесь к соответствующему разделу документации среды разработки.
Регистрация библиотеки типов
Для регистрации библиотеки типов в Microsoft Visual Studio попробуйте следующее:
Найдите файл tlbImp.exe на вашем компьютере. Выполните команду "tlbimp.exe tlb-filename". В результате выполнения команды будет создан файл "tlb-filename.dll" (например "STNCAnalyzer. dll"). Добавьте этот dll файл в ваш проект через пункт меню "Add Reference".
На странице Примеры интерпретаторов с исходными кодами приведён пример исходных кодов библиотеки интерпретатора, собранной из них 'dll', и пример файла настроек.