main page content

This commit is contained in:
Aleksey Chichenkov 2018-10-01 10:40:56 +03:00
parent 12c4995428
commit 27e785d1da
11 changed files with 213 additions and 54 deletions

View file

@ -3,4 +3,4 @@
* @group library
* @namespace v2
*/
var v2 = function () {};
var v2 = function v2() {};

View file

@ -1,13 +1,122 @@
/**
* AAAAA
* Генератор для главной страницы документации.
* Что тут да как?
*
* AAAAA
* Новый блок должен состоять из тагов:
* name - где значением будет число. Все блоки сортируются по имени.
* поэтому что бы вставить блок между 01 и 02, нужно написать 01.0
*
* AAAAA
*
* @name sdfasdf
* mainpage - таг который указывает, что этот блок будет использован для документации
* memberof - указывает предка для блока. Но в случае документации это используется,
* что бы эти блоки не попали в глобальное пространство.
*/
/**
* ### Документация по работе с GUI версии 2.9.1
* @name 01
* @mainpage
* @memberof mainpage
* @example
* dsfadfasdf
*/
*
*/
/**
* ### Содержание:
* - #### Виджеты
* - #### Датасорсы
* - #### Сигнал-Слоты
* - #### Грид
* - #### Графики
* - #### {@link ProvidersSystem Система провайдеров}:
* - - #### {@link Trees}
* - - #### {@link Models}
* - - #### {@link Publishers}
* - - #### {@link ModelTypes}
* - - #### {@link GroupTypes}
* - #### Библиотеки:
* - - #### {@link std} - реализация сишной библиотеки на js.
* - - #### {@link v2} - сериализуемые типы, которыми можно обмениваться с ядром.
* - - #### {@link tools} - разного рода хелперы и инструменты.
*
* @name 02
* @mainpage
* @memberof mainpage
*
*/
/**
* ### Система провайдеров.
*
* <br>
*
* Провайдеры это механизм, который осуществляет общий доступ к любой доступной информации, которую можно получить от ядра
*
* Проще говоря, они моделируют объекты, которые существют в ядре и поддерживаются в акутальном состоянии,
*
* до тех пор, пока кто-либо ими пользуются. Как только истекает таймер жизни объекта, он вычищается.
*
* <br>
* Провайдеры запускаются перед стартом системы _**js/main.js**_ и определены в глобальной области видимости: **window.ps**.
*
* Как только происходит хендшейк и логин пользователя, начинает загружаться GUI.
*
* <br>
* #### Как пользоваться провайдерами?
*
* Внутри провайдеров проинициализирован объект {@link Platform} в переменной **ps.pl**.
*
* По-сути он моделирует платформу со стороны сервера и содержит в себе менеджеры, через которые можно связываться с ядром.
*
* <br>
* Доступные менеджеры у платформы:
* - {@link GroupTypes} - Менеджер, который позволяет получить данные по типу компонента, определен как **ps.pl.gtm**
* - {@link ModelTypes} - Менеджер, который позволяет узнать о содержимом модели **ps.pl.mtm**
* - {@link Models} - Менеджер, для доступа к устройствам, определен как **ps.pl.mm**
* - {@link Trees} - Менеджер, для доступа к деревьям, определен как **ps.pl.tm**
*
*
*
* <br><br>
* ### {@link Trees} Деревья:
*
* Для чего нужны деревья?
*
* Например для отображения рабочего стола, каталога моделей, схемы топологии и т.д.
*
*
*
* <br><br>
* ### {@link Publishers}. Паблишеры.
*
* Для чего нужны паблишеры?
*
* В общем случае они предназначены для отображение очень больших списков, которые могут подвесить GUI.
*
* Пример использования паблишера есть в форме результатов обнануржения.
*
*
*
* <br><br>
* ### {@link Models}. Менеджер моделей.
*
* Менеджер моделей предоставляет доступ к устройствами находящимся в системе, которые были отдискаверины или добавлены иным способом.
*
* Пример использования можно найти в Схеме моделей.
*
*
*
* <br><br>
* ### {@link GroupTypes}. Менеджер типов групп.
*
* Позволяет зная cTag, или иными словами тип группы, получить данные связанные с группой.
*
* Этот механизм используется в виджете для отображения атрибутов модели.
*
* А так же для отображения атрибутов компонент.
*
* @name 04
* @mainpage
* @memberof mainpage
*
*/

View file

@ -9,15 +9,15 @@
*
* <br>
*
* {@link Trees.GlobalTree} - любое дерево (обладает возможностью открывать свою иерархию)
* > {@link Trees.SchemeTree} - дерево топологии "st"
* {@link Trees.GlobalTree GlobalTree} - любое дерево (обладает возможностью открывать свою иерархию)
* > {@link Trees.SchemeTree SchemeTree} - дерево топологии "st"
*
* > {@link Trees.GlobalAttributeTree} - любое дерево, которое обладает атрибутами (используется как дефолтное)
* > > {@link Trees.DesktopTree} - дерево рабочего стола "dsk"
* > {@link Trees.GlobalAttributeTree GlobalAttributeTree} - любое дерево, которое обладает атрибутами (используется как дефолтное)
* > > {@link Trees.DesktopTree DesktopTree} - дерево рабочего стола "dsk"
*
* > > {@link Trees.UserAttributeTree} - дерево пользовательских параметров "uat"
* > > {@link Trees.UserAttributeTree UserAttributeTree} - дерево пользовательских параметров "uat"
*
* > > {@link Trees.RemoteModulesTree} - дерево сборщиков данных "rmt"
* > > {@link Trees.RemoteModulesTree RemoteModulesTree} - дерево сборщиков данных "rmt"
*
*
* <br>
@ -37,9 +37,9 @@
* <br>
* Связанные объекты:
*
* - {@link Trees.GlobalTree} - Здесь можно найти примеры, как работать с нодами дерева
* - {@link Trees.GlobalTree.Node} - Здесь можно найти примеры, как работать с содержимым глобальной ноды
* - {@link Trees.GlobalAttributeTree.Node} - Здесь можно найти примеры, как работать с содержимым аттрибутной ноды
* - {@link Trees.GlobalTree GlobalTree} - Здесь можно найти примеры, как работать с нодами дерева
* - {@link Trees.GlobalTree.Node GlobalTreeNode} - Здесь можно найти примеры, как работать с содержимым глобальной ноды
* - {@link Trees.GlobalAttributeTree.Node GlobalAttributesNode} - Здесь можно найти примеры, как работать с содержимым аттрибутной ноды
*
* @example
* // Работа с деревом
@ -49,7 +49,7 @@
* // данных пользователя
* ps.pl.tm.get(new v2.string("rmt")).then(function(ref){
* // ref - это ссылка на объект
* // метод value возвращает целевой объект. В данном случае дерево {@type Trees.GlobalTree}
* // метод value возвращает целевой объект. В данном случае дерево {@link Trees.RemoteModulesTree RemoteModulesTree}
* var tree = ref.value();
* }, function(err){
* // в случае неудачи придет ошибка.