.

Average: 0
Rating Count: 0

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:

System Message: ERROR/3 (<string>, line 12)

Unexpected indentation.
  • 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.

13 Jun 2017, Pascal Verdier
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.
Added by:agotz on:5 Jan 2017, 3:14 p.m.