profiling
1# This file was automatically generated by SWIG (https://www.swig.org). 2# Version 4.2.1 3# 4# Do not make changes to this file unless you know what you are doing - modify 5# the SWIG interface file instead. 6 7from sys import version_info as _swig_python_version_info 8from mock_rtems import _profiling as _profiling 9 10try: 11 import builtins as __builtin__ 12except ImportError: 13 import __builtin__ 14 15def _swig_repr(self): 16 try: 17 strthis = "proxy of " + self.this.__repr__() 18 except __builtin__.Exception: 19 strthis = "" 20 return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,) 21 22 23def _swig_setattr_nondynamic_instance_variable(set): 24 def set_instance_attr(self, name, value): 25 if name == "this": 26 set(self, name, value) 27 elif name == "thisown": 28 self.this.own(value) 29 elif hasattr(self, name) and isinstance(getattr(type(self), name), property): 30 set(self, name, value) 31 else: 32 raise AttributeError("You cannot add instance attributes to %s" % self) 33 return set_instance_attr 34 35 36def _swig_setattr_nondynamic_class_variable(set): 37 def set_class_attr(cls, name, value): 38 if hasattr(cls, name) and not isinstance(getattr(cls, name), property): 39 set(cls, name, value) 40 else: 41 raise AttributeError("You cannot add class attributes to %s" % cls) 42 return set_class_attr 43 44 45def _swig_add_metaclass(metaclass): 46 """Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass""" 47 def wrapper(cls): 48 return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy()) 49 return wrapper 50 51 52class _SwigNonDynamicMeta(type): 53 """Meta class to enforce nondynamic attributes (no new attributes) for a class""" 54 __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__) 55 56 57RTEMS_PROFILING_PER_CPU = _profiling.RTEMS_PROFILING_PER_CPU 58r""" 59 Type of per-CPU profiling data. 60 61 See also: rtems_profiling_per_cpu. 62 """ 63RTEMS_PROFILING_SMP_LOCK = _profiling.RTEMS_PROFILING_SMP_LOCK 64r""" 65 Type of SMP lock profiling data. 66 67 See also: rtems_profiling_smp_lock. 68 """ 69class rtems_profiling_header(object): 70 r"""The profiling data header.""" 71 72 thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") 73 __repr__ = _swig_repr 74 type = property(_profiling.rtems_profiling_header_type_get, _profiling.rtems_profiling_header_type_set, doc=r"""The profiling data type.""") 75 76 def __init__(self): 77 r"""__init__(rtems_profiling_header self) -> rtems_profiling_header""" 78 _profiling.rtems_profiling_header_swiginit(self, _profiling.new_rtems_profiling_header()) 79 __swig_destroy__ = _profiling.delete_rtems_profiling_header 80 81# Register rtems_profiling_header in _profiling: 82_profiling.rtems_profiling_header_swigregister(rtems_profiling_header) 83class rtems_profiling_per_cpu(object): 84 r""" 85 Per-CPU profiling data. 86 87 Theoretically all values in this structure can overflow, but the integer 88 types are chosen so that they cannot overflow in practice. On systems with 89 a 1GHz CPU counter, the 64-bit integers can overflow in about 58 years. 90 Since the system should not spend most of the time in critical sections the 91 actual system run-time is much longer. Several other counters in the system 92 will overflow before we get a problem in the profiling area. 93 """ 94 95 thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") 96 __repr__ = _swig_repr 97 header = property(_profiling.rtems_profiling_per_cpu_header_get, _profiling.rtems_profiling_per_cpu_header_set, doc=r"""The profiling data header.""") 98 processor_index = property(_profiling.rtems_profiling_per_cpu_processor_index_get, _profiling.rtems_profiling_per_cpu_processor_index_set, doc=r"""The processor index of this profiling data.""") 99 max_thread_dispatch_disabled_time = property(_profiling.rtems_profiling_per_cpu_max_thread_dispatch_disabled_time_get, _profiling.rtems_profiling_per_cpu_max_thread_dispatch_disabled_time_set, doc=r"""The maximum time of disabled thread dispatching in nanoseconds.""") 100 thread_dispatch_disabled_count = property(_profiling.rtems_profiling_per_cpu_thread_dispatch_disabled_count_get, _profiling.rtems_profiling_per_cpu_thread_dispatch_disabled_count_set, doc=r""" 101 Count of times when the thread dispatch disable level changes from 102 zero to one in thread context. 103 104 This value may overflow. 105 """) 106 total_thread_dispatch_disabled_time = property(_profiling.rtems_profiling_per_cpu_total_thread_dispatch_disabled_time_get, _profiling.rtems_profiling_per_cpu_total_thread_dispatch_disabled_time_set, doc=r""" 107 Total time of disabled thread dispatching in nanoseconds. 108 109 The average time of disabled thread dispatching is the total time of 110 disabled thread dispatching divided by the thread dispatch disabled 111 count. 112 113 This value may overflow. 114 """) 115 max_interrupt_delay = property(_profiling.rtems_profiling_per_cpu_max_interrupt_delay_get, _profiling.rtems_profiling_per_cpu_max_interrupt_delay_set, doc=r""" 116 The maximum interrupt delay in nanoseconds if supported by the 117 hardware. 118 119 The interrupt delay is the time interval from the recognition of an 120 interrupt signal by the hardware up to the execution start of the 121 corresponding high-level handler. The interrupt delay is the main 122 contributor to the interrupt latency. To measure this time hardware 123 support is required. A time stamp unit must capture the interrupt signal 124 recognition time. If no hardware support is available, then this field 125 will have a constant value of zero. 126 """) 127 max_interrupt_time = property(_profiling.rtems_profiling_per_cpu_max_interrupt_time_get, _profiling.rtems_profiling_per_cpu_max_interrupt_time_set, doc=r""" 128 The maximum time spent to process a single sequence of nested 129 interrupts in nanoseconds. 130 131 This is the time interval between the change of the interrupt nest level 132 from zero to one and the change back from one to zero. It is the measured 133 worst-case execution time of interrupt service routines. Please note that 134 in case of nested interrupts this time includes the combined execution 135 time and not the maximum time of an individual interrupt service routine. 136 """) 137 interrupt_count = property(_profiling.rtems_profiling_per_cpu_interrupt_count_get, _profiling.rtems_profiling_per_cpu_interrupt_count_set, doc=r""" 138 Count of times when the interrupt nest level changes from zero to 139 one. 140 141 This value may overflow. 142 """) 143 total_interrupt_time = property(_profiling.rtems_profiling_per_cpu_total_interrupt_time_get, _profiling.rtems_profiling_per_cpu_total_interrupt_time_set, doc=r""" 144 Total time of interrupt processing in nanoseconds. 145 146 The average time of interrupt processing is the total time of interrupt 147 processing divided by the interrupt count. 148 149 This value may overflow. 150 """) 151 152 def __init__(self): 153 r"""__init__(rtems_profiling_per_cpu self) -> rtems_profiling_per_cpu""" 154 _profiling.rtems_profiling_per_cpu_swiginit(self, _profiling.new_rtems_profiling_per_cpu()) 155 __swig_destroy__ = _profiling.delete_rtems_profiling_per_cpu 156 157# Register rtems_profiling_per_cpu in _profiling: 158_profiling.rtems_profiling_per_cpu_swigregister(rtems_profiling_per_cpu) 159RTEMS_PROFILING_SMP_LOCK_CONTENTION_COUNTS = _profiling.RTEMS_PROFILING_SMP_LOCK_CONTENTION_COUNTS 160r"""Count of lock contention counters for SMP lock profiling.""" 161class rtems_profiling_smp_lock(object): 162 r""" 163 SMP lock profiling data. 164 165 The lock acquire attempt instant is the point in time right after the 166 interrupt disable action in the lock acquire sequence. 167 168 The lock acquire instant is the point in time right after the lock 169 acquisition. This is the begin of the critical section code execution. 170 171 The lock acquire time is the time elapsed between the lock acquire attempt 172 instant and the lock acquire instant. 173 174 The lock release instant is the point in time right before the interrupt 175 enable action in the lock release sequence. 176 177 The lock section time is the time elapsed between the lock acquire instant 178 and the lock release instant. 179 """ 180 181 thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") 182 __repr__ = _swig_repr 183 header = property(_profiling.rtems_profiling_smp_lock_header_get, _profiling.rtems_profiling_smp_lock_header_set, doc=r"""The profiling data header.""") 184 name = property(_profiling.rtems_profiling_smp_lock_name_get, _profiling.rtems_profiling_smp_lock_name_set, doc=r"""The lock name.""") 185 max_acquire_time = property(_profiling.rtems_profiling_smp_lock_max_acquire_time_get, _profiling.rtems_profiling_smp_lock_max_acquire_time_set, doc=r"""The maximum lock acquire time in nanoseconds.""") 186 max_section_time = property(_profiling.rtems_profiling_smp_lock_max_section_time_get, _profiling.rtems_profiling_smp_lock_max_section_time_set, doc=r"""The maximum lock section time in nanoseconds.""") 187 usage_count = property(_profiling.rtems_profiling_smp_lock_usage_count_get, _profiling.rtems_profiling_smp_lock_usage_count_set, doc=r""" 188 The count of lock uses. 189 190 This value may overflow. 191 """) 192 total_acquire_time = property(_profiling.rtems_profiling_smp_lock_total_acquire_time_get, _profiling.rtems_profiling_smp_lock_total_acquire_time_set, doc=r""" 193 Total lock acquire time in nanoseconds. 194 195 The average lock acquire time is the total acquire time divided by the 196 lock usage count. The ration of the total section and total acquire times 197 gives a measure for the lock contention. 198 199 This value may overflow. 200 """) 201 total_section_time = property(_profiling.rtems_profiling_smp_lock_total_section_time_get, _profiling.rtems_profiling_smp_lock_total_section_time_set, doc=r""" 202 Total lock section time in nanoseconds. 203 204 The average lock section time is the total section time divided by the 205 lock usage count. 206 207 This value may overflow. 208 """) 209 contention_counts = property(_profiling.rtems_profiling_smp_lock_contention_counts_get, _profiling.rtems_profiling_smp_lock_contention_counts_set, doc=r""" 210 The counts of lock acquire operations by contention. 211 212 The contention count for index N corresponds to a lock acquire attempt 213 with an initial queue length of N. The last index corresponds to all 214 lock acquire attempts with an initial queue length greater than or equal 215 to RTEMS_PROFILING_SMP_LOCK_CONTENTION_COUNTS minus one. 216 217 The values may overflow. 218 """) 219 220 def __init__(self): 221 r"""__init__(rtems_profiling_smp_lock self) -> rtems_profiling_smp_lock""" 222 _profiling.rtems_profiling_smp_lock_swiginit(self, _profiling.new_rtems_profiling_smp_lock()) 223 __swig_destroy__ = _profiling.delete_rtems_profiling_smp_lock 224 225# Register rtems_profiling_smp_lock in _profiling: 226_profiling.rtems_profiling_smp_lock_swigregister(rtems_profiling_smp_lock) 227class rtems_profiling_data(object): 228 r"""Collection of profiling data.""" 229 230 thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") 231 __repr__ = _swig_repr 232 header = property(_profiling.rtems_profiling_data_header_get, _profiling.rtems_profiling_data_header_set, doc=r"""Header to specify the actual profiling data.""") 233 per_cpu = property(_profiling.rtems_profiling_data_per_cpu_get, _profiling.rtems_profiling_data_per_cpu_set, doc=r"""Per-CPU profiling data if indicated by the header.""") 234 smp_lock = property(_profiling.rtems_profiling_data_smp_lock_get, _profiling.rtems_profiling_data_smp_lock_set, doc=r"""SMP lock profiling data if indicated by the header.""") 235 236 def __init__(self): 237 r"""__init__(rtems_profiling_data self) -> rtems_profiling_data""" 238 _profiling.rtems_profiling_data_swiginit(self, _profiling.new_rtems_profiling_data()) 239 __swig_destroy__ = _profiling.delete_rtems_profiling_data 240 241# Register rtems_profiling_data in _profiling: 242_profiling.rtems_profiling_data_swigregister(rtems_profiling_data) 243 244def rtems_profiling_iterate(visitor, visitor_arg): 245 r""" 246 Iterates through all profiling data of the system. 247 248 :type visitor: void, in 249 :param visitor: The visitor. 250 :param out]: visitor_arg The visitor argument. 251 """ 252 return _profiling.rtems_profiling_iterate(visitor, visitor_arg) 253 254def rtems_profiling_report_xml(name, printer, indentation_level, indentation): 255 r""" 256 Reports profiling data as XML. 257 258 :type name: string, in 259 :param name: The name of the profiling report. 260 :type printer: rtems_printer, in 261 :param printer: The RTEMS printer to send the output too. 262 :type indentation_level: uint32_t, in 263 :param indentation_level: The current indentation level. 264 :type indentation: string, in 265 :param indentation: The string used for indentation. 266 267 :rtype: int 268 :return: As specified by printf(). 269 """ 270 return _profiling.rtems_profiling_report_xml(name, printer, indentation_level, indentation)
Type of per-CPU profiling data.
See also: rtems_profiling_per_cpu.
Type of SMP lock profiling data.
See also: rtems_profiling_smp_lock.
70class rtems_profiling_header(object): 71 r"""The profiling data header.""" 72 73 thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") 74 __repr__ = _swig_repr 75 type = property(_profiling.rtems_profiling_header_type_get, _profiling.rtems_profiling_header_type_set, doc=r"""The profiling data type.""") 76 77 def __init__(self): 78 r"""__init__(rtems_profiling_header self) -> rtems_profiling_header""" 79 _profiling.rtems_profiling_header_swiginit(self, _profiling.new_rtems_profiling_header()) 80 __swig_destroy__ = _profiling.delete_rtems_profiling_header
The profiling data header.
77 def __init__(self): 78 r"""__init__(rtems_profiling_header self) -> rtems_profiling_header""" 79 _profiling.rtems_profiling_header_swiginit(self, _profiling.new_rtems_profiling_header())
__init__(rtems_profiling_header self) -> rtems_profiling_header
73 thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
The membership flag
84class rtems_profiling_per_cpu(object): 85 r""" 86 Per-CPU profiling data. 87 88 Theoretically all values in this structure can overflow, but the integer 89 types are chosen so that they cannot overflow in practice. On systems with 90 a 1GHz CPU counter, the 64-bit integers can overflow in about 58 years. 91 Since the system should not spend most of the time in critical sections the 92 actual system run-time is much longer. Several other counters in the system 93 will overflow before we get a problem in the profiling area. 94 """ 95 96 thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") 97 __repr__ = _swig_repr 98 header = property(_profiling.rtems_profiling_per_cpu_header_get, _profiling.rtems_profiling_per_cpu_header_set, doc=r"""The profiling data header.""") 99 processor_index = property(_profiling.rtems_profiling_per_cpu_processor_index_get, _profiling.rtems_profiling_per_cpu_processor_index_set, doc=r"""The processor index of this profiling data.""") 100 max_thread_dispatch_disabled_time = property(_profiling.rtems_profiling_per_cpu_max_thread_dispatch_disabled_time_get, _profiling.rtems_profiling_per_cpu_max_thread_dispatch_disabled_time_set, doc=r"""The maximum time of disabled thread dispatching in nanoseconds.""") 101 thread_dispatch_disabled_count = property(_profiling.rtems_profiling_per_cpu_thread_dispatch_disabled_count_get, _profiling.rtems_profiling_per_cpu_thread_dispatch_disabled_count_set, doc=r""" 102 Count of times when the thread dispatch disable level changes from 103 zero to one in thread context. 104 105 This value may overflow. 106 """) 107 total_thread_dispatch_disabled_time = property(_profiling.rtems_profiling_per_cpu_total_thread_dispatch_disabled_time_get, _profiling.rtems_profiling_per_cpu_total_thread_dispatch_disabled_time_set, doc=r""" 108 Total time of disabled thread dispatching in nanoseconds. 109 110 The average time of disabled thread dispatching is the total time of 111 disabled thread dispatching divided by the thread dispatch disabled 112 count. 113 114 This value may overflow. 115 """) 116 max_interrupt_delay = property(_profiling.rtems_profiling_per_cpu_max_interrupt_delay_get, _profiling.rtems_profiling_per_cpu_max_interrupt_delay_set, doc=r""" 117 The maximum interrupt delay in nanoseconds if supported by the 118 hardware. 119 120 The interrupt delay is the time interval from the recognition of an 121 interrupt signal by the hardware up to the execution start of the 122 corresponding high-level handler. The interrupt delay is the main 123 contributor to the interrupt latency. To measure this time hardware 124 support is required. A time stamp unit must capture the interrupt signal 125 recognition time. If no hardware support is available, then this field 126 will have a constant value of zero. 127 """) 128 max_interrupt_time = property(_profiling.rtems_profiling_per_cpu_max_interrupt_time_get, _profiling.rtems_profiling_per_cpu_max_interrupt_time_set, doc=r""" 129 The maximum time spent to process a single sequence of nested 130 interrupts in nanoseconds. 131 132 This is the time interval between the change of the interrupt nest level 133 from zero to one and the change back from one to zero. It is the measured 134 worst-case execution time of interrupt service routines. Please note that 135 in case of nested interrupts this time includes the combined execution 136 time and not the maximum time of an individual interrupt service routine. 137 """) 138 interrupt_count = property(_profiling.rtems_profiling_per_cpu_interrupt_count_get, _profiling.rtems_profiling_per_cpu_interrupt_count_set, doc=r""" 139 Count of times when the interrupt nest level changes from zero to 140 one. 141 142 This value may overflow. 143 """) 144 total_interrupt_time = property(_profiling.rtems_profiling_per_cpu_total_interrupt_time_get, _profiling.rtems_profiling_per_cpu_total_interrupt_time_set, doc=r""" 145 Total time of interrupt processing in nanoseconds. 146 147 The average time of interrupt processing is the total time of interrupt 148 processing divided by the interrupt count. 149 150 This value may overflow. 151 """) 152 153 def __init__(self): 154 r"""__init__(rtems_profiling_per_cpu self) -> rtems_profiling_per_cpu""" 155 _profiling.rtems_profiling_per_cpu_swiginit(self, _profiling.new_rtems_profiling_per_cpu()) 156 __swig_destroy__ = _profiling.delete_rtems_profiling_per_cpu
Per-CPU profiling data.
Theoretically all values in this structure can overflow, but the integer types are chosen so that they cannot overflow in practice. On systems with a 1GHz CPU counter, the 64-bit integers can overflow in about 58 years. Since the system should not spend most of the time in critical sections the actual system run-time is much longer. Several other counters in the system will overflow before we get a problem in the profiling area.
153 def __init__(self): 154 r"""__init__(rtems_profiling_per_cpu self) -> rtems_profiling_per_cpu""" 155 _profiling.rtems_profiling_per_cpu_swiginit(self, _profiling.new_rtems_profiling_per_cpu())
__init__(rtems_profiling_per_cpu self) -> rtems_profiling_per_cpu
96 thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
The membership flag
Count of lock contention counters for SMP lock profiling.
162class rtems_profiling_smp_lock(object): 163 r""" 164 SMP lock profiling data. 165 166 The lock acquire attempt instant is the point in time right after the 167 interrupt disable action in the lock acquire sequence. 168 169 The lock acquire instant is the point in time right after the lock 170 acquisition. This is the begin of the critical section code execution. 171 172 The lock acquire time is the time elapsed between the lock acquire attempt 173 instant and the lock acquire instant. 174 175 The lock release instant is the point in time right before the interrupt 176 enable action in the lock release sequence. 177 178 The lock section time is the time elapsed between the lock acquire instant 179 and the lock release instant. 180 """ 181 182 thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") 183 __repr__ = _swig_repr 184 header = property(_profiling.rtems_profiling_smp_lock_header_get, _profiling.rtems_profiling_smp_lock_header_set, doc=r"""The profiling data header.""") 185 name = property(_profiling.rtems_profiling_smp_lock_name_get, _profiling.rtems_profiling_smp_lock_name_set, doc=r"""The lock name.""") 186 max_acquire_time = property(_profiling.rtems_profiling_smp_lock_max_acquire_time_get, _profiling.rtems_profiling_smp_lock_max_acquire_time_set, doc=r"""The maximum lock acquire time in nanoseconds.""") 187 max_section_time = property(_profiling.rtems_profiling_smp_lock_max_section_time_get, _profiling.rtems_profiling_smp_lock_max_section_time_set, doc=r"""The maximum lock section time in nanoseconds.""") 188 usage_count = property(_profiling.rtems_profiling_smp_lock_usage_count_get, _profiling.rtems_profiling_smp_lock_usage_count_set, doc=r""" 189 The count of lock uses. 190 191 This value may overflow. 192 """) 193 total_acquire_time = property(_profiling.rtems_profiling_smp_lock_total_acquire_time_get, _profiling.rtems_profiling_smp_lock_total_acquire_time_set, doc=r""" 194 Total lock acquire time in nanoseconds. 195 196 The average lock acquire time is the total acquire time divided by the 197 lock usage count. The ration of the total section and total acquire times 198 gives a measure for the lock contention. 199 200 This value may overflow. 201 """) 202 total_section_time = property(_profiling.rtems_profiling_smp_lock_total_section_time_get, _profiling.rtems_profiling_smp_lock_total_section_time_set, doc=r""" 203 Total lock section time in nanoseconds. 204 205 The average lock section time is the total section time divided by the 206 lock usage count. 207 208 This value may overflow. 209 """) 210 contention_counts = property(_profiling.rtems_profiling_smp_lock_contention_counts_get, _profiling.rtems_profiling_smp_lock_contention_counts_set, doc=r""" 211 The counts of lock acquire operations by contention. 212 213 The contention count for index N corresponds to a lock acquire attempt 214 with an initial queue length of N. The last index corresponds to all 215 lock acquire attempts with an initial queue length greater than or equal 216 to RTEMS_PROFILING_SMP_LOCK_CONTENTION_COUNTS minus one. 217 218 The values may overflow. 219 """) 220 221 def __init__(self): 222 r"""__init__(rtems_profiling_smp_lock self) -> rtems_profiling_smp_lock""" 223 _profiling.rtems_profiling_smp_lock_swiginit(self, _profiling.new_rtems_profiling_smp_lock()) 224 __swig_destroy__ = _profiling.delete_rtems_profiling_smp_lock
SMP lock profiling data.
The lock acquire attempt instant is the point in time right after the interrupt disable action in the lock acquire sequence.
The lock acquire instant is the point in time right after the lock acquisition. This is the begin of the critical section code execution.
The lock acquire time is the time elapsed between the lock acquire attempt instant and the lock acquire instant.
The lock release instant is the point in time right before the interrupt enable action in the lock release sequence.
The lock section time is the time elapsed between the lock acquire instant and the lock release instant.
221 def __init__(self): 222 r"""__init__(rtems_profiling_smp_lock self) -> rtems_profiling_smp_lock""" 223 _profiling.rtems_profiling_smp_lock_swiginit(self, _profiling.new_rtems_profiling_smp_lock())
__init__(rtems_profiling_smp_lock self) -> rtems_profiling_smp_lock
182 thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
The membership flag
228class rtems_profiling_data(object): 229 r"""Collection of profiling data.""" 230 231 thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") 232 __repr__ = _swig_repr 233 header = property(_profiling.rtems_profiling_data_header_get, _profiling.rtems_profiling_data_header_set, doc=r"""Header to specify the actual profiling data.""") 234 per_cpu = property(_profiling.rtems_profiling_data_per_cpu_get, _profiling.rtems_profiling_data_per_cpu_set, doc=r"""Per-CPU profiling data if indicated by the header.""") 235 smp_lock = property(_profiling.rtems_profiling_data_smp_lock_get, _profiling.rtems_profiling_data_smp_lock_set, doc=r"""SMP lock profiling data if indicated by the header.""") 236 237 def __init__(self): 238 r"""__init__(rtems_profiling_data self) -> rtems_profiling_data""" 239 _profiling.rtems_profiling_data_swiginit(self, _profiling.new_rtems_profiling_data()) 240 __swig_destroy__ = _profiling.delete_rtems_profiling_data
Collection of profiling data.
237 def __init__(self): 238 r"""__init__(rtems_profiling_data self) -> rtems_profiling_data""" 239 _profiling.rtems_profiling_data_swiginit(self, _profiling.new_rtems_profiling_data())
__init__(rtems_profiling_data self) -> rtems_profiling_data
231 thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
The membership flag
245def rtems_profiling_iterate(visitor, visitor_arg): 246 r""" 247 Iterates through all profiling data of the system. 248 249 :type visitor: void, in 250 :param visitor: The visitor. 251 :param out]: visitor_arg The visitor argument. 252 """ 253 return _profiling.rtems_profiling_iterate(visitor, visitor_arg)
Iterates through all profiling data of the system.
Parameters
- visitor: The visitor.
- out]: visitor_arg The visitor argument.
255def rtems_profiling_report_xml(name, printer, indentation_level, indentation): 256 r""" 257 Reports profiling data as XML. 258 259 :type name: string, in 260 :param name: The name of the profiling report. 261 :type printer: rtems_printer, in 262 :param printer: The RTEMS printer to send the output too. 263 :type indentation_level: uint32_t, in 264 :param indentation_level: The current indentation level. 265 :type indentation: string, in 266 :param indentation: The string used for indentation. 267 268 :rtype: int 269 :return: As specified by printf(). 270 """ 271 return _profiling.rtems_profiling_report_xml(name, printer, indentation_level, indentation)
Reports profiling data as XML.
Parameters
- name: The name of the profiling report.
- printer: The RTEMS printer to send the output too.
- indentation_level: The current indentation level.
- indentation: The string used for indentation.
Returns
As specified by printf().