carp_core library

This library contains the entire carp_core API the CARP Mobile Sensing (CAMS) framework implemented in Flutter.

Classes

AccountIdentity
Identifies an Account.
ActiveParticipationInvitation
An invitation to participate in an active study deployment using the specified master devices. Some of the devices which the participant is invited to might already be registered. If the participant wants to use a different device, they will need to unregister the existing device first.
Add
AddVersion
AltBeacon
A beacon meeting the open AltBeacon standard.
BackgroundTask
A task which specifies that all containing measures and/or outputs should immediately start running in the background once triggered. The task runs for the specified duration, or until stopped, or until all measures and/or outputs have completed.
BatteryAwareSamplingConfiguration
A sampling configuration which changes based on how much battery the device has left.
ClientManager
Allows managing StudyRuntimes on a client device.
Core
Start class for this carp_core library. Just create a singleton instance:
CreateCustomProtocol
CreateStudyDeployment
A request for creating a deployment based on the protocol.
CustomProtocolDevice
A general-purpose master 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
A base class for a single unit of sensed information of a certain format.
DataEndPoint
Specify an endpoint where a DataManager can upload data.
DataEndPointTypes
A enumeration of known (but not necessarily implemented) endpoint API types.
DataFormat
Specifies the format of the data in a DataPoint.
DataManager
The DataManager interface is used to upload DataPoint data to any data manager that implements this interface.
DataManagerEvent
An event for a data manager.
DataManagerEventTypes
An enumeration of data manager event types.
DataPoint
A data point storing meta-information and the data.
DataPointHeader
The header (meta-data) attached to all DataPoints.
DataType
Specifies the type of a Measure.
DataTypeSamplingScheme
Specifies the sampling scheme for a data type, including possible options, defaults, and constraints.
DeploymentService
Application service which allows deploying StudyProtocols and retrieving MasterDeviceDeployments for participating master devices as defined in the protocol.
DeploymentServiceRequest
A DeploymentServiceRequest and all its sub-classes contain the data for sending a RPC request to the CARP web service.
DeploymentSuccessful
A request for reporting this deployment as successful.
DeviceConnection
DeviceDataCollector<TDeviceRegistration, TDeviceDescriptor>
Collects Data for a single device.
DeviceDataCollectorFactory
Supports creating and holding a registry of DeviceDataCollectors for devices.
DeviceDeploymentStatus
A DeviceDeploymentStatus represents the status of a device in a deployment.
DeviceDescriptor
Describes any type of electronic device, such as a smartphone, wearable device, a sensor, or internet service (e.g. FitBit API) that collects data which can be part of a StudyProtocol configuration and which collects measures via probes.
DeviceInvitation
Holds device invitation details.
DeviceRegistration
A DeviceRegistration configures a DeviceDescriptor as part of the deployment of a StudyProtocol.
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 AccountIdentity using an email adress.
End
Specify how a RecurrenceRule ends.
GetActiveParticipationInvitations
A request for getting the deployment invitations for an account id.
GetAllFor
GetBy
GetDeviceDeploymentFor
A request for getting the deployment for this master device.
GetParticipantData
A request for getting the status of a study deployment.
GetParticipantDataList
A request for getting the list of participation data for this a list of studyDeploymentIds.
GetStudyDeploymentStatus
A request for getting the status of a study deployment.
GetStudyDeploymentStatusList
A request for getting the status of a list of study deployment.
GetVersionHistoryFor
GranularitySamplingConfiguration
A SamplingConfiguration which allows specifying a desired level of granularity, corresponding to expected degrees of power consumption.
ManualTrigger
A trigger initiated by a user, i.e., the user decides when to start a task.
MasterDeviceDeployment
Contains the entire description and configuration for how a single master device participates in running a study.
MasterDeviceDescriptor
A device which aggregates, synchronizes, and optionally uploads incoming data received from one or more connected devices (potentially just itself).
Measure
Defines data that needs to be collected passively as part of a task defined by TaskConfiguration.
NameSpace
Enumeration of data type namespaces.
ParticipantAttribute
Describes expected data related to one or multiple participants in a study.
ParticipantData
Expected participant data for all participants in a study deployment with studyDeploymentId.
Participation
Uniquely identifies the participation of an account in a study deployment.
ParticipationService
Application service which allows inviting participants, retrieving participations for study deployments, and managing data related to participants which is input by users.
ParticipationServiceRequest
A ParticipationServiceRequest and its sub-classes contain the data for sending a participant request to the CARP web service.
ProtocolFactoryService
Factory methods to create a StudyProtocol according to predefined templates.
ProtocolService
Application service which allows managing (multiple versions of) StudyProtocols.
ProtocolServiceRequest
Serializable application service requests to ProtocolService.
ProtocolVersion
Specifies a specific version for a StudyProtocol, identified by a tag.
RecurrenceRule
Represents the iCalendar RFC 5545 standard recurrence rule to specify repeating events: https://tools.ietf.org/html/rfc5545#section-3.3.10
RegisterDevice
A request for registering this device.
SamplingConfiguration
Contains configuration on how to sample a data stream of a given type.
Scheduleable
An interface marking that a Trigger can be scheduled.
ScheduledTrigger
A trigger which starts a task according to a recurring schedule starting on the date that the study starts.
ServiceRequest
An abstract base class for all RPC requests to CARP.
SetParticipantData
A request for adding data for a participant.
Smartphone
An internet-connected phone with built-in sensors. Typically this phone for a StudyProtocol running on this phone.
Stop
A request for permanently stopping a study deployment.
Study
A study deployment, identified by studyDeploymentId, which a client device participates in with the role deviceRoleName.
StudyDeployment
A single instantiation of a StudyProtocol, taking care of common concerns related to devices when 'running' a study.
StudyDeploymentStatus
A StudyDeploymentStatus represents the status of a deployment as returned from the CARP web service.
StudyInvitation
A description of a study, shared with participants once they are invited to a study.
StudyProtocol
A description of how a study is to be executed, defining the type(s) of master device(s) (MasterDeviceDescriptor) responsible for aggregating data, the optional devices (DeviceDescriptor) connected to them, and the Triggers which lead to data collection on said devices.
StudyProtocolId
Uniquely identifies a study protocol by the ownerId and it's name.
StudyRuntime
Manage data collection for a specific master device deployment on a client device.
TaskDescriptor
A TaskDescriptor holds information about each task to be triggered by a Trigger as part of a StudyProtocol. Each task holds a list of Measures to be done as part of this task. A TaskDescriptor is hence an aggregation of Measures.
TimeOfDay
A time on a day in 24-hour format. Used in a ScheduledTrigger.
Trigger
Any condition on a device (DeviceDescriptor) which starts or stops TaskDescriptors at certain points in time when the condition applies. The condition can either be time-bound, based on data streams, initiated by a user of the platform, or a combination of these.
TriggeredTask
Specifies a task which at some point during a StudyProtocol gets sent to a specific device.
UnregisterDevice
A request for unregistering this device.
UpdateParticipantDataConfiguration

Enums

DeviceDeploymentStatusTypes
The types of device deployment status.
EndType
Specify how a RecurrenceRule may end as specified in End.
Frequency
Specify repeating events in a RecurrenceRule based on an interval of a chosen type or multiples thereof.
Granularity
The level of detail a data stream should be sampled at, corresponding to expected degrees of power consumption.
StudyDeploymentStatusTypes
The types of study deployment status.
StudyStatus
Describes the possible status' of a StudyRuntime.