generate_edl_file ()
generate_edl_file ("<TASK_CLASS_NO_PREF>"
[PREFIX "<PREF>"]
[EDL_ENDPOINTS "<ENDPOINT1>" ["<ENDPOINT2>"]...]
[EDL_COMPONENTS "<COMP_INST1>" ["<COMP_INST2>"]...]
[SECURITY "<SECURITY_IFACE>"]
[OUTPUT_DIR "<PATH>"])
Генерирует EDL-файл формальной спецификации компонента решения и сохраняет в CMake-переменную EDL_FILE абсолютный путь к сгенерированному EDL-файлу.
Параметры:
"<TASK_CLASS_NO_PREF>"– имя класса процессов без префикса.Например, если имя класса процессов определено как
test.PictureManagerилиtest.ex.PictureManager, нужно указатьPictureManager.PREFIX "<PREF>"– префикс в имени класса процессов.Например, если имя класса процессов определено как
test.PictureManager, нужно указатьtest, а для имени класса процессовtest.ex.PictureManagerнужно указатьtest.ex. По умолчанию имеет значениеkl. Если указать пустую строку, то параметр примет значение по умолчанию.EDL_ENDPOINTS "<ENDPOINT1>"["<ENDPOINT2>"]... – службы.Значения
ENDPOINT<i> представляют собой конструкции вида <имя службы>:<имя интерфейса>, например:write : secure_logger.Write.EDL_COMPONENTS "<COMP_INST1>"["<COMP_INST2>"]... – экземпляры компонентов.Значения
COMP_INST<i> представляют собой конструкции вида <имя экземпляра компонента>:<имя компонента>, например:controlimpl : ping.Control.SECURITY "<SECURITY_IFACE>"– имя интерфейса безопасности.OUTPUT_DIR"<PATH>"– путь к директории, в которой будет сохранен EDL-файл.Можно указать абсолютный путь или путь относительно директории, соответствующей CMake-переменной
CMAKE_CURRENT_BINARY_DIR. По умолчанию параметр имеет значение CMake-переменнойCMAKE_CURRENT_BINARY_DIR.
Примеры вызовов:
generate_edl_file ("Server"
PREFIX "ping"
EDL_COMPONENTS "controlimpl : ping.Control"
OUTPUT_DIR "../../resources/xdl/ping")
generate_edl_file ("OrchestratorLib"
PREFIX "orchestrator"
EDL_COMPONENTS "sm0 : kl.settings_manager.SM"
EDL_ENDPOINTS
"updateControl : orchestrator.UpdateControl"
"updateTaskControl : orchestrator.UpdateTaskControl"
OUTPUT_DIR "${CMAKE_BINARY_DIR}/_headers_")
Пример использования см. в "Файлы CMakeLists.txt для сборки прикладных программ".