from ittapi.native import PT_Region as _PT_Region, pt_region_begin as _pt_region_begin, pt_region_end as _pt_region_end
from .region import _CallSite, _NamedRegion
class PT_Region(_NamedRegion):
def __init__(self, region=None):
super().__init__(region)
self._region = _PT_Region(self._name)
def __str__(self):
return (f"{{ region name: '{str(self._name)}' }}")
def __repr__(self):
return (f'{self.__class__.__name__}({repr(self._name)})')
def begin(self):
_pt_region_begin(self._region)
def end(self):
_pt_region_end(self._region)
def get_pt_region(self):
return self._region
def pt_region(pt_region=None):
region = _CallSite(_CallSite.CallerFrame) if pt_region is None else pt_region
return PT_Region(region)