File: tango_administration_map.html

package info (click to toggle)
tango 9.3.4%2Bdfsg1-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 95,792 kB
  • sloc: cpp: 138,382; sh: 8,009; ansic: 1,083; makefile: 996; java: 800; python: 264; xml: 54
file content (137 lines) | stat: -rw-r--r-- 10,621 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
<html>
<head><title>Image map created by yEd</title>
<style type="text/css">
.tooltip {
  font-size:10pt;
  background-color:#FFFFCC;
  border:1px solid black;
  padding:2px
}
</style>
<style type="text/css">
.tooltip {
  position:absolute;
  display:none
}
</style>
</head>
<body>

<script type="text/javascript">
tooltip = null;
document.onmousemove = updateTooltip;
function updateTooltip(e) {
try {
if (document.all) {
if (document.documentElement && document.documentElement.scrollTop) { // Explorer 6 Strict
x = document.documentElement.scrollLeft + window.event.x;
y = document.documentElement.scrollTop + window.event.y;
}
else { // all other Explorers
x = document.body.scrollLeft + window.event.x;
y = document.body.scrollTop + window.event.y;
}
}
else {
x = e.pageX;
y = e.pageY;
}
if (tooltip != null) {
o = 20;
var sx, sy;
if (self.pageYOffset) { // all except Explorer
sx = self.pageXOffset;
sy = self.pageYOffset;
}
else if (document.documentElement && document.documentElement.scrollTop) { // Explorer 6 Strict
sx = document.documentElement.scrollLeft;
sy = document.documentElement.scrollTop;
}
else if (document.body) { // all other Explorers
sx = document.body.scrollLeft;
sy = document.body.scrollTop;
}
t = y + o + tooltip.offsetHeight;
w = sy + document.body.clientHeight;
if (t > w) {
y = y - o - tooltip.offsetHeight;
}
else {
y = y + o;
}
t = x + o + tooltip.offsetWidth;
w = sx + document.body.clientWidth;
if (t > w) {
x = x - o - tooltip.offsetWidth;
}
else {
x = x + o;
}
if ((tooltip.style.top == '' || tooltip.style.top == 0) && (tooltip.style.left == '' || tooltip.style.left == 0))
{
tooltip.style.width = tooltip.offsetWidth + 'px';
tooltip.style.height = tooltip.offsetHeight + 'px';
}
tooltip.style.left = x + "px";
tooltip.style.top = y + "px";
}
} catch (error) { error = null; }
}
function showTooltip(id) {
try {
tooltip = document.getElementById(id);
tooltip.style.display = "block";
} catch (error) { error = null; }
}
function hideTooltip() {
try {
tooltip.style.display = "none";
} catch (error) { error = null; }
}
</script>

<div class="tooltip" id="n0">Administration</div>
<div class="tooltip" id="n1">Astor's first goal is to know at a quick glance, if everything is OK in a control system,<br>and otherwise to be able to diagnose a problem and solve it.<br>The second goal is to configure the control system and its components. <br>The third goal is to have long term analysis on components (logs, statistics, usage,....).<br>It is relying on the starter devices.</div>
<div class="tooltip" id="n2">To achieve complete device independence, it is necessary however to supplement <br>device classes with a possibility for configuring device dependencies at runtime. <br>The utility which does this in the TDSOM is the property database. Properties <br>are identified by an ascii string and the device name. TANGO attributes are also <br>configured using properties. This database is also used to store device network <br>addresses (CORBA IOR's), list of classes hosted by a device server process and <br>list of devices for each class in a device server process. The database ensure <br>the uniqueness of device name and of alias. TANGO uses MySQL as its database.</div>
<div class="tooltip" id="n3">A high level object which contains the link to the database. It has methods for <br>all database commands e.g. get_device_property(), device_list(), info(), etc. </div>
<div class="tooltip" id="n4">TANGO devices and database are implemented using the TANGO device server model. <br>To access them the user has the CORBA interface e.g. command_inout(), <br>write_attributes() etc. defined by the idl file. These methods are very <br>low-level and assume a good working knowledge of CORBA. In order to simplify <br>this access, high-level api in C++, Python and Java have been implemented which <br>hides all CORBA aspects of TANGO.</div>
<div class="tooltip" id="n5">The TANGO Logging Service (TLS) gives the user the control over how much <br>information is actually generated and to where it goes. In practice, the <br>TLS allows to select both the logging level and targets of any device within <br>the control system. </div>
<div class="tooltip" id="n6">A Tango Log Consumer device is nothing but a tango device supporting the <br>following tango command: void log (Tango::DevVarStringArray details) </div>
<div class="tooltip" id="n7">One implementation of a log consumer associated to a graphical user interface is<br> available within Tango. It is a standalone java application called LogViewer <br> based on the publicly available chainsaw application from the log4j package.</div>
<div class="tooltip" id="n8">JIVE is a standalone JAVA application designed to browse and edit the TANGO database. <br>Jive also offers advanced search/selection features.<br></div>
<div class="tooltip" id="n9">In order to simplify device server process administration, a device of the <br>DServer class is automatically added to each device server process. Thus, every <br>device server process supports the same set of administration commands. The <br>implementation of this DServer class follows the device pattern and therefore, <br>its device behaves like any other devices. The device name is: <br>dserver/device server executable name/device server instance name </div>
<div class="tooltip" id="n10">Clients access the database via TANGO commands requested on the database device. </div>
<div class="tooltip" id="n11">Communication Layer (CORBA / ZMQ)</div>
<div class="tooltip" id="n12">Fandango (previously called PyTango_utils) is a Python module created to simplify the configuration of big control systems;<br>implementing the behavior of Jive (configuration) and/or Astor (deployment) tools in methods that could be called from scripts using regexp and wildcards.<br>It has been later extended with methods commonly used in some of our python API's (archiving, CCDB, alarms, vacca) or generic devices (composers, simulators, facades).<br></div>
<div class="tooltip" id="n13">configuration management tool for an ELI-ALPS equipment (equipment, beamdelivery, etc.). <br>The CSV files hold device names, hierarchy and attribute property values; which are <br>used for automatically registering devices in the Tango Database.</div>
<div class="tooltip" id="n14">The Cabling and Controls DataBase (CCDB) is part of the ALBA control system. It has the following:<br>Equipments, connectors and cable types <br>Instances of equipments and cables (naming conventions) <br>Documentation files <br>Installation logs <br>Source for automatic code generation and creation of <br>Tango devices</div>
<div class="tooltip" id="n15">This device server is able to control Tango components (database, device <br>servers, clients...). It is able to start or stop and to report the status <br>of these components.</div>

<map name="image1_1">
  <area shape="rect" coords="24,352,196,381" href="http://www.esrf.eu/computing/cs/tango/tango_doc/ds_doc/tango-cs/System/starter/Version.html" alt="" onmouseover="showTooltip('n15')" onmouseout="hideTooltip()" target="_blank"/>
  <area shape="rect" coords="210,36,456,65" href="https://indico.cern.ch/event/233494/contributions/497847/attachments/389318/541501/Maintenance_Workshop_Presentation_at_Cern_vd.pdf#page=12" alt="" onmouseover="showTooltip('n14')" onmouseout="hideTooltip()" target="_blank"/>
  <area shape="rect" coords="210,127,456,156" alt="" onmouseover="showTooltip('n13')" onmouseout="hideTooltip()"/>
  <area shape="rect" coords="24,81,456,110" href="http://tango-controls.readthedocs.io/en/latest/tutorials-and-howtos/how-tos/how-to-fandango.html" alt="" onmouseover="showTooltip('n12')" onmouseout="hideTooltip()" target="_blank"/>
  <area shape="rect" coords="24,292,702,321" href="http://tango-controls.readthedocs.io/en/latest/development/device-api/device-server-model.html#introduction-to-corba" alt="" onmouseover="showTooltip('n11')" onmouseout="hideTooltip()" target="_blank"/>
  <area shape="rect" coords="210,351,456,380" alt="" onmouseover="showTooltip('n10')" onmouseout="hideTooltip()"/>
  <area shape="rect" coords="24,321,702,350" href="http://tango-controls.readthedocs.io/en/latest/development/device-api/device-server-model.html#deviceservermodel" alt="" onmouseover="showTooltip('n9')" onmouseout="hideTooltip()" target="_blank"/>
  <area shape="rect" coords="209,172,456,201" href="http://tango-controls.readthedocs.io/en/latest/tools-and-extensions/jive/index.html" alt="" onmouseover="showTooltip('n8')" onmouseout="hideTooltip()" target="_blank"/>
  <area shape="rect" coords="470,217,702,247" href="http://tango-controls.readthedocs.io/en/latest/development/advanced/reference.html#tango-log-consumer" alt="" onmouseover="showTooltip('n7')" onmouseout="hideTooltip()" target="_blank"/>
  <area shape="rect" coords="470,352,702,381" href="http://tango-controls.readthedocs.io/en/latest/development/advanced/reference.html#tango-log-consumer" alt="" onmouseover="showTooltip('n6')" onmouseout="hideTooltip()" target="_blank"/>
  <area shape="rect" coords="470,382,702,411" href="http://tango-controls.readthedocs.io/en/latest/development/device-api/device-server-model.html#the-tango-logging-service" alt="" onmouseover="showTooltip('n5')" onmouseout="hideTooltip()" target="_blank"/>
  <area shape="rect" coords="24,263,702,292" href="http://tango-controls.readthedocs.io/en/latest/development/client-api/index.html" alt="" onmouseover="showTooltip('n4')" onmouseout="hideTooltip()" target="_blank"/>
  <area shape="rect" coords="209,217,456,247" href="http://www.esrf.eu/computing/cs/tango/tango_doc/kernel_doc/ds_prog/node7.html#SECTION007100000000000000000" alt="" onmouseover="showTooltip('n3')" onmouseout="hideTooltip()" target="_blank"/>
  <area shape="rect" coords="210,381,456,410" href="http://tango-controls.readthedocs.io/en/latest/development/device-api/device-server-model.html#the-database" alt="" onmouseover="showTooltip('n2')" onmouseout="hideTooltip()" target="_blank"/>
  <area shape="rect" coords="24,217,196,247" href="http://tango-controls.readthedocs.io/en/latest/tools-and-extensions/astor/index.html" alt="" onmouseover="showTooltip('n1')" onmouseout="hideTooltip()" target="_blank"/>
  <area shape="rect" coords="15,15,711,493" alt="" onmouseover="showTooltip('n0')" onmouseout="hideTooltip()"/>
</map>


    <table class="yimagetable" cellspacing="0" cellpadding="0" border="0">
      <tr>
        <td><img class="yimage" src="tango_administration_map1_1.png" usemap="#image1_1" border="0" alt=""/></td>
      </tr>
    </table>

</body>
</html>