# ------------------------------------------------------ Imports ----------------------------------------------------- #


# ----------------------------------------------------- Constants ---------------------------------------------------- #
# OCELOT SETTINGS
OCELOT_VERSION = '0.4.1'
SILENT_CMD = True
VERBOSE_CMD = False
COST_FUNCTION_SSD = 'SSD'
COST_FUNCTION_NMI = "NMI"
MULTI_RESOLUTION_SCHEME = '100x25x10'
COHORT_FOLDER_UNDEFINED = "undefined_cohort"
NUMBER_OF_DEFORMABLE_ITERATIONS = 15
Z_MAP = "z-map"
PERCENTAGE_DIFFERENCE_MAP = "percentage-difference-map"


# COLOR CODES
ANSI_ORANGE = '\033[38;5;208m'
ANSI_GREEN = '\033[38;5;40m'
ANSI_VIOLET = '\033[38;5;141m'
ANSI_RED = '\033[38;5;196m'
ANSI_RESET = '\033[0m'


# MODALITY IDENTIFIERS
DICOM_MODALITY_PET = "PT"
DICOM_MODALITY_CT = "CT"


# FILE IDENTIFIERS
FILE_PREFIX_PET_ALIGNED = "PET-aligned_"
FILE_PREFIX_MASKED = "masked_"
FILE_PREFIX_CT = 'CT_'
FILE_PREFIX_CT_PET_ALIGNED = f'{FILE_PREFIX_PET_ALIGNED}{FILE_PREFIX_CT}'
FILE_PREFIX_CT_PET_ALIGNED_MASKED = f'{FILE_PREFIX_MASKED}{FILE_PREFIX_CT_PET_ALIGNED}'
FILE_PREFIXES_CT = [FILE_PREFIX_CT_PET_ALIGNED_MASKED, FILE_PREFIX_CT_PET_ALIGNED, FILE_PREFIX_CT]
FILE_PREFIX_PET = 'PET_'
FILE_PREFIX_SUV_PET = f'SUV_{FILE_PREFIX_PET}'
FILE_PREFIX_STD_SUV_PET = f'STD_SUV_{FILE_PREFIX_PET}'
FILE_PREFIX_LABEL = 'LABEL_'


# SEGMENTATION INTERFACE
FILE_PREFIX_MODEL_CLINICAL_CT = 'clin_ct_'
WHOLE_BODY_MASK_NAME = f'{FILE_PREFIX_LABEL}{FILE_PREFIX_MODEL_CLINICAL_CT}whole_body.nii.gz'
WHOLE_BODY_SKIN_MASK_NAME = f'{FILE_PREFIX_LABEL}{FILE_PREFIX_MODEL_CLINICAL_CT}whole_body_skin.nii.gz'
RESIDUAL_BODY_MASK_NAME = f'{FILE_PREFIX_LABEL}{FILE_PREFIX_MODEL_CLINICAL_CT}residual_body.nii.gz'
MASKING_BODY_MASK_NAME = f"{FILE_PREFIX_LABEL}{FILE_PREFIX_MODEL_CLINICAL_CT}masking_body.nii.gz"
MODELS_TO_EXCLUDE = ['clin_ct_lungs', 'clin_ct_muscles', 'clin_ct_ALPACA', 'clin_pt_fdg_brain_v1',
                     'clin_ct_all_bones_v1', 'clin_ct_PUMA']

# PARAMETER EXTRACTION
VOLUME_COLUMN_HEADER = "Volume [mm³]"
LABEL_NAME_COLUMN_HEADER = "Label Name"


# VALUES
CT_BACKGROUND_VALUE = -1000.00
PT_BACKGROUND_VALUE = 0.0
