pitasc_library - skills/logging/skill_logging.xml

Model definitions

File contents

  1<?xml version="1.0" encoding="UTF-8"?>
  2
  3<pitasc>
  4
  5    <models>
  6        <include package="pitasc_library" file="skills/skill_cartesian.xml"/>
  7        <include package="pitasc_library" file="scripts/logging.xml"/>
  8
  9        <type id="skill_log_cartesian" prototype="skill_cartesian">
 10            <meta>
 11                <member id="description">Logs position and/or orientation of a frame w.r.t. a reference skill into a file</member>
 12            </meta>
 13
 14            <data>
 15                <type id="reference_frame" prototype="string_parameter">
 16                    <meta>
 17                        <member id="description">Defines the reference frame (origin and axes) for the logged cartesian data</member>
 18                        <member id="visibility">required</member>
 19                    </meta>
 20                </type>
 21
 22                <type id="measured_frame" prototype="string_parameter">
 23                    <meta>
 24                        <member id="description">The frame which cartesian data is logged</member>
 25                        <member id="visibility">required</member>
 26                    </meta>
 27                </type>
 28
 29                <type id="file_name" prototype="string_parameter">
 30                    <meta>
 31                        <member id="description">Full path and name (incl. extension) of logging file.
 32                            Non-existing directories are created.
 33                            The following artifacts (enclosed by curly brackets) are dynamically resolved:
 34                            '{rospkg (..)]}': full path to rospackge (..) (cf. roscd);
 35                            '{time (..)}': current time with respective formating (..) (cf. std::strftime)</member>
 36                        <member id="visibility">required</member>
 37                    </meta>
 38                </type>
 39                <type id="buffer_length" prototype="int_parameter">
 40                    <meta>
 41                        <member id="description">Initial length of the preallocated buffer during logging.
 42                            buffer_length = #samples * (#logged_coordinates + 1).
 43                            May be extended on the fly.</member>
 44                        <member id="visibility">expert</member>
 45                    </meta>
 46                    <data>512</data>
 47                </type>
 48                <type id="filter" prototype="string_csv">
 49                    <meta>
 50                        <member id="description">Explicit names of the measurements to be logged.</member>
 51                        <member id="visibility">basic</member>
 52                    </meta>
 53                    <data></data>
 54                </type>
 55
 56                <!-- Implementation details below: -->
 57
 58                <member id="target_frame" reference_id="reference_frame" />
 59                <member id="target_frame.meta.visibility">hidden</member>
 60
 61                <member id="tool_frame" reference_id="measured_frame" />
 62                <member id="tool_frame.meta.visibility">hidden</member>
 63
 64                <member id="scripts">
 65                    <clone prototype="script_measurement_logger">
 66                        <member id="provider" reference_id="collections.target_to_tool.chains"/>
 67                        <member id="file_name" reference_id="file_name" />
 68                        <member id="buffer_length" reference_id="buffer_length" />
 69                        <member id="filter" reference_id="filter" />
 70                        <member id="use_simple_filter_keys">True</member>
 71                    </clone>
 72                </member>
 73
 74            </data>
 75        </type>
 76
 77        <type id="skill_log_force" prototype="skill_force">
 78            <meta>
 79                <member id="description">Logs a force/torque in a desired frame into a file</member>
 80            </meta>
 81
 82            <data>
 83                <member id="force_frame.meta.description">Frame defining the desired position and axes for measuring force and torque</member>
 84
 85                <type id="file_name" prototype="string_parameter">
 86                    <meta>
 87                        <member id="description">Full path and name (incl. extension) of logging file.
 88                            Non-existing directories are created.
 89                            The following artifacts (enclosed by curly brackets) are dynamically resolved:
 90                            '{rospkg (..)]}': full path to rospackge (..) (cf. roscd);
 91                            '{time (..)}': current time with respective formating (..) (cf. std::strftime)</member>
 92                        <member id="visibility">required</member>
 93                    </meta>
 94                </type>
 95                <type id="buffer_length" prototype="int_parameter">
 96                    <meta>
 97                        <member id="description">Initial length of the preallocated buffer during logging.
 98                            buffer_length = #samples * (#logged_coordinates + 1).
 99                            May be extended on the fly.</member>
100                        <member id="visibility">expert</member>
101                    </meta>
102                    <data>512</data>
103                </type>
104                <type id="filter" prototype="string_csv">
105                    <meta>
106                        <member id="description">Explicit names of the measurements to be logged.</member>
107                        <member id="visibility">basic</member>
108                    </meta>
109                    <data></data>
110                </type>
111
112                <!-- Implementation details below: -->
113
114                <member id="scripts">
115                    <clone prototype="script_measurement_logger">
116                        <member id="provider" reference_id="collections.force_chain.chains"/>
117                        <member id="file_name" reference_id="file_name" />
118                        <member id="buffer_length" reference_id="buffer_length" />
119                        <member id="filter" reference_id="filter" />
120                        <member id="use_simple_filter_keys">True</member>
121                    </clone>
122                </member>
123
124            </data>
125        </type>
126
127    </models>
128
129</pitasc>