2024-01-21 07:57:32 -05:00
|
|
|
from dataclasses import dataclass
|
|
|
|
|
from typing import TYPE_CHECKING
|
|
|
|
|
|
|
|
|
|
from wpimath.geometry import Pose3d
|
|
|
|
|
|
|
|
|
|
from .photonTrackedTarget import PhotonTrackedTarget
|
|
|
|
|
|
|
|
|
|
if TYPE_CHECKING:
|
|
|
|
|
from .photonPoseEstimator import PoseStrategy
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@dataclass
|
|
|
|
|
class EstimatedRobotPose:
|
|
|
|
|
"""An estimated pose based on pipeline result"""
|
|
|
|
|
|
|
|
|
|
estimatedPose: Pose3d
|
|
|
|
|
"""The estimated pose"""
|
|
|
|
|
|
|
|
|
|
timestampSeconds: float
|
|
|
|
|
"""The estimated time the frame used to derive the robot pose was taken"""
|
|
|
|
|
|
2024-02-02 14:17:53 -06:00
|
|
|
targetsUsed: list[PhotonTrackedTarget]
|
2024-01-21 07:57:32 -05:00
|
|
|
"""A list of the targets used to compute this pose"""
|
|
|
|
|
|
|
|
|
|
strategy: "PoseStrategy"
|
|
|
|
|
"""The strategy actually used to produce this pose"""
|