bt2: add bit array field class and field support
[babeltrace.git] / src / bindings / python / bt2 / bt2 / __init__.py
1 # The MIT License (MIT)
2 #
3 # Copyright (c) 2017 Philippe Proulx <pproulx@efficios.com>
4 #
5 # Permission is hereby granted, free of charge, to any person obtaining a copy
6 # of this software and associated documentation files (the "Software"), to deal
7 # in the Software without restriction, including without limitation the rights
8 # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 # copies of the Software, and to permit persons to whom the Software is
10 # furnished to do so, subject to the following conditions:
11 #
12 # The above copyright notice and this permission notice shall be included in
13 # all copies or substantial portions of the Software.
14 #
15 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 # THE SOFTWARE.
22
23 # import all public names
24 from bt2.clock_class import ClockClassOffset
25 from bt2.clock_snapshot import _ClockSnapshot
26 from bt2.clock_snapshot import _UnknownClockSnapshot
27 from bt2.component import _SourceComponentClass
28 from bt2.component import _FilterComponentClass
29 from bt2.component import _SinkComponentClass
30 from bt2.component import _SourceComponent
31 from bt2.component import _FilterComponent
32 from bt2.component import _SinkComponent
33 from bt2.component import _UserSourceComponent
34 from bt2.component import _UserFilterComponent
35 from bt2.component import _UserSinkComponent
36 from bt2.component_descriptor import ComponentDescriptor
37 from bt2.error import ComponentClassType
38 from bt2.error import _ErrorCause
39 from bt2.error import _ComponentErrorCause
40 from bt2.error import _ComponentClassErrorCause
41 from bt2.error import _MessageIteratorErrorCause
42 from bt2.error import _Error
43 from bt2.event_class import EventClassLogLevel
44 from bt2.field import _BoolField
45 from bt2.field import _BitArrayField
46 from bt2.field import _IntegerField
47 from bt2.field import _UnsignedIntegerField
48 from bt2.field import _SignedIntegerField
49 from bt2.field import _RealField
50 from bt2.field import _EnumerationField
51 from bt2.field import _UnsignedEnumerationField
52 from bt2.field import _SignedEnumerationField
53 from bt2.field import _StringField
54 from bt2.field import _StructureField
55 from bt2.field import _OptionField
56 from bt2.field import _VariantField
57 from bt2.field import _ArrayField
58 from bt2.field import _StaticArrayField
59 from bt2.field import _DynamicArrayField
60 from bt2.field_class import IntegerDisplayBase
61 from bt2.field_class import _BoolFieldClass
62 from bt2.field_class import _BitArrayFieldClass
63 from bt2.field_class import _IntegerFieldClass
64 from bt2.field_class import _UnsignedIntegerFieldClass
65 from bt2.field_class import _SignedIntegerFieldClass
66 from bt2.field_class import _RealFieldClass
67 from bt2.field_class import _EnumerationFieldClass
68 from bt2.field_class import _UnsignedEnumerationFieldClass
69 from bt2.field_class import _SignedEnumerationFieldClass
70 from bt2.field_class import _StringFieldClass
71 from bt2.field_class import _StructureFieldClass
72 from bt2.field_class import _OptionFieldClass
73 from bt2.field_class import _VariantFieldClass
74 from bt2.field_class import _VariantFieldClassWithoutSelector
75 from bt2.field_class import _VariantFieldClassWithSelector
76 from bt2.field_class import _VariantFieldClassWithUnsignedSelector
77 from bt2.field_class import _VariantFieldClassWithSignedSelector
78 from bt2.field_class import _ArrayFieldClass
79 from bt2.field_class import _StaticArrayFieldClass
80 from bt2.field_class import _DynamicArrayFieldClass
81 from bt2.field_path import FieldPathScope
82 from bt2.field_path import _IndexFieldPathItem
83 from bt2.field_path import _CurrentArrayElementFieldPathItem
84 from bt2.field_path import _CurrentOptionContentFieldPathItem
85 from bt2.graph import Graph
86 from bt2.integer_range_set import SignedIntegerRange
87 from bt2.integer_range_set import UnsignedIntegerRange
88 from bt2.integer_range_set import SignedIntegerRangeSet
89 from bt2.integer_range_set import UnsignedIntegerRangeSet
90 from bt2.interrupter import Interrupter
91 from bt2.logging import LoggingLevel
92 from bt2.logging import get_minimal_logging_level
93 from bt2.logging import get_global_logging_level
94 from bt2.logging import set_global_logging_level
95 from bt2.message import _EventMessage
96 from bt2.message import _PacketBeginningMessage
97 from bt2.message import _PacketEndMessage
98 from bt2.message import _StreamBeginningMessage
99 from bt2.message import _StreamEndMessage
100 from bt2.message import _MessageIteratorInactivityMessage
101 from bt2.message import _DiscardedEventsMessage
102 from bt2.message import _DiscardedPacketsMessage
103 from bt2.message_iterator import _UserMessageIterator
104 from bt2.mip import get_greatest_operative_mip_version
105 from bt2.mip import get_maximal_mip_version
106 from bt2.plugin import find_plugins_in_path
107 from bt2.plugin import find_plugins
108 from bt2.plugin import find_plugin
109 from bt2.py_plugin import plugin_component_class
110 from bt2.py_plugin import register_plugin
111 from bt2.query_executor import QueryExecutor
112 from bt2.trace_collection_message_iterator import AutoSourceComponentSpec
113 from bt2.trace_collection_message_iterator import ComponentSpec
114 from bt2.trace_collection_message_iterator import TraceCollectionMessageIterator
115 from bt2.value import create_value
116 from bt2.value import BoolValue
117 from bt2.value import _IntegerValue
118 from bt2.value import UnsignedIntegerValue
119 from bt2.value import SignedIntegerValue
120 from bt2.value import RealValue
121 from bt2.value import StringValue
122 from bt2.value import ArrayValue
123 from bt2.value import MapValue
124 from bt2.version import __version__
125
126
127 def _del_global_name(name):
128 if name in globals():
129 del globals()[name]
130
131
132 # remove private module names from the package
133 _del_global_name('_native_bt')
134 _del_global_name('clock_class')
135 _del_global_name('clock_snapshot')
136 _del_global_name('component')
137 _del_global_name('connection')
138 _del_global_name('error')
139 _del_global_name('event')
140 _del_global_name('event_class')
141 _del_global_name('field')
142 _del_global_name('field_class')
143 _del_global_name('field_path')
144 _del_global_name('graph')
145 _del_global_name('integer_range_set')
146 _del_global_name('interrupter')
147 _del_global_name('logging')
148 _del_global_name('message')
149 _del_global_name('message_iterator')
150 _del_global_name('native_bt')
151 _del_global_name('object')
152 _del_global_name('packet')
153 _del_global_name('plugin')
154 _del_global_name('port')
155 _del_global_name('py_plugin')
156 _del_global_name('query_executor')
157 _del_global_name('stream')
158 _del_global_name('stream_class')
159 _del_global_name('trace')
160 _del_global_name('trace_class')
161 _del_global_name('trace_collection_message_iterator')
162 _del_global_name('utils')
163 _del_global_name('value')
164 _del_global_name('version')
165
166 # remove private `_del_global_name` name from the package
167 del _del_global_name
168
169
170 class _MemoryError(_Error):
171 '''Raised when an operation fails due to memory issues.'''
172
173
174 class UnknownObject(Exception):
175 '''
176 Raised when a component class handles a query for an object it doesn't
177 know about.
178 '''
179
180 pass
181
182
183 class _OverflowError(_Error, OverflowError):
184 pass
185
186
187 class TryAgain(Exception):
188 pass
189
190
191 class Stop(StopIteration):
192 pass
193
194
195 class _IncompleteUserClass(Exception):
196 pass
197
198
199 def _init_and_register_exit():
200 from bt2 import native_bt
201 import atexit
202
203 atexit.register(native_bt.bt2_exit_handler)
204 native_bt.bt2_init_from_bt2()
205
206
207 _init_and_register_exit()
208
209 # remove private `_init_and_register_exit` name from the package
210 del _init_and_register_exit
This page took 0.037357 seconds and 5 git commands to generate.