Source code for tatc.schemas.architecture

# -*- coding: utf-8 -*-
"""
Object schemas for architectures.

@author: Paul T. Grogan <pgrogan@stevens.edu>
"""

from typing import List, Union

from pydantic import BaseModel, Field

from .satellite import Satellite, TrainConstellation, WalkerConstellation
from .point import GroundStation


[docs]class Architecture(BaseModel): """ Mission architecture. """ name: str = Field(..., description="Name of this mission.") satellites: List[Union[Satellite, TrainConstellation, WalkerConstellation]] = Field( [], description="List of member space systems." ) stations: List[GroundStation] = Field( [], description="List of member ground stations." )