X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=src%2Fbindings%2Fpython%2Fbt2%2Fbt2%2Ffield_path.py;h=a2d39629bf38ac7edc9a97b2e3f01fdfd9be3cc0;hb=768f9bcbf4b5acd09dda85ab32c0ea30d8826136;hp=2191171e02055317cc331551888bf32c45a4dc37;hpb=578e048b5debf169e286e5b5cc747b5d6c16886d;p=babeltrace.git diff --git a/src/bindings/python/bt2/bt2/field_path.py b/src/bindings/python/bt2/bt2/field_path.py index 2191171e..a2d39629 100644 --- a/src/bindings/python/bt2/bt2/field_path.py +++ b/src/bindings/python/bt2/bt2/field_path.py @@ -1,34 +1,16 @@ -# The MIT License (MIT) +# SPDX-License-Identifier: MIT # # Copyright (c) 2018 Francis Deslauriers -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. import collections from bt2 import native_bt, object -class Scope: - PACKET_CONTEXT = native_bt.SCOPE_PACKET_CONTEXT - EVENT_COMMON_CONTEXT = native_bt.SCOPE_EVENT_COMMON_CONTEXT - EVENT_SPECIFIC_CONTEXT = native_bt.SCOPE_EVENT_SPECIFIC_CONTEXT - EVENT_PAYLOAD = native_bt.SCOPE_EVENT_PAYLOAD +class FieldPathScope: + PACKET_CONTEXT = native_bt.FIELD_PATH_SCOPE_PACKET_CONTEXT + EVENT_COMMON_CONTEXT = native_bt.FIELD_PATH_SCOPE_EVENT_COMMON_CONTEXT + EVENT_SPECIFIC_CONTEXT = native_bt.FIELD_PATH_SCOPE_EVENT_SPECIFIC_CONTEXT + EVENT_PAYLOAD = native_bt.FIELD_PATH_SCOPE_EVENT_PAYLOAD class _FieldPathItem: @@ -48,7 +30,11 @@ class _CurrentArrayElementFieldPathItem(_FieldPathItem): pass -class _FieldPath(object._SharedObject, collections.abc.Iterable): +class _CurrentOptionContentFieldPathItem(_FieldPathItem): + pass + + +class _FieldPathConst(object._SharedObject, collections.abc.Iterable): _get_ref = staticmethod(native_bt.field_path_get_ref) _put_ref = staticmethod(native_bt.field_path_put_ref) @@ -69,14 +55,16 @@ class _FieldPath(object._SharedObject, collections.abc.Iterable): idx = native_bt.field_path_item_index_get_index(item_ptr) yield _IndexFieldPathItem(idx) elif item_type == native_bt.FIELD_PATH_ITEM_TYPE_CURRENT_ARRAY_ELEMENT: - yield _CurrentArrayElementFieldPathItem() + yield _CurrentArrayElementFieldPathItem() + elif item_type == native_bt.FIELD_PATH_ITEM_TYPE_CURRENT_OPTION_CONTENT: + yield _CurrentOptionContentFieldPathItem() else: assert False _SCOPE_TO_OBJ = { - native_bt.SCOPE_PACKET_CONTEXT: Scope.PACKET_CONTEXT, - native_bt.SCOPE_EVENT_COMMON_CONTEXT: Scope.EVENT_COMMON_CONTEXT, - native_bt.SCOPE_EVENT_SPECIFIC_CONTEXT: Scope.EVENT_SPECIFIC_CONTEXT, - native_bt.SCOPE_EVENT_PAYLOAD: Scope.EVENT_PAYLOAD + native_bt.FIELD_PATH_SCOPE_PACKET_CONTEXT: FieldPathScope.PACKET_CONTEXT, + native_bt.FIELD_PATH_SCOPE_EVENT_COMMON_CONTEXT: FieldPathScope.EVENT_COMMON_CONTEXT, + native_bt.FIELD_PATH_SCOPE_EVENT_SPECIFIC_CONTEXT: FieldPathScope.EVENT_SPECIFIC_CONTEXT, + native_bt.FIELD_PATH_SCOPE_EVENT_PAYLOAD: FieldPathScope.EVENT_PAYLOAD, }