Source code for pyobs.robotic.scheduler.merits.beforetime

from __future__ import annotations
from typing import TYPE_CHECKING
from astropydantic import AstroPydanticTime  # type: ignore
from pydantic import Field

from .merit import Merit
from astropy.time import Time

if TYPE_CHECKING:
    from pyobs.robotic import Task
    from ..dataprovider import DataProvider


[docs] class BeforeTimeMerit(Merit): """Merit function that gives 1 before a given time.""" time: AstroPydanticTime = Field(default_factory=Time.now) async def __call__(self, time: Time, task: Task, data: DataProvider) -> float: return 1.0 if time <= self.time else 0.0
__all__ = ["BeforeTimeMerit"]