pitasc_library - scripts/logging.xml

Model definitions

File contents

  1<?xml version="1.0" encoding="UTF-8"?>
  2
  3<pitasc>
  4
  5    <models>
  6
  7        <type id="script_residual_publisher" prototype="script">
  8            <meta>
  9                <member id="description">Publishes residual values (control error).</member>
 10                <member id="categories">publisher</member>
 11                <member id="implementation">
 12                </member>
 13            </meta>
 14            <data>
 15                <type id="topic" prototype="string_parameter">
 16                    <meta>
 17                        <member id="description">Topic name on which to publish.</member>
 18                        <member id="visibility">basic</member>
 19                    </meta>
 20                    <data>residuals</data>
 21                </type>
 22            </data>
 23        </type>
 24
 25        <type id="script_measurement_publisher" prototype="script">
 26            <meta>
 27                <member id="description">Publishes measurement values.</member>
 28                <member id="categories">publisher</member>
 29                <member id="implementation">
 30                    <clone prototype="orocos">
 31                        <member id="package">pitasc_ros_scripts</member>
 32                        <member id="component">MeasurementPublisher</member>
 33                        <member id="arguments">scene, provider, topic, coordinates</member>
 34                    </clone>
 35                </member>
 36            </meta>
 37            <data>
 38                <type id="provider" data_type="parameter:data_source" prototype="base">
 39                    <meta>
 40                        <member id="description">Data source that provides the measurements to publish.</member>
 41                        <member id="visibility">required</member>
 42                    </meta>
 43                </type>
 44
 45                <type id="topic" prototype="string_parameter">
 46                    <meta>
 47                        <member id="description">Topic name on which to publish.</member>
 48                        <member id="visibility">basic</member>
 49                    </meta>
 50                    <data>measurements</data>
 51                </type>
 52
 53                <type id="coordinates" prototype="string_csv">
 54                    <meta>
 55                        <member id="description">Coordinates that should be published.</member>
 56                        <member id="visibility">required</member>
 57                    </meta>
 58                </type>
 59            </data>
 60        </type>
 61
 62        <type id="script_measurement_logger" prototype="script">
 63            <meta>
 64                <member id="description">Logs internal measurements to a file.</member>
 65                <member id="categories">logging</member>
 66                <member id="implementation">
 67                    <clone prototype="orocos">
 68                        <member id="package">cppitasc_ros_components</member>
 69                        <member id="component">ScriptMeasurementLogger</member>
 70                        <member id="arguments">scene, controllers, provider, file_name, buffer_length, filter, use_simple_filter_keys</member>
 71                    </clone>
 72                </member>
 73            </meta>
 74            <data>
 75                <type id="provider" data_type="list:data_source" prototype="base">
 76                    <meta>
 77                        <member id="description">Data sources that provide the measurements for logging.</member>
 78                        <member id="visibility">required</member>
 79                    </meta>
 80                </type>
 81
 82                <type id="file_name" prototype="string_parameter">
 83                    <meta>
 84                        <member id="description">Full path and name (incl. extension) of logging file.
 85                            Non-existing directories are created.
 86                            The following artifacts (enclosed by curly brackets) are dynamically resolved:
 87                            '{rospkg (..)]}': full path to rospackge (..) (cf. roscd);
 88                            '{time (..)}': current time with respective formating (..) (cf. std::strftime)</member>
 89                        <member id="visibility">required</member>
 90                    </meta>
 91                </type>
 92                <type id="buffer_length" prototype="int_parameter">
 93                    <meta>
 94                        <member id="description">Initial length of the preallocated buffer during logging.
 95                            buffer_length = #samples * (#logged_coordinates + 1).
 96                            May be extended on the fly.</member>
 97                        <member id="visibility">expert</member>
 98                    </meta>
 99                    <data>512</data>
100                </type>
101                <type id="filter" prototype="string_csv">
102                    <meta>
103                        <member id="description">Explicit names of the measurements to be logged.</member>
104                        <member id="visibility">basic</member>
105                    </meta>
106                    <data></data>
107                </type>
108                <type id="use_simple_filter_keys" prototype="bool_parameter">
109                    <meta>
110                        <member id="description">Allows to use filter keys without chain (e.g. 'x' instead of 'target_to_tool/x')</member>
111                        <member id="visibility">basic</member>
112                    </meta>
113                    <data>False</data>
114                </type>
115            </data>
116        </type>
117
118        <type id="script_error_logger" prototype="script_measurement_logger">
119            <meta>
120                <member id="description">Logs control_errors (desired vs. measured values)</member>
121                <member id="categories">logging</member>
122                <member id="implementation">
123                    <clone prototype="orocos">
124                        <member id="package">cppitasc_ros_components</member>
125                        <member id="component">ScriptErrorLogger</member>
126                        <member id="arguments">scene, controllers, coordinates, file_name, buffer_length, filter, use_simple_filter_keys</member>
127                    </clone>
128                </member>
129            </meta>
130            <data>
131                <type id="controllers" data_type="list:controller" prototype="base">
132                    <meta>
133                        <member id="description">Controllers whose control errors are logged.</member>
134                        <member id="visibility">required</member>
135                    </meta>
136                </type>
137            </data>
138        </type>
139
140        <type id="script_status_publisher" prototype="script">
141            <meta>
142                <member id="description">Publishes the maximum residual scaled between 0 and 1.</member>
143                <member id="categories">publisher</member>
144                <member id="implementation">
145                </member>
146            </meta>
147            <data>
148                <type id="topic" prototype="string_parameter">
149                    <meta>
150                        <member id="description">Topic name on which the status is published.</member>
151                        <member id="visibility">basic</member>
152                    </meta>
153                    <data>status</data>
154                </type>
155                <type id="coordinates" prototype="string_csv">
156                    <meta>
157                        <member id="description">Coordinates that will be published.</member>
158                        <member id="visibility">required</member>
159                    </meta>
160                </type>
161            </data>
162        </type>
163
164    </models>
165</pitasc>