Grassroots Infrastructure
The Grassroots Infrastructure is a suite of computing tools to help users and developers use scientific data infrastructure that can easily be interconnected.
The Pathogenomics Services Module

A Service that can display location- and time-based views of field sample collection. More...

Macros

#define PATHOGENOMICS_DB_S   ("pathogenomics")
 The name of the database to use to store all of the pathogenomics details. More...
 
#define PG_LIVE_DATE_SUFFIX_S   "_live_date"
 The suffix attached to various keys used to create an associated key that holds the value of when the first key's value should be made public. More...
 

Functions

ServicesArrayGetServices (UserDetails *user_p, GrassrootsServer *grassroots_p)
 Get the Service available for running the Pathogenomics Service. More...
 
void ReleaseServices (ServicesArray *services_p)
 Free the ServicesArray and its associated Pathogenomics Service. More...
 

Variables

const char * PG_SAMPLE_S = "sample"
 The key for specifying the object containing the sample metadata such as date collected, location, etc. More...
 
const char * PG_ID_S = "ID"
 The key for specifying the internal id of the sample. More...
 
const char * PG_UKCPVS_ID_S = "UKCPVS ID"
 The key for specifying the UK CPVS id of the sample. More...
 
const char * PG_GPS_S = "GPS"
 The key for specifying an object containing the GPS coordinates where the sample was collected. More...
 
const char * PG_POSTCODE_S = "Postal code"
 The key for specifying an object containing the postal code where the sample was collected. More...
 
const char * PG_TOWN_S = "Town"
 The key for specifying an object containing the town where the sample was collected. More...
 
const char * PG_COUNTY_S = "County"
 The key for specifying an object containing the county where the sample was collected. More...
 
const char * PG_COUNTRY_S = "Country"
 The key for specifying an object containing the country where the sample was collected. More...
 
const char * PG_DATE_S = "Date collected"
 The key used to define the data that sample was collected in the form yyyy-mm-dd. More...
 
const char * PG_RAW_DATE_S = "Date collected (compact)"
 The key used to define the data that sample was collected in the form yyyymmdd. More...
 
const char * PG_RUST_S = "Rust (YR/SR/LR)"
 The key used to define the pathogen that the sample was afflicted with. More...
 
const char * PG_GENOTYPE_S = "genotype"
 The key used to hold the object that contains all of the genotyping data for a given record. More...
 
const char * PG_PHENOTYPE_S = "phenotype"
 The key used to hold the object that contains all of the phenotyping data for a given record. More...
 
const char * PG_FILES_S = "files"
 The key for specifying any associated files for the given sample. More...
 
const char * PG_DISEASE_S = "Disease"
 The key used to get the object containing the disease characteristics for this sample. More...
 
const char * PG_VARIETY_S = "Variety"
 The key used to give the variety of the plant for this sample. More...
 
const char * PG_COLLECTOR_S = "Name/Collector"
 The key used to give the name of the person who collected the sample. More...
 
const char * PG_COMPANY_S = "Company"
 The key used to give the name of the company who collected the sample. More...
 
const char * PG_ADDRESS_S = "Address"
 The key used to give the address of the person who collected the sample. More...
 
const char * PG_PRIVATE_VIEW_S = "ignore_live_dates"
 The flag used to determine whether to ignore the publication date for a given sample. More...
 

Detailed Description

A Service that can display location- and time-based views of field sample collection.

This project is for storing sample data and metadata along with their phenotype and genotype data. As well as allowing text-based searches and results, a web-based map view allows user-friendly access to the information. General information can be found in the pathogenomics_service_guide documentation.

Macro Definition Documentation

◆ PATHOGENOMICS_DB_S

#define PATHOGENOMICS_DB_S   ("pathogenomics")

The name of the database to use to store all of the pathogenomics details.

◆ PG_LIVE_DATE_SUFFIX_S

#define PG_LIVE_DATE_SUFFIX_S   "_live_date"

The suffix attached to various keys used to create an associated key that holds the value of when the first key's value should be made public.

For example

"genotype": { ... }, "genotype_live_date": "2016-01-01"

Function Documentation

◆ GetServices()

ServicesArray* GetServices ( UserDetails *  user_p,
GrassrootsServer grassroots_p 
)

Get the Service available for running the Pathogenomics Service.

Parameters
user_pThe UserDetails for the user trying to access the services. This can be NULL.
Returns
The ServicesArray containing the Pathogenomics Service. or NULL upon error.

◆ ReleaseServices()

void ReleaseServices ( ServicesArray services_p)

Free the ServicesArray and its associated Pathogenomics Service.

Parameters
services_pThe ServicesArray to free.

Variable Documentation

◆ PG_SAMPLE_S

const char* PG_SAMPLE_S = "sample"

The key for specifying the object containing the sample metadata such as date collected, location, etc.

◆ PG_ID_S

const char* PG_ID_S = "ID"

The key for specifying the internal id of the sample.

◆ PG_UKCPVS_ID_S

const char* PG_UKCPVS_ID_S = "UKCPVS ID"

The key for specifying the UK CPVS id of the sample.

◆ PG_GPS_S

const char* PG_GPS_S = "GPS"

The key for specifying an object containing the GPS coordinates where the sample was collected.

◆ PG_POSTCODE_S

const char* PG_POSTCODE_S = "Postal code"

The key for specifying an object containing the postal code where the sample was collected.

◆ PG_TOWN_S

const char* PG_TOWN_S = "Town"

The key for specifying an object containing the town where the sample was collected.

◆ PG_COUNTY_S

const char* PG_COUNTY_S = "County"

The key for specifying an object containing the county where the sample was collected.

◆ PG_COUNTRY_S

const char* PG_COUNTRY_S = "Country"

The key for specifying an object containing the country where the sample was collected.

◆ PG_DATE_S

const char* PG_DATE_S = "Date collected"

The key used to define the data that sample was collected in the form yyyy-mm-dd.

◆ PG_RAW_DATE_S

const char* PG_RAW_DATE_S = "Date collected (compact)"

The key used to define the data that sample was collected in the form yyyymmdd.

◆ PG_RUST_S

const char* PG_RUST_S = "Rust (YR/SR/LR)"

The key used to define the pathogen that the sample was afflicted with.

◆ PG_GENOTYPE_S

const char* PG_GENOTYPE_S = "genotype"

The key used to hold the object that contains all of the genotyping data for a given record.

◆ PG_PHENOTYPE_S

const char* PG_PHENOTYPE_S = "phenotype"

The key used to hold the object that contains all of the phenotyping data for a given record.

◆ PG_FILES_S

const char* PG_FILES_S = "files"

The key for specifying any associated files for the given sample.

◆ PG_DISEASE_S

const char* PG_DISEASE_S = "Disease"

The key used to get the object containing the disease characteristics for this sample.

◆ PG_VARIETY_S

const char* PG_VARIETY_S = "Variety"

The key used to give the variety of the plant for this sample.

◆ PG_COLLECTOR_S

const char* PG_COLLECTOR_S = "Name/Collector"

The key used to give the name of the person who collected the sample.

◆ PG_COMPANY_S

const char* PG_COMPANY_S = "Company"

The key used to give the name of the company who collected the sample.

◆ PG_ADDRESS_S

const char* PG_ADDRESS_S = "Address"

The key used to give the address of the person who collected the sample.

◆ PG_PRIVATE_VIEW_S

const char* PG_PRIVATE_VIEW_S = "ignore_live_dates"

The flag used to determine whether to ignore the publication date for a given sample.

This is used for generating a private or internal view of the data before it is opened up to public access.