take image metadata generation
This commit is contained in:
@ -1,4 +1,3 @@
|
||||
use lazy_static::lazy_static;
|
||||
use num_enum::{IntoPrimitive, TryFromPrimitive};
|
||||
use once_cell::sync::OnceCell;
|
||||
use satrs::events::{EventU32TypedSev, SeverityInfo};
|
||||
@ -29,8 +28,11 @@ pub const VALID_PACKET_ID_LIST: &[PacketId] = &[PacketId::new_for_tc(true, EXPER
|
||||
pub const SPP_CLIENT_WIRETAPPING_RX: bool = false;
|
||||
pub const SPP_CLIENT_WIRETAPPING_TX: bool = false;
|
||||
|
||||
pub const VERSION: Option<&str> = option_env!("CARGO_PKG_VERSION");
|
||||
|
||||
pub static TO_GROUND_FOLDER_DIR: OnceCell<PathBuf> = OnceCell::new();
|
||||
pub static TO_GROUND_LP_FOLDER_DIR: OnceCell<PathBuf> = OnceCell::new();
|
||||
pub static HOME_PATH: OnceCell<PathBuf> = OnceCell::new();
|
||||
|
||||
#[derive(Copy, Clone, PartialEq, Eq, Debug, TryFromPrimitive, IntoPrimitive)]
|
||||
#[repr(u8)]
|
||||
@ -53,31 +55,32 @@ pub enum GroupId {
|
||||
pub const TEST_EVENT: EventU32TypedSev<SeverityInfo> =
|
||||
EventU32TypedSev::<SeverityInfo>::new(GroupId::Tmtc as u16, 0);
|
||||
|
||||
pub const VERSION: Option<&str> = option_env!("CARGO_PKG_VERSION");
|
||||
pub fn set_up_home_path() {
|
||||
let mut home_path = PathBuf::new();
|
||||
let home_path_default = homedir::get_my_home()
|
||||
.expect("Getting home dir from OS failed.")
|
||||
.expect("No home dir found.");
|
||||
|
||||
lazy_static! {
|
||||
pub static ref HOME_PATH: PathBuf = {
|
||||
let mut home_path = PathBuf::new();
|
||||
let home_path_default = homedir::get_my_home()
|
||||
.expect("Getting home dir from OS failed.")
|
||||
.expect("No home dir found.");
|
||||
|
||||
home_path.push(if Path::new(HOME_FOLDER_EXPERIMENT).exists() {
|
||||
HOME_FOLDER_EXPERIMENT
|
||||
} else {
|
||||
home_path_default
|
||||
.to_str()
|
||||
.expect("Error converting to string.")
|
||||
});
|
||||
home_path
|
||||
};
|
||||
home_path.push(if Path::new(HOME_FOLDER_EXPERIMENT).exists() {
|
||||
HOME_FOLDER_EXPERIMENT
|
||||
} else {
|
||||
home_path_default
|
||||
.to_str()
|
||||
.expect("Error converting to string.")
|
||||
});
|
||||
HOME_PATH
|
||||
.set(home_path)
|
||||
.expect("attempting to set once cell twice")
|
||||
}
|
||||
|
||||
pub fn set_up_low_prio_ground_dir() {
|
||||
pub fn set_up_low_prio_ground_dir(base_path: PathBuf) {
|
||||
/*
|
||||
#[cfg(feature = "host")]
|
||||
let mut to_ground_lp_dir = std::env::current_dir().expect("getting current dir failed");
|
||||
#[cfg(not(feature = "host"))]
|
||||
let mut to_ground_lp_dir = HOME_PATH.clone();
|
||||
let mut to_ground_lp_dir = home_path;
|
||||
*/
|
||||
let mut to_ground_lp_dir = base_path.to_path_buf();
|
||||
to_ground_lp_dir.push(TO_GROUND_LP_FOLDER_NAME);
|
||||
if !Path::new(&to_ground_lp_dir).exists() {
|
||||
log::info!(
|
||||
@ -96,11 +99,14 @@ pub fn set_up_low_prio_ground_dir() {
|
||||
.expect("attemting to set once cell twice");
|
||||
}
|
||||
|
||||
pub fn set_up_ground_dir() {
|
||||
pub fn set_up_ground_dir(base_path: PathBuf) {
|
||||
/*
|
||||
#[cfg(feature = "host")]
|
||||
let mut to_ground_dir = std::env::current_dir().expect("getting current dir failed");
|
||||
#[cfg(not(feature = "host"))]
|
||||
let mut to_ground_dir = HOME_PATH.clone();
|
||||
*/
|
||||
let mut to_ground_dir = base_path.to_path_buf();
|
||||
to_ground_dir.push(TO_GROUND_FOLDER_NAME);
|
||||
if !Path::new(&to_ground_dir).exists() {
|
||||
log::info!("creating to ground directory at {:?}", to_ground_dir);
|
||||
@ -123,7 +129,7 @@ pub mod cfg_file {
|
||||
path::{Path, PathBuf},
|
||||
};
|
||||
|
||||
use super::{CONFIG_FILE_NAME, HOME_PATH, TCP_SPP_SERVER_PORT};
|
||||
use super::{CONFIG_FILE_NAME, TCP_SPP_SERVER_PORT};
|
||||
|
||||
pub const SPP_CLIENT_PORT_CFG_KEY: &str = "tcp_spp_server_port";
|
||||
|
||||
@ -140,8 +146,8 @@ pub mod cfg_file {
|
||||
}
|
||||
}
|
||||
|
||||
pub fn create_app_config() -> AppCfg {
|
||||
let mut cfg_path = HOME_PATH.clone();
|
||||
pub fn create_app_config(base_path: PathBuf) -> AppCfg {
|
||||
let mut cfg_path = base_path;
|
||||
cfg_path.push(CONFIG_FILE_NAME);
|
||||
let cfg_path_home = cfg_path.as_path();
|
||||
let relevant_path = if Path::new(CONFIG_FILE_NAME).exists() {
|
||||
|
Reference in New Issue
Block a user