Development status:
Released
Information status: Verified
Repository:
https://github.com/tango-controls/SettingsManager
Download
Contact:
Class Description
This idea is to standardize and centralize the settings management for the control system. It will have to be accessible from client applications and servers written in C++, Java or Python.
The most flexible system to store the settings is to use files on disk. Users will be able to manage sub system, copies or edition (device/attribute renaming). All settings files will be store under a $SETTINGS_ROOT directory. A subdirectory will be created for each accelerator system. To be accessible from all languages, a TANGO class will manage read, write and apply settings for attributes. Each instance of this class will manage a system (SRRF, RIPS, LINAC, ...) files under its own subdirectory fixed by a TANGO property. This class will be able to:
- Write a settings file with an optional list of attribute as input argument. This class will be responsible to do not write above its subdirectory.
- Get file content to preview file with string as output argument.
- Apply settings to attributes.
- Read a settings file and return content in a pipe (att1 name, att1 value, att2 name, att2 value, ...)
Families: Archiving
Key words:
Platform: All Platforms
Language: Java
License: GPL
Contact:
Hardware
Manufacturer: none
Bus: Not Applicable
Class interface
Attributes:
Name | Description |
---|---|
SettingsPathScalar: DevString | Path where settings files are read and write. |
LastGeneratedFileScalar: DevString | — |
LastAppliedFileScalar: DevString | — |
CheckChangePeriodScalar: DevLong | Period (in seconds) to check if settings have change since last appalied. |
DefaultAttributesSpectrum: DevString | The default attribute list from property. |
AlarmAttributesSpectrum: DevString | List of attributes in ALARM |
Commands:
Name | Description |
---|---|
StateInput: DevVoid Output: State Device state |
This command gets the device state (stored in its device_state data member) and returns it to the caller. |
StatusInput: DevVoid Output: ConstDevString Device status |
This command gets the device status (stored in its device_status data member) and returns it to the caller. |
GetSettingsFileContentInput: DevString Specified file name. Output: DevString The specified file content |
read the specified file content |
GenerateSettingsFileInput: DevVarStringArray This array must contain file name. If no attributes are defined as property, it must contain attribute names. It can also contain author names and comments. Each element needs to start with: FILE: for file name ATTRIBUTE: for each attribute name AUTHOR: for author name COMMENTS: for comments Output: DevVoid |
the device will generate a settings file for specified attributes |
ApplySettingsInput: DevString The specified file name Output: DevVoid |
Apply settings from specified file to attributes. |
ResetInput: DevVoid Output: DevVoid |
Reset ALARM state on device |
FileExistsInput: DevString File name Output: DevBoolean true if specified file exists, false otherwise |
Check if specified file exists. |
DeleteFileInput: DevString File name Output: DevVoid |
Delete specified file. |
RenameFileInput: DevVarStringArray Source file name Target file name Output: DevVoid |
Rename source file to target name. |
GetFileListInput: DevString Path to be added to the project path e.g.: ````, ``.``, ``sav``, ``old``,..... Output: DevVarStringArray FILE: or DIR: followed by file or directory name |
Get the file and directory list in specified path. |
MakeDirectoryInput: DevString Directory name (relative to project path) Output: DevVoid |
Created the specified directory |
Pipes:
Name | Description |
---|---|
SettingValues | Returns the attributes with their values (setpoints). |
LastAppliedFileContent | Returns last applied file content |
Properties:
Name | Description |
---|---|
SettingsFilesPathDevString | Path under the RootPath to read/write settings file. |
DefaultAttributeListArray of DevString | Default attribute list to generate settings file if no attributes sent in WriteSettingsFile command |
SettingsTimeoutDevLong | timeout to write settings on specified devices in milliseconds. |
DebugDevBoolean | Add trace mode if true |
UseAttributeFormatDevBoolean | Use attribute property format to write value in file if true. |
RootPathDevString | Root path for all settings systems |
Please log in to comment.
Generated
https://github.com/tango-controls/SettingsManager/blob/master/doc/SettingsManager.pdf
Manual
http://www.esrf.eu/computing/cs/tango/misc_doc/settings_man_doc/index.html
Reverted:
Recent update of device classes in this device server has been verified by Pascal Verdier.
13 Jun 2017, Pascal Verdier
Updated:
The device class has been updated.
You can see previous version here .
13 Jun 2017, Pascal Verdier
Reverted:
Recent update of device classes in this device server has been verified by Pascal Verdier.
5 Jan 2017, Andy Gotz
Created:
The device server has been added to catalogue.