📄 class_l_u_c_function.html
字号:
<tr><td class="mdescLeft"> </td><td class="mdescRight">retrieve previously saved precomputation <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="839d0f7f3e256b625caf6fd792925ad4"></a><!-- doxytag: member="LUCFunction::SavePrecomputation" ref="839d0f7f3e256b625caf6fd792925ad4" args="(BufferedTransformation &storedPrecomputation) const " -->virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_crypto_material.html#839d0f7f3e256b625caf6fd792925ad4">SavePrecomputation</a> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &storedPrecomputation) const </td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">save precomputation for later use <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a1da44802c5cf00946043922cb9e7e6e"></a><!-- doxytag: member="LUCFunction::DoQuickSanityCheck" ref="a1da44802c5cf00946043922cb9e7e6e" args="() const" -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_crypto_material.html#a1da44802c5cf00946043922cb9e7e6e">DoQuickSanityCheck</a> () const</td></tr><tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="16d9f1685fbb1be3f29a22dbba911142"></a><!-- doxytag: member="LUCFunction::GetThisObject" ref="16d9f1685fbb1be3f29a22dbba911142" args="(T &object) const" -->template<class T> </td></tr><tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#16d9f1685fbb1be3f29a22dbba911142">GetThisObject</a> (T &object) const</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">get a copy of this object or a subobject of it <br></td></tr><tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="01c64a1e0a5f667898b4c1968a853c0f"></a><!-- doxytag: member="LUCFunction::GetThisPointer" ref="01c64a1e0a5f667898b4c1968a853c0f" args="(T *&p) const " -->template<class T> </td></tr><tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#01c64a1e0a5f667898b4c1968a853c0f">GetThisPointer</a> (T *&p) const </td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">get a pointer to this object, as a pointer to T <br></td></tr><tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="96686e9f8d6ce3ab870e516fb72b608e"></a><!-- doxytag: member="LUCFunction::GetValue" ref="96686e9f8d6ce3ab870e516fb72b608e" args="(const char *name, T &value) const " -->template<class T> </td></tr><tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#96686e9f8d6ce3ab870e516fb72b608e">GetValue</a> (const char *name, T &value) const </td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">get a named value, returns true if the name exists <br></td></tr><tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="943b2009297783f1c35bae46efc3b5f7"></a><!-- doxytag: member="LUCFunction::GetValueWithDefault" ref="943b2009297783f1c35bae46efc3b5f7" args="(const char *name, T defaultValue) const " -->template<class T> </td></tr><tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#943b2009297783f1c35bae46efc3b5f7">GetValueWithDefault</a> (const char *name, T defaultValue) const </td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">get a named value, returns the default if the name doesn't exist <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="13faea827ee047cd58557282806ed2e1"></a><!-- doxytag: member="LUCFunction::GetValueNames" ref="13faea827ee047cd58557282806ed2e1" args="() const" -->std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#13faea827ee047cd58557282806ed2e1">GetValueNames</a> () const</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">get a list of value names that can be retrieved <br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#39b6daefcabcdd07f5ae482a075e1728">GetIntValue</a> (const char *name, int &value) const </td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">get a named value with type int <a href="#39b6daefcabcdd07f5ae482a075e1728"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7ddb654b7afcd1a04422a7b4b01366d9"></a><!-- doxytag: member="LUCFunction::GetIntValueWithDefault" ref="7ddb654b7afcd1a04422a7b4b01366d9" args="(const char *name, int defaultValue) const" -->int </td><td class="memItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#7ddb654b7afcd1a04422a7b4b01366d9">GetIntValueWithDefault</a> (const char *name, int defaultValue) const</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">get a named value with type int, with default <br></td></tr><tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="c66048d3bc2a741712486d02e1f75d78"></a><!-- doxytag: member="LUCFunction::GetRequiredParameter" ref="c66048d3bc2a741712486d02e1f75d78" args="(const char *className, const char *name, T &value) const " -->template<class T> </td></tr><tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#c66048d3bc2a741712486d02e1f75d78">GetRequiredParameter</a> (const char *className, const char *name, T &value) const </td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1e6596c87ad9c2bb7f2a4d7b2194b949"></a><!-- doxytag: member="LUCFunction::GetRequiredIntParameter" ref="1e6596c87ad9c2bb7f2a4d7b2194b949" args="(const char *className, const char *name, int &value) const " -->void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#1e6596c87ad9c2bb7f2a4d7b2194b949">GetRequiredIntParameter</a> (const char *className, const char *name, int &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 class="anchor" name="a50a73b1705adb00ace9463b59696fb7"></a><!-- doxytag: member="LUCFunction::ThrowIfTypeMismatch" ref="a50a73b1705adb00ace9463b59696fb7" args="(const char *name, const std::type_info &stored, const std::type_info &retrieving)" -->static void __cdecl </td><td class="memItemRight" valign="bottom"><a class="el" href="class_name_value_pairs.html#a50a73b1705adb00ace9463b59696fb7">ThrowIfTypeMismatch</a> (const char *name, const std::type_info &stored, const std::type_info &retrieving)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">used by derived classes to check for type mismatch <br></td></tr><tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="41b10646a07c3aacb8a444f83d39019a"></a><!-- doxytag: member="LUCFunction::m_n" ref="41b10646a07c3aacb8a444f83d39019a" args="" --><a class="el" href="class_integer.html">Integer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_l_u_c_function.html#41b10646a07c3aacb8a444f83d39019a">m_n</a></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="aa3b521dfa4f330a1334e1ba6673a178"></a><!-- doxytag: member="LUCFunction::m_e" ref="aa3b521dfa4f330a1334e1ba6673a178" args="" --><a class="el" href="class_integer.html">Integer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_l_u_c_function.html#aa3b521dfa4f330a1334e1ba6673a178">m_e</a></td></tr></table><hr><h2>Member Function Documentation</h2><a class="anchor" name="ba4694feec6ef453e2ef0f6fb586ca0c"></a><!-- doxytag: member="LUCFunction::Validate" ref="ba4694feec6ef453e2ef0f6fb586ca0c" args="(RandomNumberGenerator &rng, unsigned int level) const" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">bool LUCFunction::Validate </td> <td>(</td> <td class="paramtype"><a class="el" href="class_random_number_generator.html">RandomNumberGenerator</a> & </td> <td class="paramname"> <em>rng</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">unsigned int </td> <td class="paramname"> <em>level</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"> const<code> [virtual]</code></td> </tr> </table></div><div class="memdoc"><p>check this object for errors <p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>level</em> </td><td>denotes the level of thoroughness: 0 - using this object won't cause a crash or exception (rng is ignored) 1 - this object will probably function (encrypt, sign, etc.) correctly (but may not check for weak keys and such) 2 - make sure this object will function correctly, and do reasonable security checks 3 - do checks that may take a long time </td></tr> </table></dl><dl class="return" compact><dt><b>Returns:</b></dt><dd>true if the tests pass </dd></dl><p>Implements <a class="el" href="class_crypto_material.html#439743c6b4e89ca8228a12fa1ea43ab1">CryptoMaterial</a>.<p>Reimplemented in <a class="el" href="class_invertible_l_u_c_function.html#b5c7b3d5b5d0b9509f8180a43370533b">InvertibleLUCFunction</a>.<p>Definition at line <a class="el" href="luc_8cpp-source.html#l00069">69</a> of file <a class="el" href="luc_8cpp-source.html">luc.cpp</a>.<p>References <a class="el" href="integer_8h-source.html#l00211">Integer::IsOdd()</a>, <a class="el" href="luc_8h-source.html#l00049">m_e</a>, <a class="el" href="luc_8h-source.html#l00049">m_n</a>, and <a class="el" href="integer_8cpp-source.html#l02867">Integer::One()</a>.<p>Referenced by <a class="el" href="luc_8cpp-source.html#l00172">InvertibleLUCFunction::Validate()</a>.</div></div><p><a class="anchor" name="f6a95ed660e53a5fa07841f139d43ccf"></a><!-- doxytag: member="LUCFunction::AssignFrom" ref="f6a95ed660e53a5fa07841f139d43ccf" args="(const NameValuePairs &source)" --><div class="memitem"><div class="memproto"> <table class="memname"> <tr> <td class="memname">void LUCFunction::AssignFrom </td> <td>(</td> <td class="paramtype">const <a class="el" href="class_name_value_pairs.html">NameValuePairs</a> & </td> <td class="paramname"> <em>source</em> </td> <td> ) </td> <td width="100%"><code> [virtual]</code></td>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -