Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions SUPPORTED_INSTRUMENT_SOFTWARE.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ The parsers follow maturation levels of: Recommended, Candidate Release, Working
|Thermo Fisher Scientific VISIONlite|Recommended|BENCHLING/2023/12
.2+|dPCR|AppBio AbsoluteQ|Recommended|BENCHLING/2023/09
|Qiacuity dPCR|Recommended|BENCHLING/2023/09
.3+|qPCR|AppBio QuantStudio RT-PCR|Recommended|REC/2024/09
|AppBio QuantStudio Design & Analysis|Recommended|REC/2024/09
|Bio-Rad CFX Maestro|Recommended|REC/2024/09
.3+|qPCR|AppBio QuantStudio RT-PCR|Recommended|REC/2026/03
|AppBio QuantStudio Design & Analysis|Recommended|REC/2026/03
|Bio-Rad CFX Maestro|Recommended|REC/2026/03
|===
270 changes: 270 additions & 0 deletions src/allotropy/allotrope/models/adm/core/rec/_2026/_03/core.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,270 @@
# generated by allotropy.schema_gen
# Re-exports imported types so downstream modules can import from here.
# ruff: noqa: F401

from __future__ import annotations

from dataclasses import dataclass, field
from typing import Any

from allotropy.allotrope.models.shared.definitions.definitions import (
TClass,
TQuantityValue,
TStatisticDatumRole,
TUnit,
)


@dataclass(frozen=True, kw_only=True)
class Asm:
pass


@dataclass(frozen=True, kw_only=True)
class MixedItem:
field_type: TClass = field(metadata={"json_name": "@type"})


@dataclass(frozen=True, kw_only=True)
class OrderedItem:
field_index: int | None = field(default=None, metadata={"json_name": "@index"})


TArray = list[Any]


@dataclass(frozen=True, kw_only=True)
class TBooleanValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: bool


@dataclass(frozen=True, kw_only=True)
class TByteValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: int


@dataclass(frozen=True, kw_only=True)
class TDateTimeStampValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: str


@dataclass(frozen=True, kw_only=True)
class TDateTimeValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: str


@dataclass(frozen=True, kw_only=True)
class TDateValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: str


@dataclass(frozen=True, kw_only=True)
class TDecimalValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: float


@dataclass(frozen=True, kw_only=True)
class TDoubleValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: float


@dataclass(frozen=True, kw_only=True)
class TDurationValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: str


@dataclass(frozen=True, kw_only=True)
class TFloatValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: float


@dataclass(frozen=True, kw_only=True)
class TIRIValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: str


@dataclass(frozen=True, kw_only=True)
class TIntValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: int


@dataclass(frozen=True, kw_only=True)
class TIntegerValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: int


@dataclass(frozen=True, kw_only=True)
class TLongValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: int


TNamed = str


@dataclass(frozen=True, kw_only=True)
class TObject:
pass


TReference = str


TResource = str


@dataclass(frozen=True, kw_only=True)
class TShortValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: int


@dataclass(frozen=True, kw_only=True)
class TStringValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: str


@dataclass(frozen=True, kw_only=True)
class TTimeValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: str


@dataclass(frozen=True, kw_only=True)
class TUnsignedByteValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: int


@dataclass(frozen=True, kw_only=True)
class TUnsignedIntValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: int


@dataclass(frozen=True, kw_only=True)
class TUnsignedLongValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: int


@dataclass(frozen=True, kw_only=True)
class TUnsignedShortValueItem:
field_type: TClass = field(metadata={"json_name": "@type"})
value: int


TBooleanValue = TBooleanValueItem | bool


TByteValue = TByteValueItem | int


TDateTimeStampValue = TDateTimeStampValueItem | str


TDateTimeValue = TDateTimeValueItem | str


TDateValue = TDateValueItem | str


TDecimalValue = TDecimalValueItem | float


TDoubleValue = TDoubleValueItem | float


TDurationValue = TDurationValueItem | str


TFloatValue = TFloatValueItem | float


TIRIValue = TIRIValueItem | str


TIntValue = TIntValueItem | int


TIntegerValue = TIntegerValueItem | int


TLongValue = TLongValueItem | int


TShortValue = TShortValueItem | int


TStringValue = TStringValueItem | str


TTimeValue = TTimeValueItem | str


TUnsignedByteValue = TUnsignedByteValueItem | int


TUnsignedIntValue = TUnsignedIntValueItem | int


TUnsignedLongValue = TUnsignedLongValueItem | int


TUnsignedShortValue = TUnsignedShortValueItem | int


TNumericValue = (
TByteValue
| TDecimalValue
| TDoubleValue
| TFloatValue
| TIntValue
| TIntegerValue
| TLongValue
| TShortValue
| TUnsignedByteValue
| TUnsignedIntValue
| TUnsignedLongValue
| TUnsignedShortValue
)


TOrderedValue = (
TDateTimeStampValue
| TDateTimeValue
| TDateValue
| TNumericValue
| TStringValue
| TTimeValue
)


@dataclass(frozen=True, kw_only=True)
class TRangeValue:
max_exclusive: TOrderedValue | None = field(
default=None, metadata={"json_name": "maxExclusive"}
)
max_inclusive: TOrderedValue | None = field(
default=None, metadata={"json_name": "maxInclusive"}
)
min_exclusive: TOrderedValue | None = field(
default=None, metadata={"json_name": "minExclusive"}
)
min_inclusive: TOrderedValue | None = field(
default=None, metadata={"json_name": "minInclusive"}
)
unit: TUnit | None = None
114 changes: 114 additions & 0 deletions src/allotropy/allotrope/models/adm/core/rec/_2026/_03/cube.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
# generated by allotropy.schema_gen

from __future__ import annotations

from dataclasses import dataclass, field
from enum import Enum

from allotropy.allotrope.models.adm.core.rec._2026._03.core import (
TClass,
TUnit,
)


class ComponentDatatype(Enum):
double = "double"
float = "float"
decimal = "decimal"
integer = "integer"
byte = "byte"
int = "int"
short = "short"
long = "long"
string = "string"
boolean = "boolean"
date_time = "dateTime"


class Scale(Enum):
nominal = "nominal"
ordinal = "ordinal"
cardinal = "cardinal"
interval = "interval"
range = "range"


TBooleanArray = list[bool]


TBooleanOrNullArray = list[None | bool]


TNumberArray = list[float]


TNumberOrNullArray = list[None | float]


TStringArray = list[str]


TStringOrNullArray = list[None | str]


TTupleData = list[None | bool | float | str]


class Type(Enum):
linear = "linear"
logarithmic = "logarithmic"


@dataclass(frozen=True, kw_only=True)
class TDatacubeComponent:
field_component_datatype: ComponentDatatype = field(
metadata={"json_name": "@componentDatatype"}
)
concept: TClass
scale: Scale | None = None
unit: TUnit | None = None


TDimensionArray = TBooleanArray | TNumberArray | TStringArray


TMeasureArray = TBooleanOrNullArray | TNumberOrNullArray | TStringOrNullArray


@dataclass(frozen=True, kw_only=True)
class TFunction:
incr: float | None = None
length: float | None = None
start: float | None = None
type: Type | None = None


@dataclass(frozen=True, kw_only=True)
class TDatacubeStructure:
dimensions: list[TDatacubeComponent]
measures: list[TDatacubeComponent]


@dataclass(frozen=True, kw_only=True)
class TMeasureData:
measures: list[TMeasureArray] | None = None
points: list[TTupleData] | None = None


@dataclass(frozen=True, kw_only=True)
class TDimensionData:
dimensions: list[TDimensionArray | TFunction]


@dataclass(frozen=True, kw_only=True)
class TDatacubeData(TDimensionData, TMeasureData):
pass


@dataclass(frozen=True, kw_only=True)
class TDatacube:
cube_structure: TDatacubeStructure | None = field(
default=None, metadata={"json_name": "cube-structure"}
)
data: TDatacubeData | None = None
label: str | None = None
Loading
Loading