class _RealFieldClassConst(_FieldClassConst):
- _NAME = 'Const real'
+ pass
+
+
+class _SinglePrecisionRealFieldClassConst(_RealFieldClassConst):
+ _NAME = 'Const single-precision real'
- @property
- def is_single_precision(self):
- return native_bt.field_class_real_is_single_precision(self._ptr)
+
+class _DoublePrecisionRealFieldClassConst(_RealFieldClassConst):
+ _NAME = 'Const double-precision real'
class _RealFieldClass(_FieldClass, _RealFieldClassConst):
- _NAME = 'Real'
+ pass
- def _is_single_precision(self, is_single_precision):
- utils._check_bool(is_single_precision)
- native_bt.field_class_real_set_is_single_precision(
- self._ptr, is_single_precision
- )
- _is_single_precision = property(fset=_is_single_precision)
+class _SinglePrecisionRealFieldClass(_RealFieldClass):
+ _NAME = 'Single-precision real'
+
+
+class _DoublePrecisionRealFieldClass(_RealFieldClass):
+ _NAME = 'Double-precision real'
# an enumeration field class mapping does not have a reference count, so
class _UnsignedEnumerationFieldClassMappingConst(_EnumerationFieldClassMapping):
- _range_set_pycls = bt2_integer_range_set.UnsignedIntegerRangeSet
+ _range_set_pycls = bt2_integer_range_set._UnsignedIntegerRangeSetConst
_as_enumeration_field_class_mapping_ptr = staticmethod(
native_bt.field_class_enumeration_unsigned_mapping_as_mapping_const
)
class _SignedEnumerationFieldClassMappingConst(_EnumerationFieldClassMapping):
- _range_set_pycls = bt2_integer_range_set.SignedIntegerRangeSet
+ _range_set_pycls = bt2_integer_range_set._SignedIntegerRangeSetConst
_as_enumeration_field_class_mapping_ptr = staticmethod(
native_bt.field_class_enumeration_signed_mapping_as_mapping_const
)
class _UnsignedEnumerationFieldClassConst(
_EnumerationFieldClassConst, _UnsignedIntegerFieldClassConst
):
- _NAME = 'Const nsigned enumeration'
- _range_set_pycls = bt2_integer_range_set.UnsignedIntegerRangeSet
+ _NAME = 'Const unsigned enumeration'
_borrow_mapping_ptr_by_label = staticmethod(
native_bt.field_class_enumeration_unsigned_borrow_mapping_by_label_const
)
_UnsignedIntegerFieldClass,
):
_NAME = 'Unsigned enumeration'
+ _range_set_pycls = bt2_integer_range_set.UnsignedIntegerRangeSet
_add_mapping = staticmethod(native_bt.field_class_enumeration_unsigned_add_mapping)
_EnumerationFieldClassConst, _SignedIntegerFieldClassConst
):
_NAME = 'Const signed enumeration'
- _range_set_pycls = bt2_integer_range_set.SignedIntegerRangeSet
_borrow_mapping_ptr_by_label = staticmethod(
native_bt.field_class_enumeration_signed_borrow_mapping_by_label_const
)
_SignedEnumerationFieldClassConst, _EnumerationFieldClass, _SignedIntegerFieldClass
):
_NAME = 'Signed enumeration'
+ _range_set_pycls = bt2_integer_range_set.SignedIntegerRangeSet
_add_mapping = staticmethod(native_bt.field_class_enumeration_signed_add_mapping)
_borrow_field_class_ptr = staticmethod(
native_bt.field_class_option_borrow_field_class_const
)
- _borrow_selector_field_path = staticmethod(
- native_bt.field_class_option_borrow_selector_field_path_const
- )
@property
def field_class(self):
elem_fc_ptr = self._borrow_field_class_ptr(self._ptr)
return self._create_field_class_from_ptr_and_get_ref(elem_fc_ptr)
+
+class _OptionWithSelectorFieldClassConst(_OptionFieldClassConst):
+ _NAME = 'Const Option (with selector)'
+
@property
def selector_field_path(self):
- ptr = self._borrow_selector_field_path(self._ptr)
+ ptr = native_bt.field_class_option_with_selector_borrow_selector_field_path_const(
+ self._ptr
+ )
if ptr is None:
return
- return bt2_field_path._FieldPath._create_from_ptr_and_get_ref(ptr)
+ return bt2_field_path._FieldPathConst._create_from_ptr_and_get_ref(ptr)
+
+
+class _OptionWithBoolSelectorFieldClassConst(_OptionWithSelectorFieldClassConst):
+ _NAME = 'Const Option (with boolean selector)'
+
+ @property
+ def selector_is_reversed(self):
+ return bool(
+ native_bt.field_class_option_with_selector_bool_selector_is_reversed(
+ self._ptr
+ )
+ )
+
+
+class _OptionWithIntegerSelectorFieldClassConst(_OptionWithSelectorFieldClassConst):
+ _NAME = 'Const Option (with integer selector)'
+
+ @property
+ def ranges(self):
+ range_set_ptr = self._borrow_selector_ranges_ptr(self._ptr)
+ assert range_set_ptr is not None
+ return self._range_set_pycls._create_from_ptr_and_get_ref(range_set_ptr)
+
+
+class _OptionWithUnsignedIntegerSelectorFieldClassConst(
+ _OptionWithIntegerSelectorFieldClassConst
+):
+ _NAME = 'Const Option (with unsigned integer selector)'
+ _range_set_pycls = bt2_integer_range_set._UnsignedIntegerRangeSetConst
+ _borrow_selector_ranges_ptr = staticmethod(
+ native_bt.field_class_option_with_selector_integer_unsigned_borrow_selector_ranges_const
+ )
+
+
+class _OptionWithSignedIntegerSelectorFieldClassConst(
+ _OptionWithIntegerSelectorFieldClassConst
+):
+ _NAME = 'Const Option (with signed integer selector)'
+ _range_set_pycls = bt2_integer_range_set._SignedIntegerRangeSetConst
+ _borrow_selector_ranges_ptr = staticmethod(
+ native_bt.field_class_option_with_selector_integer_signed_borrow_selector_ranges_const
+ )
class _OptionFieldClass(_OptionFieldClassConst, _FieldClass):
)
+class _OptionWithSelectorFieldClass(
+ _OptionWithSelectorFieldClassConst, _OptionFieldClass
+):
+ _NAME = 'Option (with selector)'
+
+
+class _OptionWithBoolSelectorFieldClass(
+ _OptionWithBoolSelectorFieldClassConst, _OptionWithSelectorFieldClass
+):
+ _NAME = 'Option (with boolean selector)'
+
+ def _selector_is_reversed(self, selector_is_reversed):
+ utils._check_bool(selector_is_reversed)
+ native_bt.field_class_option_with_selector_bool_set_selector_is_reversed(
+ self._ptr, selector_is_reversed
+ )
+
+ _selector_is_reversed = property(fset=_selector_is_reversed)
+
+
+class _OptionWithIntegerSelectorFieldClass(
+ _OptionWithIntegerSelectorFieldClassConst, _OptionWithSelectorFieldClass
+):
+ _NAME = 'Option (with integer selector)'
+
+
+class _OptionWithUnsignedIntegerSelectorFieldClass(
+ _OptionWithUnsignedIntegerSelectorFieldClassConst,
+ _OptionWithIntegerSelectorFieldClass,
+):
+ _NAME = 'Option (with unsigned integer selector)'
+
+
+class _OptionWithSignedIntegerSelectorFieldClass(
+ _OptionWithSignedIntegerSelectorFieldClassConst,
+ _OptionWithIntegerSelectorFieldClass,
+):
+ _NAME = 'Option (with signed integer selector)'
+
+
class _VariantFieldClassOptionConst:
_create_field_class_from_ptr_and_get_ref = staticmethod(
_create_field_class_from_const_ptr_and_get_ref
_borrow_ranges_ptr = staticmethod(
native_bt.field_class_variant_with_selector_signed_option_borrow_ranges_const
)
- _range_set_pycls = bt2_integer_range_set.SignedIntegerRangeSet
+ _range_set_pycls = bt2_integer_range_set._SignedIntegerRangeSetConst
class _VariantFieldClassWithSignedSelectorOption(
_borrow_ranges_ptr = staticmethod(
native_bt.field_class_variant_with_selector_unsigned_option_borrow_ranges_const
)
- _range_set_pycls = bt2_integer_range_set.UnsignedIntegerRangeSet
+ _range_set_pycls = bt2_integer_range_set._UnsignedIntegerRangeSetConst
class _VariantFieldClassWithUnsignedSelectorOption(
if ptr is None:
return
- return bt2_field_path._FieldPath._create_from_ptr_and_get_ref(ptr)
+ return bt2_field_path._FieldPathConst._create_from_ptr_and_get_ref(ptr)
class _VariantFieldClassWithSelector(
if ptr is None:
return
- return bt2_field_path._FieldPath._create_from_ptr_and_get_ref(ptr)
+ return bt2_field_path._FieldPathConst._create_from_ptr_and_get_ref(ptr)
class _DynamicArrayFieldClass(_DynamicArrayFieldClassConst, _ArrayFieldClass):
native_bt.FIELD_CLASS_TYPE_BIT_ARRAY: _BitArrayFieldClassConst,
native_bt.FIELD_CLASS_TYPE_UNSIGNED_INTEGER: _UnsignedIntegerFieldClassConst,
native_bt.FIELD_CLASS_TYPE_SIGNED_INTEGER: _SignedIntegerFieldClassConst,
- native_bt.FIELD_CLASS_TYPE_REAL: _RealFieldClassConst,
+ native_bt.FIELD_CLASS_TYPE_SINGLE_PRECISION_REAL: _SinglePrecisionRealFieldClassConst,
+ native_bt.FIELD_CLASS_TYPE_DOUBLE_PRECISION_REAL: _DoublePrecisionRealFieldClassConst,
native_bt.FIELD_CLASS_TYPE_UNSIGNED_ENUMERATION: _UnsignedEnumerationFieldClassConst,
native_bt.FIELD_CLASS_TYPE_SIGNED_ENUMERATION: _SignedEnumerationFieldClassConst,
native_bt.FIELD_CLASS_TYPE_STRING: _StringFieldClassConst,
native_bt.FIELD_CLASS_TYPE_STRUCTURE: _StructureFieldClassConst,
native_bt.FIELD_CLASS_TYPE_STATIC_ARRAY: _StaticArrayFieldClassConst,
native_bt.FIELD_CLASS_TYPE_DYNAMIC_ARRAY: _DynamicArrayFieldClassConst,
- native_bt.FIELD_CLASS_TYPE_OPTION: _OptionFieldClassConst,
+ native_bt.FIELD_CLASS_TYPE_OPTION_WITHOUT_SELECTOR: _OptionFieldClassConst,
+ native_bt.FIELD_CLASS_TYPE_OPTION_WITH_BOOL_SELECTOR: _OptionWithBoolSelectorFieldClassConst,
+ native_bt.FIELD_CLASS_TYPE_OPTION_WITH_UNSIGNED_INTEGER_SELECTOR: _OptionWithUnsignedIntegerSelectorFieldClassConst,
+ native_bt.FIELD_CLASS_TYPE_OPTION_WITH_SIGNED_INTEGER_SELECTOR: _OptionWithSignedIntegerSelectorFieldClassConst,
native_bt.FIELD_CLASS_TYPE_VARIANT_WITHOUT_SELECTOR: _VariantFieldClassWithoutSelectorConst,
native_bt.FIELD_CLASS_TYPE_VARIANT_WITH_UNSIGNED_SELECTOR: _VariantFieldClassWithUnsignedSelectorConst,
native_bt.FIELD_CLASS_TYPE_VARIANT_WITH_SIGNED_SELECTOR: _VariantFieldClassWithSignedSelectorConst,
native_bt.FIELD_CLASS_TYPE_BIT_ARRAY: _BitArrayFieldClass,
native_bt.FIELD_CLASS_TYPE_UNSIGNED_INTEGER: _UnsignedIntegerFieldClass,
native_bt.FIELD_CLASS_TYPE_SIGNED_INTEGER: _SignedIntegerFieldClass,
- native_bt.FIELD_CLASS_TYPE_REAL: _RealFieldClass,
+ native_bt.FIELD_CLASS_TYPE_SINGLE_PRECISION_REAL: _SinglePrecisionRealFieldClass,
+ native_bt.FIELD_CLASS_TYPE_DOUBLE_PRECISION_REAL: _DoublePrecisionRealFieldClass,
native_bt.FIELD_CLASS_TYPE_UNSIGNED_ENUMERATION: _UnsignedEnumerationFieldClass,
native_bt.FIELD_CLASS_TYPE_SIGNED_ENUMERATION: _SignedEnumerationFieldClass,
native_bt.FIELD_CLASS_TYPE_STRING: _StringFieldClass,
native_bt.FIELD_CLASS_TYPE_STRUCTURE: _StructureFieldClass,
native_bt.FIELD_CLASS_TYPE_STATIC_ARRAY: _StaticArrayFieldClass,
native_bt.FIELD_CLASS_TYPE_DYNAMIC_ARRAY: _DynamicArrayFieldClass,
- native_bt.FIELD_CLASS_TYPE_OPTION: _OptionFieldClass,
+ native_bt.FIELD_CLASS_TYPE_OPTION_WITHOUT_SELECTOR: _OptionFieldClass,
+ native_bt.FIELD_CLASS_TYPE_OPTION_WITH_BOOL_SELECTOR: _OptionWithBoolSelectorFieldClass,
+ native_bt.FIELD_CLASS_TYPE_OPTION_WITH_UNSIGNED_INTEGER_SELECTOR: _OptionWithUnsignedIntegerSelectorFieldClass,
+ native_bt.FIELD_CLASS_TYPE_OPTION_WITH_SIGNED_INTEGER_SELECTOR: _OptionWithSignedIntegerSelectorFieldClass,
native_bt.FIELD_CLASS_TYPE_VARIANT_WITHOUT_SELECTOR: _VariantFieldClassWithoutSelector,
native_bt.FIELD_CLASS_TYPE_VARIANT_WITH_UNSIGNED_SELECTOR: _VariantFieldClassWithUnsignedSelector,
native_bt.FIELD_CLASS_TYPE_VARIANT_WITH_SIGNED_SELECTOR: _VariantFieldClassWithSignedSelector,