Fix typing info

Backport of e73296b34a

Signed-off-by: Christophe Bedard <bedard.christophe@gmail.com>
This commit is contained in:
Christophe Bedard 2021-03-31 19:26:06 -04:00
parent ceb6715bae
commit 3768a177c7
5 changed files with 25 additions and 41 deletions

View file

@ -15,6 +15,13 @@
"""Base data model module.""" """Base data model module."""
from typing import Any
from typing import Dict
from typing import List
DataModelIntermediateStorage = List[Dict[str, Any]]
class DataModel(): class DataModel():
""" """

View file

@ -18,6 +18,7 @@
import pandas as pd import pandas as pd
from . import DataModel from . import DataModel
from . import DataModelIntermediateStorage
class CpuTimeDataModel(DataModel): class CpuTimeDataModel(DataModel):
@ -30,10 +31,7 @@ class CpuTimeDataModel(DataModel):
def __init__(self) -> None: def __init__(self) -> None:
"""Create a CpuTimeDataModel.""" """Create a CpuTimeDataModel."""
super().__init__() super().__init__()
# Intermediate self._times: DataModelIntermediateStorage = []
self._times = []
# Final
self.times = None
def add_duration( def add_duration(
self, self,

View file

@ -18,6 +18,7 @@
import pandas as pd import pandas as pd
from . import DataModel from . import DataModel
from . import DataModelIntermediateStorage
class MemoryUsageDataModel(DataModel): class MemoryUsageDataModel(DataModel):
@ -31,10 +32,7 @@ class MemoryUsageDataModel(DataModel):
def __init__(self) -> None: def __init__(self) -> None:
"""Create a MemoryUsageDataModel.""" """Create a MemoryUsageDataModel."""
super().__init__() super().__init__()
# Intermediate self._memory_diff: DataModelIntermediateStorage = []
self._memory_diff = []
# Final
self.memory_diff = None
def add_memory_difference( def add_memory_difference(
self, self,

View file

@ -20,6 +20,7 @@ from typing import Optional
import pandas as pd import pandas as pd
from . import DataModel from . import DataModel
from . import DataModelIntermediateStorage
class ProfileDataModel(DataModel): class ProfileDataModel(DataModel):
@ -33,10 +34,7 @@ class ProfileDataModel(DataModel):
def __init__(self) -> None: def __init__(self) -> None:
"""Create a ProfileDataModel.""" """Create a ProfileDataModel."""
super().__init__() super().__init__()
# Intermediate self._times: DataModelIntermediateStorage = []
self._times = []
# Final
self.times = None
def add_duration( def add_duration(
self, self,

View file

@ -18,6 +18,7 @@
import pandas as pd import pandas as pd
from . import DataModel from . import DataModel
from . import DataModelIntermediateStorage
class Ros2DataModel(DataModel): class Ros2DataModel(DataModel):
@ -30,36 +31,19 @@ class Ros2DataModel(DataModel):
def __init__(self) -> None: def __init__(self) -> None:
"""Create a Ros2DataModel.""" """Create a Ros2DataModel."""
super().__init__() super().__init__()
# Intermediate
self._contexts = []
self._nodes = []
self._publishers = []
self._subscriptions = []
self._subscription_objects = []
self._services = []
self._clients = []
self._timers = []
self._callback_objects = []
self._callback_symbols = []
self._callback_instances = []
# Final
# Objects (one-time events, usually when something is created) # Objects (one-time events, usually when something is created)
self.contexts = None self._contexts: DataModelIntermediateStorage = []
self.nodes = None self._nodes: DataModelIntermediateStorage = []
self.publishers = None self._publishers: DataModelIntermediateStorage = []
self.subscriptions = None self._subscriptions: DataModelIntermediateStorage = []
self.subscription_objects = None self._subscription_objects: DataModelIntermediateStorage = []
self.services = None self._services: DataModelIntermediateStorage = []
self.clients = None self._clients: DataModelIntermediateStorage = []
self.timers = None self._timers: DataModelIntermediateStorage = []
self._callback_objects: DataModelIntermediateStorage = []
self.callback_objects = None self._callback_symbols: DataModelIntermediateStorage = []
self.callback_symbols = None
# Events (multiple instances, may not have a meaningful index) # Events (multiple instances, may not have a meaningful index)
self.callback_instances = None self._callback_instances: DataModelIntermediateStorage = []
def add_context( def add_context(
self, context_handle, timestamp, pid, version self, context_handle, timestamp, pid, version
@ -209,7 +193,6 @@ class Ros2DataModel(DataModel):
self.callback_symbols = pd.DataFrame.from_dict(self._callback_symbols) self.callback_symbols = pd.DataFrame.from_dict(self._callback_symbols)
if self._callback_symbols: if self._callback_symbols:
self.callback_symbols.set_index('callback_object', inplace=True, drop=True) self.callback_symbols.set_index('callback_object', inplace=True, drop=True)
# Events (multiple instances, may not have a meaningful index)
self.callback_instances = pd.DataFrame.from_dict(self._callback_instances) self.callback_instances = pd.DataFrame.from_dict(self._callback_instances)
def print_data(self) -> None: def print_data(self) -> None: