Studies

Defined in dfx/api/StudyAPI.hpp

Studies are organized segments of analyses that guide the measurement process. Studies consist of Types, Templates and Assets. A study type is a general, high-level grouping for studies. A template is a pre-built study standard createdEpochSeconds and made available by the Nuralogix team. Templates are version controlled and named for use with a study.

Create

Creates a new study within an organization.

virtual CloudStatus dfx::api::StudyAPI::create(const CloudConfig &config, const std::string &name, const std::string &description, const std::string &studyTemplateID, const std::map<std::string, std::string> &studyConfig, std::string &studyID)

Create study will construct a new study based on the studyTemplateID.

Studies must be based on a pre-existing studyTemplateID.

Passing in config will override values available in the StudyType definition template.

Warning

The gRPC backend currently ignores any values passed in studyConfig map.

Parameters
  • config – provides all the cloud configuration settings

  • name – the name to give the newly created study

  • description – a short explanation for why this new study is needed

  • studyTemplateID – the template to base this new study off

  • studyConfig – any properties in the existing study to override

  • studyID – the newly created study identifier returned on CLOUD_OK

Returns

status of operation, CLOUD_OK on SUCCESS

Retrieve

virtual CloudStatus dfx::api::StudyAPI::list(const CloudConfig &config, const std::unordered_map<StudyFilter, std::string> &filters, uint16_t offset, std::vector<Study> &studies, int16_t &totalCount)

Retrieve a summary list of the studies.

Parameters
  • config – provides all the cloud configuration settings

  • filters

  • offset – to start the retrieval of records up to config.listLimit

  • studies – the returned studies

  • totalCount – the total number of records on the server

Returns

status of operation, CLOUD_OK on SUCCESS

virtual CloudStatus dfx::api::StudyAPI::retrieve(const CloudConfig &config, const std::string &studyID, Study &study)

Retrieve full study details for a specific studyID.

Parameters
  • config – provides all the cloud configuration settings

  • studyID – the study to retrieve the details

  • study – the returned study details on CLOUD_OK

Returns

status of operation, CLOUD_OK on SUCCESS

virtual CloudStatus dfx::api::StudyAPI::retrieveMultiple(const CloudConfig &config, const std::vector<std::string> &studyIDs, std::vector<Study> &studies)

Retrieve full study details for a StudySummary list.

Typically, this will be used in conjunction with the list method when more details are required beyond just the StudySummary id and name.

Parameters
  • config – provides all the cloud configuration settings

  • studyIDs – contains the list of study IDs

  • studies – the returned list of studies on CLOUD_OK

Returns

status of operation, CLOUD_OK on SUCCESS

Update

virtual CloudStatus dfx::api::StudyAPI::update(const CloudConfig &config, const std::string &studyID, const std::string &name, const std::string &description, StudyStatus status)

@breif Update an existing study based on the provided studyID.

Updates a particular study record with new information. Organizations can set the status of a particular study as well to record their name and description.

Parameters
  • config – provides all the cloud configuration settings

  • studyID – the study identifier to update

  • name – the new name for the study

  • description – the new description to use for the study

  • studyStatus – the new status for the study

Returns

status of operation, CLOUD_OK on SUCCESS

Delete

virtual CloudStatus dfx::api::StudyAPI::remove(const CloudConfig &config, const std::string &studyID)

Remove an existing study based on the provided studyID.

Note

For studies which have data retention, if there are any measurements associated with the study it can not be removed.

Parameters
  • config – provides all the cloud configuration settings

  • studyID – the study identifier to remove

Returns

status of operation, CLOUD_OK on SUCCESS