DomainStartSimulation

Материал из CAMaaS preliminary wiki
Перейти к навигации Перейти к поиску

Запрос управляющей системе на запуск моделирования для предоставленной модели среды.

Структура запроса[1]

Имя поля Размер, байт Смысл
RequestId 4 Беззнаковый целочисленный идентификатор запроса, значение которого должно быть равно DomainStartSimulation (т.е. 0).
control_address Размер машинного слова[2] или переменный[3] Адрес экземпляра подсистемы управления. Для внутрипроцессного сервера - адрес в памяти. Для удаленного сервера - 4-х байтовый размер доменного имени сервера подсистемы управления либо строкового выражения его IP адреса, затем само имя (адрес), затем целочисленный двухбайтовый порт.
Геометрическая модель среды поля
Имя модели
model_name_size 4 Размер имени модели в байтах
model_name model_name_size Имя модели в UTF-8.


Запакованные параметры пространства.
metric_id 4 Беззнаковое целое, задающее единицу измерения длины. Может принимать одно из следующих значений.
Символическое имя Целочисленное значение Единица измерения
CHU_MILLIMETERS 0 Миллиметры. Не поддерживается.
CHU_METERS 1 Метры. Единственная поддерживаемая единица.
CHU_KILOMETERS 2 Километры. Не поддерживается.
CHU_INVALID_METRIC 3 Служебный идентификатор для обозначения минимальной границы неверных идентификаторов метрик. Не поддерживается.
Запакованный размер.
dimensions 4 Беззнаковое целое, которое задает число измерений, в которых определен размер.
размеры 8 dimensions Последовательно заданные размеры во всех dimensions измерениях. Размеры в измерениях dimensions полагаются бесконечными.
Серия параметров предметной области пространства[4].


domain_data_size 4 Байтовый размер данных предметной области для экземпляра domain_name подсистемы предметной области.
domain_params domain_data_size Параметры предметной области для экземпляра domain_name подсистемы предметной области. Отсутствуют при domain_name_size = domain_data_size = 0.
...
Элементы геометрической модели
object_count 4 Число всех объектов модели
Последовательность object_count запакованных объектов, каждый из которых, представлен ниже
Общие параметры для всех классов объектов
object_name_size 4 Беззнаковое целое число байт в имени объекта модели. [5]
object_name object_name_size UTF-8 строка с именем объекта модели. [5]
Серия параметров предметной области объекта[6].


domain_data_size 4 Байтовый размер данных предметной области для экземпляра domain_name подсистемы предметной области.
domain_params domain_data_size Параметры предметной области для экземпляра domain_name подсистемы предметной области. Отсутствуют при domain_name_size = domain_data_size = 0.
...
typeid 4 Беззнаковый целочисленный идентификатор класса создаваемого объекта.
Символическое имя Значение Описание
ObjectPoly 0 Идентификатор полигонального объекта.
ObjectSource 1 Идентификатор источника.
ObjectPlain 2 Идентификатор плоскости вывода результатов.


Для полигонального объекта
faces_count 4 Число полигонов, составляющих создаваемый объект.
Полигон 1
vertex_count 4 Беззнаковое целое число вершин, составляющих полигон.
Вершина 1
dimensions 4 Беззнаковое целое, которое задает число измерений, в которых определены ненулевые координаты точки.
координаты 8 dimensions Последовательно заданные координаты точки.
...
Вершина vertex_count.
dimensions 4 Беззнаковое целое, которое задает число измерений, в которых определены ненулевые координаты точки.
координаты 8 dimensions Последовательно заданные координаты точки.
Серия параметров предметной области полигона[7]


domain_data_size 4 Байтовый размер данных предметной области для экземпляра domain_name подсистемы предметной области.
domain_params domain_data_size Параметры предметной области для экземпляра domain_name подсистемы предметной области. Отсутствуют при domain_name_size = domain_data_size = 0.
...
...
Полигон faces_count
vertex_count 4 Беззнаковое целое число вершин, составляющих полигон.
Вершина 1
dimensions 4 Беззнаковое целое, которое задает число измерений, в которых определены ненулевые координаты точки.
координаты 8 dimensions Последовательно заданные координаты точки.
...
Вершина vertex_count.
dimensions 4 Беззнаковое целое, которое задает число измерений, в которых определены ненулевые координаты точки.
координаты 8 dimensions Последовательно заданные координаты точки.
Серия параметров предметной области полигона[7]


domain_data_size 4 Байтовый размер данных предметной области для экземпляра domain_name подсистемы предметной области.
domain_params domain_data_size Параметры предметной области для экземпляра domain_name подсистемы предметной области. Отсутствуют при domain_name_size = domain_data_size = 0.
...
Для объекта-источника
Позиция источника поля
dimensions 4 Беззнаковое целое, которое задает число измерений, в которых определены ненулевые координаты точки.
координаты 8 dimensions Последовательно заданные координаты точки.
Ненулевые некомпланарные вектора направлений для каждого из измерений
число_векторов 4 Количество векторов, значение должно быть не меньше количества измерений, в которых определены вектора источника, минус один.
Вектора направлений источника поля
dimensions 4 Беззнаковое целое, которое задает число измерений, в которых определены ненулевые координаты точки.
координаты 8 dimensions Последовательно заданные координаты точки.
...
Для секущей плоскости вывода результатов
Позиция точки на плоскости
dimensions 4 Беззнаковое целое, которое задает число измерений, в которых определены ненулевые координаты точки.
координаты 8 dimensions Последовательно заданные координаты точки.
Направляющие вектора плоскости
число_векторов 4 Число векторов, задающих положение плоскости.
dimensions 4 Беззнаковое целое, которое задает число измерений, в которых определены ненулевые координаты точки.
координаты 8 dimensions Последовательно заданные координаты точки.
...
Назначенное подсистемой управления имя создаваемого моделирующего процесса.
process_name_size 4 Беззнаковое целое число байт в имени процесса
process_name process_name_size UTF-8 строка с именем процесса.

Структура ответа[8]

Ответ отсутствует, параметр pOut игнорируется функцией DomainEntryPoint.

Другие запросы


Символическое имя Целочисленное значение Действие
DomainStartSimulation 0 запуск моделирования
DomainGetProcessStatus 1 получение идентификатора состояния процесса моделирования
DomainGetSimulationResultsSize 2 получение размера результатов моделирования
DomainGetSimulationResults 3 получение результатов моделирования
DomainCloseSimulation 4 закрытие процесса моделирования и освобождение соответствующих ресурсов в предметной области; если запущен процесс моделирования, то его остановка.


Примечания

  1. Наполнение буфера pRequest при вызове функции DomainEntryPoint.
  2. Для подсистемы предметной области, реализованной как внутрипроцессный сервер
  3. Для подсистемы предметной области, реализованной как удаленный узел
  4. В предметной области "Архитектурная акустика" параметры доменной области пространства - число с плавающей точкой двойной точности (8 байт), задающее коэффициент линейного затухания звукового сигнала. Поэтому для архитектурной акустики domain_size должен быть равен 8, а domain_params должен содержать бинарного представления коэффициента затухания. В предметной области "Интеграл" параметры доменной области - пара пределов интегрирования (сначала - меньший, затем - больший), каждый из которых является 8-байтовым числом с плавающей точкой.
  5. 5,0 5,1 При создании модели имя объекта не должно задаваться пользователем, т.е. object_name_size должно быть равно 0, а данные поля object_name не должны включаться в параметры запроса на создание объекта.
  6. Запакованные параметры предметной области объектов-элементов модели среды моделируемого физического поля.
    Для предметной области "Архитектурная акустика".
    • Для полигонального объекта общие предметные параметры полигонального объекта не задаются. Вместо этого задаются параметры каждой отдельной поверхности (полигона), составляющей полигональный объект. Данные представлены в описании класса CFace.
    • Для источника поля общие параметры предметной области, связанные с объектом, представлены в описании класса CPrimarySource.
    • Для плоскости вывода результатов параметры предметной области не задаются.
    Для предметной области "Интеграл".
    • Параметры предметной области, связанные с объектом любого класса, а также параметры, связанные с поверхностями полигонального объекта, не задаются.
  7. 7,0 7,1 Запакованные параметры предметной области объектов-элементов модели среды моделируемого физического поля.
    Для предметной области "Архитектурная акустика".
    • Для полигонального объекта общие предметные параметры полигонального объекта не задаются. Вместо этого задаются параметры каждой отдельной поверхности (полигона), составляющей полигональный объект. Данные представлены в описании класса CFace.
    • Для источника поля общие параметры предметной области, связанные с объектом, представлены в описании класса CPrimarySource.
    • Для плоскости вывода результатов параметры предметной области не задаются.
    Для предметной области "Интеграл".
    • Параметры предметной области, связанные с объектом любого класса, а также параметры, связанные с поверхностями полигонального объекта, не задаются.
  8. Наполнение буфера pOut при вызове функции DomainEntryPoint.