Ismin

  !   Данная информация предназначена только только для IT-специалистов по системной интеграции модулей БИОСОФТ-М. (см. Руководства пользователя к программным продуктам)

Ismin работает как режим компиляции для всех платформ Islib и как адаптер синтаксиса для кода прошивок.

Платформы

Сейчас определены

IslibC51generic 32-bit firmware

Includes

Библиотека состоит только из файлов в Islib/Packages/Ismin/* и не имеет зависимостей от юнипака при подключении к компиляции прошивки.

В каждый хидер портабельных исходников включается:

#include "opp/univ/Islib/Packages/Ismin/iface/Islib_Ismin.h"

Включения других файлов в проект при компиляции прошивки не требуется.

В Islib-проект тоже ничего дополнительного включать не нужно.

Расширения

Расширение портабельных исходных файлов .cpp для лучшей совместимости с Islib-компиляцией. Если компилятору прошивки не нравится это, то для каждого CFoo.cppсоздается CFoo.c в проекте прошивки и в нем делается редирект:

// CFoo.c
 
#include "opp/xxx/Packages/yyy/impl/CFoo.cpp"
Пути #include

Подразумевается заданным путь INCLUDE. Для Keil это INCDIR(c:\xv) или в IDE.

Каждый портабельный исходный файл оформляется настролько близко к обычному PRD generic классу на сколько возможно. Но без декларации С++ класса.

// CFoo.h
//+VL: 2016-22-33
 
//#pragma once
#ifndef CFoo_h
#define CFoo_h
 
#include "opp/univ/Islib/Packages/Ismin/iface/Islib_Ismin.h"
 
//
// CFoo - demo template
//
 
// Constants
 
    struct ...
 
    #define ...
 
// Attributes
 
    int Get....();
 
// Operations
 
    // One-time opener
    void CFoo_Init(
            ...);
 
    // Cleanup
    void CFoo_Close(
            ...);
 
    // Process received raw data
    int CFoo_Calc(
            ...);
 
#endif // CLogminMain_h
// CFoo.cpp
//+VL: 2016-22-33
 
//#include "Packages/_main_/CMyProject.h"
#include "CFoo.h"
#include "CBar.h"
 
void CFoo_Xxxx()
{
    ...
}

Эти исходники располагаются в Project/Packages/Foo/impl как обычно. Возможно потребуется редиректный .c файл в проекте прошивки как сказано в Подключение к Ismin.

Типы
Массивы
Условная компиляция

Эта категория в данный момент пуста.