1*0ec8b83dSEd Tanous #pragma once 2*0ec8b83dSEd Tanous #include <nlohmann/json.hpp> 3*0ec8b83dSEd Tanous 4*0ec8b83dSEd Tanous namespace redundancy 5*0ec8b83dSEd Tanous { 6*0ec8b83dSEd Tanous // clang-format off 7*0ec8b83dSEd Tanous 8*0ec8b83dSEd Tanous enum class RedundancyType{ 9*0ec8b83dSEd Tanous Invalid, 10*0ec8b83dSEd Tanous Failover, 11*0ec8b83dSEd Tanous NPlusM, 12*0ec8b83dSEd Tanous Sharing, 13*0ec8b83dSEd Tanous Sparing, 14*0ec8b83dSEd Tanous NotRedundant, 15*0ec8b83dSEd Tanous }; 16*0ec8b83dSEd Tanous 17*0ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(RedundancyType, { 18*0ec8b83dSEd Tanous {RedundancyType::Invalid, "Invalid"}, 19*0ec8b83dSEd Tanous {RedundancyType::Failover, "Failover"}, 20*0ec8b83dSEd Tanous {RedundancyType::NPlusM, "NPlusM"}, 21*0ec8b83dSEd Tanous {RedundancyType::Sharing, "Sharing"}, 22*0ec8b83dSEd Tanous {RedundancyType::Sparing, "Sparing"}, 23*0ec8b83dSEd Tanous {RedundancyType::NotRedundant, "NotRedundant"}, 24*0ec8b83dSEd Tanous }); 25*0ec8b83dSEd Tanous 26*0ec8b83dSEd Tanous } 27*0ec8b83dSEd Tanous // clang-format on 28