Example #1
0
class Activity(HasTraits):
    """ Activity (tool) information """
    @classmethod
    def from_provenance(cls, activity: _ActivityProvenance):
        """ construct Activity metadata from existing ActivityProvenance object"""
        return Activity(
            name=activity["activity_name"],
            type_="software",
            id_=activity["activity_uuid"],
            start_time=activity["start"]["time_utc"],
            software_name="ctapipe",
            software_version=activity["system"]["ctapipe_version"],
        )

    name = Unicode()
    type_ = Unicode("software")
    id_ = Unicode()
    start_time = AstroTime()
    software_name = Unicode("unknown")
    software_version = Unicode("unknown")

    # pylint: disable=no-self-use
    @default("start_time")
    def default_time(self):
        """ default time is now """
        return Time.now().iso
Example #2
0
class Product(HasTraits):
    """Data product information"""

    description = Unicode("unknown")
    creation_time = AstroTime()
    id_ = Unicode(help="leave unspecified to automatically generate a UUID")
    data_category = Enum(["S", "A", "B", "C", "Other"], "Other")
    data_level = Enum(
        ["R0", "R1", "DL0", "DL1", "DL2", "DL3", "DL4", "DL5", "DL6", "Other"],
        "Other")
    data_association = Enum(["Subarray", "Telescope", "Target", "Other"],
                            "Other")
    data_model_name = Unicode("unknown")
    data_model_version = Unicode("unknown")
    data_model_url = Unicode("unknown")
    format = Unicode()

    # pylint: disable=no-self-use
    @default("creation_time")
    def default_time(self):
        """ return current time by default """
        return Time.now().iso

    @default("id_")
    def default_product_id(self):
        """ default id is a UUID """
        return str(uuid.uuid4())
Example #3
0
 class NoNone(Component):
     time = AstroTime(default_value="2012-01-01T20:00", allow_none=False)
Example #4
0
 class AllowNone(Component):
     time = AstroTime(default_value=None, allow_none=True)
Example #5
0
 class SomeComponentWithTimeTrait(Component):
     time = AstroTime()