Coverage for python/lsst/summit/utils/type_utils.py: 100%
35 statements
« prev ^ index » next coverage.py v7.4.4, created at 2024-04-10 05:48 -0700
« prev ^ index » next coverage.py v7.4.4, created at 2024-04-10 05:48 -0700
1from typing import Protocol
3import pandas as pd
4from astropy import units as u
6HAS_EFD_CLIENT = True
7try:
8 from lsst_efd_client import EfdClient
9except ImportError:
10 EfdClient = None
11 HAS_EFD_CLIENT = False
14class Event(Protocol):
15 """TMA Event."""
17 @property
18 def dayObs(self) -> int:
19 """Day of the observation."""
21 @property
22 def seqNum(self) -> int:
23 """Day of the observation."""
25 @property
26 def version(self) -> int:
27 """Version of the TMAEventMaker."""
30class M1M3ICSAnalysis(Protocol):
31 """M1M3ICSAnalysis."""
33 @property
34 def event(self) -> Event:
35 """Event."""
37 @property
38 def inner_pad(self) -> u.Quantity:
39 """Inner pad."""
41 @property
42 def outer_pad(self) -> u.Quantity:
43 """Outer pad."""
45 @property
46 def n_sigma(self) -> int:
47 """Number of sigma."""
49 @property
50 def client(self) -> EfdClient:
51 """EFD client."""
53 @property
54 def number_of_hardpoints(self) -> int:
55 """Number of hardpoints."""
57 @property
58 def measured_forces_topics(self) -> list:
59 """Measured forces topics."""
61 @property
62 def df(self) -> pd.DataFrame:
63 """Dataframe."""
65 @property
66 def stats(self) -> pd.DataFrame:
67 """Statistics."""