Skip to content

API Overview

Abstract Data Entities

The copick API allows object-oriented access to cryoET data entities. Each data entity has a corresponding metadata model defined in pydantic. There is a set of abstract base classes that define the common interface for all data entities and the associated metadata models. The data entities are organized in a hierarchy that reflects the on-disk data model of copick and the structure of a typical cryoET dataset.

The abstract data entities are defined in the copick.models module and given in the table below.

Data Entity Class Metadata Class
Project Root CopickRoot CopickConfig
... Copick Object CopickObject PickableObject
... Run CopickRun CopickRunMeta
...... Picks CopickPicks CopickPicksFile
...... Mesh CopickMesh CopickMeshMeta
...... Segmentation CopickSegmentation CopickSegmentationMeta
...... Voxel Spacing CopickVoxelSpacing CopickVoxelSpacingMeta
......... Tomogram CopickTomogram CopickTomogramMeta
......... Features CopickFeatures CopickFeaturesMeta

Implementations

There are concrete implementations of the abstract data entities that are used to access data in a copick dataset.

  • Overlay: An extenstion to the abstract copick API implementation that adds methods to seamlessly overlay data from different sources.
  • Filesystem: A concrete implementation that reads and writes data to any storage supported by fsspec.