Skip to content

common

Base types shared by all CARP Core subsystems.

Holds the building blocks of a protocol: devices (DeviceConfiguration, DeviceRegistration), tasks (TaskConfiguration), triggers (TriggerConfiguration), task controls (TaskControl), measures (Measure) and sampling configurations (SamplingConfiguration). It also defines the collected data types (Data, CarpDataTypes), participant input data (InputData) and accounts (Account).

See the carp.common definition in Kotlin.

Classes

  • Acceleration — Change in velocity, including gravity, along perpendicular x, y, and z axes in meters per second squared (m/s^2). Typically captured by an accelerometer.
  • Account — Uniquely identifies an account and its associated identity.
  • AccountIdentity — Identifies an Account.
  • AddressInput — The full address of a participant.
  • AltBeacon — A beacon meeting the open AltBeacon standard.
  • AltBeaconDeviceRegistration — A DeviceRegistration for AltBeacon specifying which beacon to listen to.
  • AssignedTo — Determines which participant roles to assign to something.
  • BLEHeartRateDevice — A Bluetooth Low Energy (BLE) device which implements a GATT Heart Rate service (https://www.bluetooth.com/specifications/gatt/services/).
  • BackgroundTask — A task which specifies that all containing measures and/or outputs should immediately start running in the background once triggered.
  • BatteryAwareSamplingConfiguration — A sampling configuration which changes based on how much battery the device has left.
  • CarpDataTypes — The data types defined in CARP Core, and a registry of their metadata.
  • CompletedTask — Data about an interactive user task with taskName, which has been completed.
  • CustomInput — Custom input data as requested by a researcher, of type InputType.CUSTOM.
  • CustomProtocolDevice — A general-purpose primary device for custom protocols. Only used when downloading custom protocols from the CARP web service.
  • CustomProtocolTask — A task which contains a definition of a custom protocol which differs from the CARP domain model.
  • Data — Base class of all collected data, such as a location or a heart rate.
  • DataType — Identifies a type of data by namespace and name.
  • DataTypeMetaData — Metadata about a data type: display name and how it relates to time.
  • DataTypeSamplingScheme — Specifies the sampling scheme for a data type (dataType), including possible options, defaults, and constraints.
  • DataTypeSamplingSchemeMap — A set of DataTypeSamplingSchemes mapped to their data type as String.
  • DefaultDeviceConfiguration — A DeviceConfiguration with no extra properties, for generic devices.
  • DefaultDeviceRegistration — A concrete DeviceRegistration which only holds the base properties.
  • DeviceConfiguration — Describes a device that takes part in a study, as part of a protocol.
  • DeviceRegistration — Identifies the physical device that fills a DeviceConfiguration role in a deployment.
  • DiagnosisInput — The diagnosis of a patient.
  • ECG — Electrocardiogram data of a single lead.
  • EDA — Single-channel electrodermal activity (EDA) data, represented as skin conductance. Among others, also known as galvanic skin response (GSR) or skin conductance response/level.
  • EducationalDegreeInput — Highest completed educational degree, mapped to the ISCED framework for cross-country comparability.
  • ElapsedTimeTrigger — A trigger which starts a task after elapsedTime has elapsed since the start of a study deployment, i.e. when a protocol is deployed on the phone for the first time.
  • EmailAccountIdentity — Identifies an account by a unique emailAddress.
  • End — Specify how a RecurrenceRule ends.
  • Error — Indicates that some error occurred during data collection. message holds any message about the error which might have been captured.
  • ExpectedParticipantData — Describes a participant attribute that pertains to all or specified participants in a study.
  • FullNameInput — The full name of a participant.
  • Geolocation — Geolocation data as latitude and longitude in decimal degrees within the World Geodetic System 1984.
  • GranularitySamplingConfiguration — A SamplingConfiguration which allows specifying a desired level of granularity, corresponding to expected degrees of power consumption.
  • HeartRate — Heart rate data in beats per minute (bpm).
  • IllegalArgumentException — Exception thrown when the argument provided to a method is invalid.
  • IllegalStateException — Exception thrown when the application is in an illegal state.
  • InformedConsentInput — The informed consent from a participant.
  • InputData — Base class for data about a participant that is entered by a user.
  • InputType — The type names of all supported participant input data.
  • MACAddressDeviceRegistration — A DeviceRegistration for devices which have a MAC address.
  • MagneticField — Magnetic field of the device in 3D space, measured in microteslas μT for each three-dimensional axis. Typically captured by a magnetometer sensor.
  • ManualTrigger — A trigger initiated by a user, i.e., the user decides when to start a task.
  • Measure — Defines one type of data to collect passively as part of a task.
  • MonitoringTask — A task which is used for monitoring the execution of the data sampling collecting data on CompletedTask, TriggeredTask, and Error.
  • NameSpace — Known data type namespaces, as used in DataType.namespace.
  • NoOptionsSamplingConfiguration — A sampling configuration which does not provide any configuration options.
  • NotConfiguredException — Exception thrown when a required component has not been configured properly.
  • NoteInput — A general note about the participant.
  • OccupationInput — Occupation details of a participant (supports multiple selections).
  • OnboardingResearcherInput — Information about the researcher who onboarded the participant.
  • ParticipantAttribute — Describes expected data to be input by users related to one or multiple participants in a study.
  • ParticipantRole — Describes a participant playing a role in a study, and whether this role isOptional.
  • PersonalComputer — Configuration of an internet-connected personal computer with no built-in sensors.
  • PersonalComputerRegistration — A DeviceRegistration for a PersonalComputer specifying details of the PC.
  • PhoneNumberInput — The phone number of a participant.
  • PreferredLanguageInput — Preferred language of the participant.
  • PrimaryDeviceConfiguration — A device which aggregates, synchronizes, and optionally uploads incoming data received from one or more connected devices (potentially just itself).
  • RecurrenceRule — Represents the iCalendar RFC 5545 standard recurrence rule to specify repeating events: https://tools.ietf.org/html/rfc5545#section-3.3.10
  • Rotation — Rate of rotation of the device around the x, y and z axes. Typically captured by a gyroscope.
  • SamplingConfiguration — Contains configuration on how to sample a data stream of a given type.
  • Schedulable — Marks a TriggerConfiguration whose firing times can be computed ahead.
  • ScheduledTrigger — A trigger which starts a task according to a recurring schedule starting on the date that the study starts.
  • SensorData — Holds data for a DataType collected by a sensor which may include additional sensorSpecificData.
  • ServiceRequest — Base class for all RPC requests to the CARP services.
  • SexInput — The biological sex assigned at birth of a participant.
  • SignalStrength — The relative received signal strength of a wireless device. The unit of the received signal strength indicator (rssi) is arbitrary and determined by the chip manufacturer, but the greater the value, the stronger the signal.
  • Smartphone — Configuration of an internet-connected smartphone with built-in sensors.
  • Snapshot — A versioned snapshot of a CARP Core domain object.
  • SocialSecurityNumberInput — The social security number (SSN) of a participant.
  • StepCount — Step count data as number of steps taken in a corresponding time interval.
  • TaskConfiguration — A named group of Measures that a device runs when a trigger fires.
  • TaskControl — Links a trigger to a task: when the trigger fires, start or stop the task.
  • TimeOfDay — A time on a day in 24-hour format. Used in a ScheduledTrigger.
  • TriggerConfiguration — A condition on a device that starts or stops tasks when it applies.
  • TriggeredTask — Indicates the task with taskName was started or stopped (control) by the trigger with triggerId on the device with destinationDeviceRoleName, referring to identifiers in the study protocol. triggerData may contain additional information related to the circumstances which caused the trigger to fire.
  • UsernameAccountIdentity — Identifies an account by a unique username.
  • WebBrowser — Configuration of an internet-connected web browser device with no built-in sensors.
  • WebBrowserRegistration — A DeviceRegistration for a WebBrowser specifying details of the browser.
  • WebTask — Redirects to a web page which contains the task which needs to be performed. The passive measures are started when the website is opened and stopped when it is closed.

Enums

  • Control — Determines what to do with a task once the condition of a trigger is met: Start or Stop it.
  • DataTimeType — Describes how Data for a DataType is stored temporally.
  • EndType — The kinds of End of a RecurrenceRule: after a time (UNTIL), after a number of occurrences (COUNT), or NEVER.
  • Frequency — The interval unit at which a RecurrenceRule repeats.
  • Granularity — The level of detail a data stream should be sampled at, corresponding to expected degrees of power consumption.
  • IscedLevel — The ISCED framework education levels.
  • Sex — Biological sex of a person.