Библиотека core
предоставляет поддержку бэкендов. Библиотека core
предоставляет классы, необходимые для взаимодействия с бэкендом и выполнения прикладных задач.
Таблица ниже содержит описание компонентов библиотеки.
Компоненты библиотеки core
Компонент |
Описание |
---|---|
Базовый класс для конкретных реализаций бэкендов. |
|
Структура, определяющая набор базовых данных. |
|
Класс, реализующий генератор уникальных идентификаторов. |
|
Базовый класс устройств. |
|
Класс, реализующий интерфейс к шине сообщений. |
|
Класс, реализующий интерфейс к точке подключения к шине сообщений. |
|
Шаблонный класс, реализующий контейнер нейронов одной модели. |
|
Шаблонный класс, реализующий контейнер синапсов одного типа. |
|
Класс, реализующий подписку на сообщения. |
|
Класс, реализующий интерфейс к словарю тегов. |
|
Класс, определяющий уникальные идентификаторы. |
|
Функция, реализующая хеширование UID. |
|
Пространство имен, содержащее интерфейсы к сообщениям. |
|
Пространство имен, содержащее названия и типы значений известных тегов. |
На рисунке ниже представлена схема взаимодействия компонентов библиотеки.
В Kaspersky Neuromorphic Platform структура BaseData
содержит базовую информацию об объекте и включает в себя UID
и TagMap
. Структура BaseData
используется в классах Projection
, Population
и Backend
, соответственно каждый из них обладает идентификатором UID
и набором тегов и их значениями TagMap
.
Классы Population
и Projection
принимают и отправляют сообщения, реализованные в классах пространства имен messaging
. Сообщения содержат в своем заголовке UID отправителя.
Класс Backend
содержит классы Device
и MessageBus
. Шина сообщений MessageBus
создает точки подключения MessageEndpoint
и взаимодействует с ними в процессе обмена сообщениями. Каждая точка подключения MessageEndpoint
содержит контейнер подписок класса Subscription
.
Схема взаимодействия компонентов библиотеки core