- Home
- Documentation
- API reference
- Archive
- hyperproc.archive.results
hyperproc.archive.results¶
Source-derived reference
Generated from the current hyperproc 0.1.2 checkout.
Implementation: hyperproc/archive/results.py. Signatures, defaults, docstrings, and expandable source are extracted statically; the module is not imported or executed. Names beginning with _ are implementation details, not a stable public API.
Use the function signature as the authority for individual parameter defaults and return annotations. Original docstrings sometimes group parameter names or wrap return descriptions across lines; these descriptions are preserved rather than inferred or rewritten.
What a search returns, whichever archive answered it.
Three archives back :mod:hyperproc.archive - NASA's CMR, NEON's own API and
DLR's STAC catalogue - and they describe a granule in three different
vocabularies. :class:Granule is the small common part: what it is called,
where and when it was taken, how big it is and where to fetch it. Everything
the backend knows and this does not stays in raw.
Granule
dataclass
¶
One granule, with the handful of fields a person actually chooses on.
| ATTRIBUTE | DESCRIPTION |
|---|---|
name |
the granule identifier the archive uses.
TYPE:
|
sensor, |
the
TYPE:
|
collection |
the archive's own collection id - a CMR
TYPE:
|
version |
collection version where the archive states one.
TYPE:
|
time |
acquisition start, naive UTC.
TYPE:
|
bbox |
TYPE:
|
size_mb |
TYPE:
|
cloud |
percent cloud where the provider reports it, else
TYPE:
|
links |
every file to fetch. For EMIT L2A that is the reflectance, the
mask and the uncertainty - the siblings :func:
TYPE:
|
browse |
a public quicklook image, where the archive publishes one that
can be fetched without a login. EMIT and the AVIRIS collections do;
PACE's browse URLs 404; DLR's thumbnails sit behind its sign-on and
NEON publishes none per delivery, so those are
TYPE:
|
raw |
the backend's own record, kept whole.
TYPE:
|
Source code in hyperproc/archive/results.py
name: str
instance-attribute
¶
sensor: str
instance-attribute
¶
level: str
instance-attribute
¶
collection: str
instance-attribute
¶
version: str | None
instance-attribute
¶
time: datetime | None
instance-attribute
¶
bbox: tuple[float, float, float, float] | None
instance-attribute
¶
size_mb: float | None
instance-attribute
¶
cloud: float | None
instance-attribute
¶
links: list[str] = field(default_factory=list)
class-attribute
instance-attribute
¶
browse: str | None = None
class-attribute
instance-attribute
¶
raw: Any = field(default=None, repr=False)
class-attribute
instance-attribute
¶
size_gb: float | None
property
¶
__init__(name: str, sensor: str, level: str, collection: str, version: str | None, time: datetime | None, bbox: tuple[float, float, float, float] | None, size_mb: float | None, cloud: float | None, links: list[str] = list(), browse: str | None = None, raw: Any = None) -> None
¶
__repr__() -> str
¶
Source code in hyperproc/archive/results.py
Results
¶
Bases: Sequence
What a search found: a sequence of :class:Granule, with a readable total.
Slices and indexes like a list, so hits[:3] is the first three and
hits[0] is one granule.
Source code in hyperproc/archive/results.py
_g = list(granules)
instance-attribute
¶
query = dict(query or {})
instance-attribute
¶
note = note
instance-attribute
¶
size_gb: float
property
¶
Total of the sizes that are known. See :attr:unsized.
unsized: int
property
¶
How many granules the archive gave no size for.
__init__(granules: Iterable[Granule], query: dict | None = None, note: str = '')
¶
Source code in hyperproc/archive/results.py
__len__() -> int
¶
__getitem__(i)
¶
__iter__()
¶
_total() -> str
¶
Source code in hyperproc/archive/results.py
__repr__() -> str
¶
table() -> str
¶
One line per granule: the listing you read before downloading.
Source code in hyperproc/archive/results.py
to_geodataframe()
¶
The footprints as a GeoDataFrame, for plotting. Needs geopandas.