domain/domain library

The CAMS implementation of the core CARP domain classes like StudyProtocol, TaskDescriptor, and Measure. Also hold JSON serialization and deseralization logic to handle seraialization of the domain objects.

Classes

AppTask
A task that notifies the app when it is triggered.
CAMSDataType
Enumeration of data types used in DataType and DataFormat.
CARPTransformerSchema
A default DatumTransformerSchema for CARP no-operation transformers
ConditionalEvent
Specified the configuration of an event in a SamplingEventTrigger.
ConditionalPeriodicTrigger
A trigger that periodically checks if application-specific resume and pause conditions are meet.
ConditionalSamplingEventTrigger
A trigger that resume and pause sampling when some (other) sampling event occurs and a application-specific condition is meet.
CronScheduledTrigger
A trigger that resume sampling based on a cron job specification.
DateTimeTrigger
A trigger that starts sampling based on a schedule of a date and time, and runs for a specific duration.
Datum
A base (abstract) class for a single unit of sensed information.
DatumTransformerFactory
A factory which can create a DatumTransformer.
DatumTransformerSchema
An abstract class defining a transformer schema, which hold a set of DatumTransformers that can map from the native CARP namespace to another namespace. A DatumTransformerSchema must be implemented for each supported namespace.
DelayedTrigger
A trigger that delays sampling for delay and then starts sampling. Never stops sampling once started.
DeviceInfo
Provides (static) information about the local device.
ErrorDatum
A Datum object holding a Error, i.e. that the probe / sensor returned some sort of error, which is reported back.
FHIRTransformerSchema
A default DatumTransformerSchema for HL7 FHIR transformers
FileDataEndPoint
Specify an endpoint where a file-based DataManager can store JSON data as files on the local device.
FileDatum
A Datum object holding a link to a file.
FunctionTask
A task that can run a custom Dart function.
HistoricSamplingConfiguration
A sampling configuration which allows configuring the time back in the past and into the future to collect data.
ImmediateTrigger
A trigger that starts sampling immediately and never stops.
IntervalSamplingConfiguration
A sampling configuration which allows configuring the time interval in between subsequent measurements.
IntervalTrigger
A trigger that resume sampling every period and then pauses.
MapDatum
A generic Datum that holds a map of key, value string objects.
MultiDatum
A Datum object holding multiple Datums of the same type.
OMHTransformerSchema
A default DatumTransformerSchema for Open mHealth (OMH) transformers
OneTimeTrigger
A trigger that triggers once during a deployment.
OnlineService
An online service which works as a "software device" in a protocol.
PassiveTrigger
A trigger that waits to be started until the resume method is called. Is paused by calling the pause method.
PeriodicSamplingConfiguration
A sampling configuration specifying how to collect data on a regular basis for a specific period.
PeriodicTrigger
A trigger that resumes sampling every period for a specific duration.
PersistentSamplingConfiguration
A sampling configuration that saves the last time it was sampled.
PrivacySchema
A default DatumTransformerSchema for privacy transformers
RandomRecurrentTrigger
A daily trigger that triggers a random number of times within a defined period of time of the day.
RecurrentScheduledTrigger
A trigger that resume sampling based on a recurrent scheduled date and time.
SamplingEventTrigger
A trigger that resume and pause sampling when some (other) sampling event occurs.
SamplingSchema
Specifies a set of SamplingConfigurations for a set of Measure types.
SmartphoneDeployment
Contains the entire description and configuration for how a smartphone master device participates in the deployment of a study on a smartphone.
SmartphoneDeploymentListener
A Listener that can listen on changes to a SmartphoneDeployment.
SmartphoneStudyProtocol
A description of how a study is to be executed on a smartphone.
SQLiteDataEndPoint
Specify an endpoint for using the SQLiteDataManager to store JSON data in a SQLite database locally on the phone.
StringDatum
A simple Datum that only holds a string datum object.
StudyDescription
StudyResponsible
A person who is responsible for a StudyProtocol. Typically the Principal Investigator (PI) who is responsible for the study.
TransformerSchemaRegistry
A registry of DatumTransformerSchemas which hold a set of DatumTransformers.
UserTaskTrigger
A trigger that triggers based on the state of a UserTask.

Enums

RecurrentType
Type of recurrence for a RecurrentScheduledTrigger.

Functions

noop(Datum datum) Datum
A no-operation transformer.

Typedefs

ConditionalEvaluator = bool Function()
Evaluates if a ConditionalPeriodicTrigger should resume or pause. Returns true if resume or pause should happen, false otherwise.
ConditionalEventEvaluator = bool Function(DataPoint dataPoint)
Takes a DataPoint from a sampling stream and evaluates if an event has occurred. Returns true if the event has occurred, false otherwise.
DatumTransformer = Datum Function(Datum)
Signature of a data transformer.
VoidFunction = void Function()
Signature of Dart function that have no arguments and return no data.