omni::config::SectionT class предствляет собой упрощённую иерархическую структуру данных. Используется в качестве универсального средства хранения информации, например, для задания конфигурации симуляторов, для сохранения результатов, для передачи произвольных параметров. Секция конфигурации может содержать вложенные секции и параметры. Каждый параметр omni::config::ElementT представляет собой пару "ключ=значение". Здесь можно провести аналогию с файловой системой - где секция является директорией, а параметр файлом.
Секции и параметры можно создавать программно, т.е. добавлять, удалять и изменять дочерние секции или параметры. Наиболее часто используется текстовая форма для задания конфигурации. Например:
<data>
"time" = 1000 # [seconds]
</data>
Соглашение об именах: все имена чувствительны к регистру. Если имя секции или параметра содержит пробелы или другие служебные символы, то оно должно быть заключено в кавычки. Допускается использование двойных (") или одинарных (') кавычек.
Секции предназначены для группирования близких по смыслу параметров. Кроме того, секция может содержать дочерние секции, образуя древовидную структуру.
<A>
a=b
<B>
b=c
</B>
</A>
Для определения начала и окончания секции используются угловые скобки.
# начало секции
< "section name" >
# ...
</ "section name" > # окончание секции
Каждая секция должна быть закрыта тем же именем! Допускается использование следующей нотации:
# начало секции
< "section name"
# ...
/> # окончание секции
- See also:
- omni::config::SectionT
Параметры являются членами какой либо секции: За именем параметра после символа "=" расположено значение параметра. Если символа "=" нет, то считается, что параметр имеет пустое значение. Например, определяет два параметра с пустыми значениями. Секция также может содержать значение, например:
<"section name" = "section value"
"element name" = "element value" />
- See also:
- omni::config::ElementT
Всё что расположено за символом "#" считается комментарием. Допускается использование трёх видов комментариев:
- простые: отдельная строка
- префиксные: комментарий добавляется к следующему параметру или секции
- суффиксные: коментарий добавляется к предыдущему параметру или секции
# simple comment
# section's prefix comment
# section's prefix continue
<A>
# element's prefix comment
a = b # element's suffix comment
</A> # section's suffix comment
# section's suffix continue
Generated on Wed Jun 6 17:27:47 2007 for OMNI by
1.5.2