Class Serializable

Inheritance Relationships

Derived Types

Class Documentation

class lbcrypto::Serializable

Inheritence diagram for lbcrypto::Serializable:

digraph { graph [bgcolor="#00000000"] node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2] edge [color="#1414CE"] "8" [label="lbcrypto::ILElement< DerivedType, BigVecType >" tooltip="lbcrypto::ILElement< DerivedType, BigVecType >"] "7" [label="lbcrypto::DCRTPolyImpl< VecType >" tooltip="lbcrypto::DCRTPolyImpl< VecType >"] "6" [label="lbcrypto::DCRTPolyInterface< DCRTPolyImpl< VecType >, VecType, NativeVector, PolyImpl >" tooltip="lbcrypto::DCRTPolyInterface< DCRTPolyImpl< VecType >, VecType, NativeVector, PolyImpl >"] "27" [label="lbcrypto::EncodingParamsImpl" tooltip="lbcrypto::EncodingParamsImpl"] "34" [label="lbcrypto::EvalKeyRelinImpl< Element >" tooltip="lbcrypto::EvalKeyRelinImpl< Element >"] "1" [label="lbcrypto::Serializable" tooltip="lbcrypto::Serializable" fillcolor="#BFBFBF"] "22" [label="lbcrypto::CryptoParametersBFVRNS" tooltip="lbcrypto::CryptoParametersBFVRNS"] "36" [label="lbcrypto::PublicKeyImpl< Element >" tooltip="lbcrypto::PublicKeyImpl< Element >"] "15" [label="intnat::NativeVectorT< IntegerType >" tooltip="intnat::NativeVectorT< IntegerType >"] "26" [label="lbcrypto::ElemParams< IntegerType >" tooltip="lbcrypto::ElemParams< IntegerType >"] "2" [label="lbcrypto::ElemParams< IntType >" tooltip="lbcrypto::ElemParams< IntType >"] "45" [label="lbcrypto::RingGSWCryptoParams" tooltip="lbcrypto::RingGSWCryptoParams"] "18" [label="lbcrypto::CryptoContextImpl< Element >" tooltip="lbcrypto::CryptoContextImpl< Element >"] "10" [label="lbcrypto::DCRTPolyImpl< BigVector >" tooltip="lbcrypto::DCRTPolyImpl< BigVector >"] "25" [label="lbcrypto::CryptoParametersRLWE< Element >" tooltip="lbcrypto::CryptoParametersRLWE< Element >"] "4" [label="lbcrypto::ILParamsImpl< IntType >" tooltip="lbcrypto::ILParamsImpl< IntType >"] "33" [label="lbcrypto::EvalKeyImpl< Element >" tooltip="lbcrypto::EvalKeyImpl< Element >"] "44" [label="lbcrypto::RingGSWACCKeyImpl" tooltip="lbcrypto::RingGSWACCKeyImpl"] "19" [label="lbcrypto::CryptoParametersBase< Element >" tooltip="lbcrypto::CryptoParametersBase< Element >"] "9" [label="lbcrypto::DCRTPolyInterface< DerivedType, BigVecType, LilVecType, RNSContainerType >" tooltip="lbcrypto::DCRTPolyInterface< DerivedType, BigVecType, LilVecType, RNSContainerType >"] "12" [label="lbcrypto::PolyInterface< DerivedType, VecType, ContainerType >" tooltip="lbcrypto::PolyInterface< DerivedType, VecType, ContainerType >"] "30" [label="lbcrypto::PolyInterface< PolyImpl< VecType >, VecType, PolyImpl >" tooltip="lbcrypto::PolyInterface< PolyImpl< VecType >, VecType, PolyImpl >"] "11" [label="lbcrypto::ILElement< DerivedType, VecType >" tooltip="lbcrypto::ILElement< DerivedType, VecType >"] "31" [label="lbcrypto::PolyImpl< VecType >" tooltip="lbcrypto::PolyImpl< VecType >"] "40" [label="lbcrypto::LWEPublicKeyImpl" tooltip="lbcrypto::LWEPublicKeyImpl"] "23" [label="lbcrypto::CryptoParametersBGVRNS" tooltip="lbcrypto::CryptoParametersBGVRNS"] "41" [label="lbcrypto::LWESwitchingKeyImpl" tooltip="lbcrypto::LWESwitchingKeyImpl"] "37" [label="lbcrypto::LWECiphertextImpl" tooltip="lbcrypto::LWECiphertextImpl"] "42" [label="lbcrypto::Matrix< Element >" tooltip="lbcrypto::Matrix< Element >"] "21" [label="lbcrypto::CryptoParametersRNS" tooltip="lbcrypto::CryptoParametersRNS"] "35" [label="lbcrypto::PrivateKeyImpl< Element >" tooltip="lbcrypto::PrivateKeyImpl< Element >"] "43" [label="lbcrypto::RLWECiphertextImpl" tooltip="lbcrypto::RLWECiphertextImpl"] "16" [label="lbcrypto::BinFHEContext" tooltip="lbcrypto::BinFHEContext"] "38" [label="lbcrypto::LWECryptoParams" tooltip="lbcrypto::LWECryptoParams"] "17" [label="lbcrypto::BinFHECryptoParams" tooltip="lbcrypto::BinFHECryptoParams"] "5" [label="lbcrypto::ILElement< DCRTPolyImpl< VecType >, VecType >" tooltip="lbcrypto::ILElement< DCRTPolyImpl< VecType >, VecType >"] "24" [label="lbcrypto::CryptoParametersCKKSRNS" tooltip="lbcrypto::CryptoParametersCKKSRNS"] "28" [label="lbcrypto::Field2n" tooltip="lbcrypto::Field2n"] "13" [label="lbcrypto::PolyImpl< NativeVector >" tooltip="lbcrypto::PolyImpl< NativeVector >"] "46" [label="lbcrypto::RingGSWEvalKeyImpl" tooltip="lbcrypto::RingGSWEvalKeyImpl"] "20" [label="lbcrypto::CryptoParametersRLWE< DCRTPoly >" tooltip="lbcrypto::CryptoParametersRLWE< DCRTPoly >"] "32" [label="lbcrypto::Key< Element >" tooltip="lbcrypto::Key< Element >"] "14" [label="lbcrypto::PolyImpl< BigVector >" tooltip="lbcrypto::PolyImpl< BigVector >"] "29" [label="lbcrypto::ILElement< Element, VecType >" tooltip="lbcrypto::ILElement< Element, VecType >"] "39" [label="lbcrypto::LWEPrivateKeyImpl" tooltip="lbcrypto::LWEPrivateKeyImpl"] "3" [label="lbcrypto::ILDCRTParams< IntType >" tooltip="lbcrypto::ILDCRTParams< IntType >"] "8" -> "1" [dir=forward tooltip="public-inheritance"] "7" -> "6" [dir=forward tooltip="public-inheritance"] "6" -> "5" [dir=forward tooltip="public-inheritance"] "27" -> "1" [dir=forward tooltip="public-inheritance"] "34" -> "33" [dir=forward tooltip="public-inheritance"] "22" -> "21" [dir=forward tooltip="public-inheritance"] "36" -> "32" [dir=forward tooltip="public-inheritance"] "15" -> "1" [dir=forward tooltip="public-inheritance"] "26" -> "1" [dir=forward tooltip="public-inheritance"] "2" -> "1" [dir=forward tooltip="public-inheritance"] "45" -> "1" [dir=forward tooltip="public-inheritance"] "18" -> "1" [dir=forward tooltip="public-inheritance"] "10" -> "9" [dir=forward tooltip="public-inheritance"] "25" -> "19" [dir=forward tooltip="public-inheritance"] "4" -> "2" [dir=forward tooltip="public-inheritance"] "33" -> "32" [dir=forward tooltip="public-inheritance"] "44" -> "1" [dir=forward tooltip="public-inheritance"] "19" -> "1" [dir=forward tooltip="public-inheritance"] "9" -> "8" [dir=forward tooltip="public-inheritance"] "12" -> "11" [dir=forward tooltip="public-inheritance"] "30" -> "29" [dir=forward tooltip="public-inheritance"] "11" -> "1" [dir=forward tooltip="public-inheritance"] "31" -> "30" [dir=forward tooltip="public-inheritance"] "40" -> "1" [dir=forward tooltip="public-inheritance"] "23" -> "21" [dir=forward tooltip="public-inheritance"] "41" -> "1" [dir=forward tooltip="public-inheritance"] "37" -> "1" [dir=forward tooltip="public-inheritance"] "42" -> "1" [dir=forward tooltip="public-inheritance"] "21" -> "20" [dir=forward tooltip="public-inheritance"] "35" -> "32" [dir=forward tooltip="public-inheritance"] "43" -> "1" [dir=forward tooltip="public-inheritance"] "16" -> "1" [dir=forward tooltip="public-inheritance"] "38" -> "1" [dir=forward tooltip="public-inheritance"] "17" -> "1" [dir=forward tooltip="public-inheritance"] "5" -> "1" [dir=forward tooltip="public-inheritance"] "24" -> "21" [dir=forward tooltip="public-inheritance"] "28" -> "1" [dir=forward tooltip="public-inheritance"] "13" -> "12" [dir=forward tooltip="public-inheritance"] "46" -> "1" [dir=forward tooltip="public-inheritance"] "20" -> "19" [dir=forward tooltip="public-inheritance"] "32" -> "1" [dir=forward tooltip="public-inheritance"] "14" -> "12" [dir=forward tooltip="public-inheritance"] "29" -> "1" [dir=forward tooltip="public-inheritance"] "39" -> "1" [dir=forward tooltip="public-inheritance"] "3" -> "2" [dir=forward tooltip="public-inheritance"] }

Base class for OpenFHE serialization.

This class is inherited by every class that needs to be serialized. The class contains some deprecated methods from the older mechanisms for serialization

Subclassed by lbcrypto::ElemParams< IntType >, lbcrypto::ILElement< DCRTPolyImpl< VecType >, VecType >, lbcrypto::ILElement< DerivedType, BigVecType >, lbcrypto::ILElement< DerivedType, VecType >, intnat::NativeVectorT< IntegerType >, lbcrypto::BinFHEContext, lbcrypto::BinFHECryptoParams, lbcrypto::CryptoContextImpl< Element >, lbcrypto::CryptoParametersBase< Element >, lbcrypto::ElemParams< IntegerType >, lbcrypto::EncodingParamsImpl, lbcrypto::Field2n, lbcrypto::ILElement< Element, VecType >, lbcrypto::Key< Element >, lbcrypto::LWECiphertextImpl, lbcrypto::LWECryptoParams, lbcrypto::LWEPrivateKeyImpl, lbcrypto::LWEPublicKeyImpl, lbcrypto::LWESwitchingKeyImpl, lbcrypto::Matrix< Element >, lbcrypto::RLWECiphertextImpl, lbcrypto::RingGSWACCKeyImpl, lbcrypto::RingGSWCryptoParams, lbcrypto::RingGSWEvalKeyImpl

Public Functions

virtual ~Serializable() = default
virtual std::string SerializedObjectName() const = 0