gaia_access 0.2.0

Access the Gaia ESA Archive for astronomical data.
Documentation
// This code is generated by generate_code.py, do not modify it manually.

//! This module contains all the known columns in the variable_summary table.

use crate::traits::{Column, Table};

/// Table with variability summary of sources with photVariableFlag =
/// “VARIABLE” in the GaiaSource table.
#[allow(non_camel_case_types)]
pub struct variable_summary;

impl Table for variable_summary {
    fn string(&self) -> String {
        "variable_summary".to_string()
    }
}

/// The columns in the variable_summary table.
#[allow(non_camel_case_types)]
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, strum::Display)]
pub enum Col {
    /// All Gaia data processed by the Data Processing and Analysis Consortium
    /// comes tagged with a solution identifier. This is a numeric field
    /// attached to each table row that can be used to unequivocally identify
    /// the version of all the subsystems that where used in the generation of
    /// the data as well as the input data used. It is mainly for internal DPAC
    /// use but is included in the published data releases to enable end users
    /// to examine the provenance of processed data products. To decode a given
    /// solution ID visit
    solution_id,
    /// A unique single numerical identifier of the source obtained from
    /// GaiaSource (for a detailed description see GaiaSource.sourceId)
    source_id,
    /// Identified 1st fundamental frequencies in the photometric G band, copied
    /// from either the Cepheid or Rrlyrae table depending on the value of
    /// classification.
    phot_variable_fundam_freq1,
    /// Photometric variability classification for the types included in this
    /// data release: ‘RRLYR’ (RR Lyrae) or ‘CEP’ (Cepheid). The tables Cepheid
    /// and Rrlyrae contain detailed results for each type.
    classification,
}

impl Column for Col {}

#[cfg(test)]
/// Collects all the known columns in the variable_summary table.
pub fn collect_known(map: &mut std::collections::HashMap<String, Vec<String>>) {
    let mut col_strings = Vec::new();
    col_strings.push(Col::solution_id.to_string());
    col_strings.push(Col::source_id.to_string());
    col_strings.push(Col::phot_variable_fundam_freq1.to_string());
    col_strings.push(Col::classification.to_string());
    map.insert(variable_summary.string(), col_strings);
}