/** @file si_fp_properties.h @brief Properties glue between fileprotector and si @details Copyright (c) 2024 Acronis International GmbH @author Denis Kopyrin ([email protected]) @since $Id: $ */ #pragma once #include "si_fp_value_types.h" // fp_si_property_id_t is used for a convenient matching from fileprotector types. // For example like file_protector 'path' limited to PAGE_SIZE to SiPropertyId like 'SI_PI_OBJECT_NAME' // It also removes all 'holes' so it can be easier used as a key in arrays typedef enum { #define SI_FP_PROP(prop, propPub, vt, type, name) prop, #define SI_FP_PROP_SIZED(...) SI_FP_PROP(__VA_ARGS__) #define SI_FP_PROP_HANDLE(...) SI_FP_PROP(__VA_ARGS__) #include "si_fp_properties_x.h" #undef SI_FP_PROP_HANDLE #undef SI_FP_PROP_SIZED #undef SI_FP_PROP FP_SI_PI_MAX_PROPERTY_ID, } fp_si_property_id_t;