⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 class_x_t_r___d_h.html

📁 Crypto++是一个非常强大的密码学库,主要是功能全
💻 HTML
📖 第 1 页 / 共 3 页
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"><title>Crypto++: XTR_DH class Reference</title><link href="doxygen.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.3.2 --><div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div><h1>XTR_DH Class Reference</h1><code>#include &lt;<a class="el" href="xtrcrypt_8h-source.html">xtrcrypt.h</a>&gt;</code><p><p>Inheritance diagram for XTR_DH:<p><center><img src="class_x_t_r___d_h.png" usemap="#XTR_DH_map" border="0" alt=""></center><map name="XTR_DH_map"><area href="class_simple_key_agreement_domain.html" alt="SimpleKeyAgreementDomain" shape="rect" coords="0,224,174,248"><area href="class_crypto_parameters.html" alt="CryptoParameters" shape="rect" coords="184,224,358,248"><area href="class_key_agreement_algorithm.html" alt="KeyAgreementAlgorithm" shape="rect" coords="0,168,174,192"><area href="class_generatable_crypto_material.html" alt="GeneratableCryptoMaterial" shape="rect" coords="184,168,358,192"><area href="class_asymmetric_algorithm.html" alt="AsymmetricAlgorithm" shape="rect" coords="0,112,174,136"><area href="class_crypto_material.html" alt="CryptoMaterial" shape="rect" coords="184,112,358,136"><area href="class_algorithm.html" alt="Algorithm" shape="rect" coords="0,56,174,80"><area href="class_name_value_pairs.html" alt="NameValuePairs" shape="rect" coords="184,56,358,80"><area href="class_clonable.html" alt="Clonable" shape="rect" coords="0,0,174,24"></map><a href="class_x_t_r___d_h-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>XTR-DH with key validation. <p><p>Definition at line <a class="el" href="xtrcrypt_8h-source.html#l00014">14</a> of file <a class="el" href="xtrcrypt_8h-source.html">xtrcrypt.h</a>.<table border=0 cellpadding=0 cellspacing=0><tr><td></td></tr><tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha0" doxytag="XTR_DH::XTR_DH"></a>&nbsp;</td><td class="memItemRight" valign=bottom><b>XTR_DH</b> (const <a class="el" href="class_integer.html">Integer</a> &amp;p, const <a class="el" href="class_integer.html">Integer</a> &amp;q, const <a class="el" href="class_g_f_p2_element.html">GFP2Element</a> &amp;g)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha1" doxytag="XTR_DH::XTR_DH"></a>&nbsp;</td><td class="memItemRight" valign=bottom><b>XTR_DH</b> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &amp;rng, unsigned int pbits, unsigned int qbits)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha2" doxytag="XTR_DH::XTR_DH"></a>&nbsp;</td><td class="memItemRight" valign=bottom><b>XTR_DH</b> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;domainParams)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha3" doxytag="XTR_DH::DEREncode"></a>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha3">DEREncode</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;domainParams) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">for backwards compatibility, calls <a class="el" href="class_key_agreement_algorithm.html#_x_t_r___d_ha22">GetMaterial()</a>.Save(bt) <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha4">Validate</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &amp;rng, unsigned int level) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">check this object for errors </em> <a href="#_x_t_r___d_ha4"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha5" doxytag="XTR_DH::GetVoidValue"></a>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha5">GetVoidValue</a> (const char *name, const std::type_info &amp;valueType, void *pValue) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">to be implemented by derived classes, users should use one of the above functions instead <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha6">AssignFrom</a> (const <a class="el" href="class_name_value_pairs.html">NameValuePairs</a> &amp;source)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">assign values from source to this object </em> <a href="#_x_t_r___d_ha6"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha7" doxytag="XTR_DH::AccessCryptoParameters"></a><a class="el" href="class_crypto_parameters.html">CryptoParameters</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><b>AccessCryptoParameters</b> ()</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha8" doxytag="XTR_DH::AgreedValueLength"></a>unsigned int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha8">AgreedValueLength</a> () const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return length of agreed value produced <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha9" doxytag="XTR_DH::PrivateKeyLength"></a>unsigned int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha9">PrivateKeyLength</a> () const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return length of private keys in this domain <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha10" doxytag="XTR_DH::PublicKeyLength"></a>unsigned int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha10">PublicKeyLength</a> () const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return length of public keys in this domain <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha11">GeneratePrivateKey</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &amp;rng, byte *privateKey) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">generate private key </em> <a href="#_x_t_r___d_ha11"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha12">GeneratePublicKey</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &amp;rng, const byte *privateKey, byte *publicKey) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">generate public key </em> <a href="#_x_t_r___d_ha12"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha13">Agree</a> (byte *agreedValue, const byte *privateKey, const byte *otherPublicKey, bool validateOtherPublicKey=true) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">derive agreed value from your private key and couterparty's public key, return false in case of failure </em> <a href="#_x_t_r___d_ha13"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha14" doxytag="XTR_DH::GetModulus"></a>const <a class="el" href="class_integer.html">Integer</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><b>GetModulus</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha15" doxytag="XTR_DH::GetSubgroupOrder"></a>const <a class="el" href="class_integer.html">Integer</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><b>GetSubgroupOrder</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha16" doxytag="XTR_DH::GetSubgroupGenerator"></a>const <a class="el" href="class_g_f_p2_element.html">GFP2Element</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><b>GetSubgroupGenerator</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha17" doxytag="XTR_DH::SetModulus"></a>void&nbsp;</td><td class="memItemRight" valign=bottom><b>SetModulus</b> (const <a class="el" href="class_integer.html">Integer</a> &amp;p)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha18" doxytag="XTR_DH::SetSubgroupOrder"></a>void&nbsp;</td><td class="memItemRight" valign=bottom><b>SetSubgroupOrder</b> (const <a class="el" href="class_integer.html">Integer</a> &amp;q)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha19" doxytag="XTR_DH::SetSubgroupGenerator"></a>void&nbsp;</td><td class="memItemRight" valign=bottom><b>SetSubgroupGenerator</b> (const <a class="el" href="class_g_f_p2_element.html">GFP2Element</a> &amp;g)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha20">GenerateKeyPair</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &amp;rng, byte *privateKey, byte *publicKey) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">generate private/public key pair </em> <a href="#_x_t_r___d_ha20"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha21" doxytag="XTR_DH::AccessMaterial"></a><a class="el" href="class_crypto_material.html">CryptoMaterial</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha21">AccessMaterial</a> ()</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">returns a reference to the crypto material used by this object <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha22" doxytag="XTR_DH::GetMaterial"></a>const <a class="el" href="class_crypto_material.html">CryptoMaterial</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha22">GetMaterial</a> () const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">returns a const reference to the crypto material used by this object <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha23" doxytag="XTR_DH::GetCryptoParameters"></a>virtual const <a class="el" href="class_crypto_parameters.html">CryptoParameters</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><b>GetCryptoParameters</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha24" doxytag="XTR_DH::BERDecode"></a>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha24">BERDecode</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;bt)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">for backwards compatibility, calls <a class="el" href="class_asymmetric_algorithm.html#_asymmetric_algorithma0">AccessMaterial()</a>.Load(bt) <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_zlib_decompressora17" doxytag="XTR_DH::AlgorithmName"></a>virtual std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_zlib_decompressora17">AlgorithmName</a> () const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">returns name of this algorithm, not universally implemented yet <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_zlib_decompressora18" doxytag="XTR_DH::Clone"></a>virtual <a class="el" href="class_clonable.html">Clonable</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_zlib_decompressora18">Clone</a> () const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">this is not implemented by most classes yet <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha27">GenerateRandom</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &amp;rng, const <a class="el" href="class_name_value_pairs.html">NameValuePairs</a> &amp;params=<a class="el" href="cryptlib_8h.html#a3">g_nullNameValuePairs</a>)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">generate a random key or crypto parameters </em> <a href="#_x_t_r___d_ha27"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha28" doxytag="XTR_DH::GenerateRandomWithKeySize"></a>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha28">GenerateRandomWithKeySize</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &amp;rng, unsigned int keySize)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">calls the above function with a <a class="el" href="class_name_value_pairs.html">NameValuePairs</a> object that just specifies "KeySize" <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha29" doxytag="XTR_DH::ThrowIfInvalid"></a>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha29">ThrowIfInvalid</a> (<a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &amp;rng, unsigned int level) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">throws <a class="el" href="class_crypto_material_1_1_invalid_material.html">InvalidMaterial</a> if this object fails <a class="el" href="class_crypto_material.html#_x509_public_keya12">Validate()</a> test <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha30" doxytag="XTR_DH::Save"></a>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha30">Save</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;bt) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">save key into a <a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha31">Load</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;bt)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">load key from a <a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> </em> <a href="#_x_t_r___d_ha31"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha32" doxytag="XTR_DH::SupportsPrecomputation"></a>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha32">SupportsPrecomputation</a> () const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><dl compact><dt><b>Returns:</b></dt><dd>whether this object supports precomputation </dd></dl><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha33">Precompute</a> (unsigned int n)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">do precomputation </em> <a href="#_x_t_r___d_ha33"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha34" doxytag="XTR_DH::LoadPrecomputation"></a>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha34">LoadPrecomputation</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;storedPrecomputation)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">retrieve previously saved precomputation <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha35" doxytag="XTR_DH::SavePrecomputation"></a>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha35">SavePrecomputation</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &amp;storedPrecomputation) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">save precomputation for later use <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha36" doxytag="XTR_DH::DoQuickSanityCheck"></a>void&nbsp;</td><td class="memItemRight" valign=bottom><b>DoQuickSanityCheck</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha37" doxytag="XTR_DH::GetThisObject"></a>template&lt;class T&gt; bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha37">GetThisObject</a> (T &amp;object) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get a copy of this object or a subobject of it <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha38" doxytag="XTR_DH::GetThisPointer"></a>template&lt;class T&gt; bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha38">GetThisPointer</a> (T *&amp;p) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get a pointer to this object, as a pointer to T <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha39" doxytag="XTR_DH::GetValue"></a>template&lt;class T&gt; bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha39">GetValue</a> (const char *name, T &amp;value) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get a named value, returns true if the name exists <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha40" doxytag="XTR_DH::GetValueWithDefault"></a>template&lt;class T&gt; T&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha40">GetValueWithDefault</a> (const char *name, T defaultValue) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get a named value, returns the default if the name doesn't exist <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha41" doxytag="XTR_DH::GetValueNames"></a>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha41">GetValueNames</a> () const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get a list of value names that can be retrieved <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha42">GetIntValue</a> (const char *name, int &amp;value) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get a named value with type int </em> <a href="#_x_t_r___d_ha42"></a><em><br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha43" doxytag="XTR_DH::GetIntValueWithDefault"></a>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_ha43">GetIntValueWithDefault</a> (const char *name, int defaultValue) const</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get a named value with type int, with default <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha44" doxytag="XTR_DH::GetRequiredParameter"></a>template&lt;class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><b>GetRequiredParameter</b> (const char *className, const char *name, T &amp;value) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_ha45" doxytag="XTR_DH::GetRequiredIntParameter"></a>void&nbsp;</td><td class="memItemRight" valign=bottom><b>GetRequiredIntParameter</b> (const char *className, const char *name, int &amp;value) const</td></tr><tr><td colspan=2><br><h2>Static Public Member Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_x_t_r___d_he0" doxytag="XTR_DH::ThrowIfTypeMismatch"></a>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="class_x_t_r___d_h.html#_x_t_r___d_he0">ThrowIfTypeMismatch</a> (const char *name, const std::type_info &amp;stored, const std::type_info &amp;retrieving)</td></tr><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">used by derived classes to check for type mismatch <br><br></td></tr></table><hr><h2>Member Function Documentation</h2><a name="_x_t_r___d_ha4" doxytag="XTR_DH::Validate"></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0">  <tr>    <td class="mdRow">      <table cellpadding="0" cellspacing="0" border="0">        <tr>          <td class="md" nowrap valign="top"> bool XTR_DH::Validate </td>          <td class="md" valign="top">(&nbsp;</td>          <td class="md" nowrap valign="top"><a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> &amp;&nbsp;</td>          <td class="mdname" nowrap> <em>rng</em>, </td>        </tr>        <tr>          <td></td>          <td></td>          <td class="md" nowrap>unsigned int&nbsp;</td>          <td class="mdname" nowrap> <em>level</em></td>        </tr>        <tr>          <td></td>          <td class="md">)&nbsp;</td>          <td class="md" colspan="2"> const<code> [virtual]</code></td>        </tr>      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -