📄 class_g_f2_n_t.html
字号:
<!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++: GF2NT 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 Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Compound List</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="namespacemembers.html">Namespace Members</a> | <a class="qindex" href="functions.html">Compound Members</a> | <a class="qindex" href="globals.html">File Members</a></div><h1>GF2NT Class Reference</h1><code>#include <<a class="el" href="gf2n_8h-source.html">gf2n.h</a>></code><p><p>Inheritance diagram for GF2NT:<p><center><img src="class_g_f2_n_t.png" usemap="#GF2NT_map" border="0" alt=""></center><map name="GF2NT_map"><area href="class_g_f2_n_p.html" alt="GF2NP" shape="rect" coords="0,168,397,192"><area href="class_quotient_ring.html" alt="QuotientRing< EuclideanDomainOf< PolynomialMod2 > >" shape="rect" coords="0,112,397,136"><area href="class_abstract_ring.html" alt="AbstractRing< EuclideanDomainOf< PolynomialMod2 >::Element >" shape="rect" coords="0,56,397,80"><area href="class_abstract_group.html" alt="AbstractGroup< EuclideanDomainOf< PolynomialMod2 >::Element >" shape="rect" coords="0,0,397,24"></map><a href="class_g_f2_n_t-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>GF(2^n) with Trinomial Basis. <p><p>Definition at line <a class="el" href="gf2n_8h-source.html#l00281">281</a> of file <a class="el" href="gf2n_8h-source.html">gf2n.h</a>.<table border=0 cellpadding=0 cellspacing=0><tr><td></td></tr><tr><td colspan=2><br><h2>Public Types</h2></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_quotient_ringw0" doxytag="GF2NT::EuclideanDomain"></a>typedef <a class="el" href="class_euclidean_domain_of.html">EuclideanDomainOf</a><<br> <a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> > </td><td class="memItemRight" valign=bottom><b>EuclideanDomain</b></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_quotient_ringw1" doxytag="GF2NT::Element"></a>typedef <a class="el" href="class_euclidean_domain_of.html">EuclideanDomainOf</a><<br> <a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> >::Element </td><td class="memItemRight" valign=bottom><b>Element</b></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="_g_f2_n_ta0" doxytag="GF2NT::GF2NT"></a> </td><td class="memItemRight" valign=bottom><b>GF2NT</b> (unsigned int t0, unsigned int t1, unsigned int t2)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_g_f2_n_ta1" doxytag="GF2NT::Clone"></a><a class="el" href="class_g_f2_n_p.html">GF2NP</a> * </td><td class="memItemRight" valign=bottom><b>Clone</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_g_f2_n_ta2" doxytag="GF2NT::DEREncode"></a>void </td><td class="memItemRight" valign=bottom><b>DEREncode</b> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &bt) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_g_f2_n_ta3" doxytag="GF2NT::Multiply"></a>const Element & </td><td class="memItemRight" valign=bottom><b>Multiply</b> (const Element &a, const Element &b) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_g_f2_n_ta4" doxytag="GF2NT::Square"></a>const Element & </td><td class="memItemRight" valign=bottom><b>Square</b> (const Element &a) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_g_f2_n_ta5" doxytag="GF2NT::MultiplicativeInverse"></a>const Element & </td><td class="memItemRight" valign=bottom><b>MultiplicativeInverse</b> (const Element &a) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_g_f2_n_ta6" doxytag="GF2NT::DEREncodeElement"></a>void </td><td class="memItemRight" valign=bottom><b>DEREncodeElement</b> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &out, const Element &a) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_g_f2_n_ta7" doxytag="GF2NT::BERDecodeElement"></a>void </td><td class="memItemRight" valign=bottom><b>BERDecodeElement</b> (<a class="el" href="class_buffered_transformation.html">BufferedTransformation</a> &in, Element &a) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_g_f2_n_ta8" doxytag="GF2NT::Equal"></a>bool </td><td class="memItemRight" valign=bottom><b>Equal</b> (const Element &a, const Element &b) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_g_f2_n_ta9" doxytag="GF2NT::IsUnit"></a>bool </td><td class="memItemRight" valign=bottom><b>IsUnit</b> (const Element &a) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_g_f2_n_ta10" doxytag="GF2NT::MaxElementBitLength"></a>unsigned int </td><td class="memItemRight" valign=bottom><b>MaxElementBitLength</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_g_f2_n_ta11" doxytag="GF2NT::MaxElementByteLength"></a>unsigned int </td><td class="memItemRight" valign=bottom><b>MaxElementByteLength</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_g_f2_n_ta12" doxytag="GF2NT::SquareRoot"></a>Element </td><td class="memItemRight" valign=bottom><b>SquareRoot</b> (const Element &a) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_g_f2_n_ta13" doxytag="GF2NT::HalfTrace"></a>Element </td><td class="memItemRight" valign=bottom><b>HalfTrace</b> (const Element &a) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_g_f2_n_ta14" doxytag="GF2NT::SolveQuadraticEquation"></a>Element </td><td class="memItemRight" valign=bottom><b>SolveQuadraticEquation</b> (const Element &a) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_quotient_ringa1" doxytag="GF2NT::GetDomain"></a>const EuclideanDomain & </td><td class="memItemRight" valign=bottom><b>GetDomain</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_quotient_ringa2" doxytag="GF2NT::GetModulus"></a>const Element & </td><td class="memItemRight" valign=bottom><b>GetModulus</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_quotient_ringa4" doxytag="GF2NT::Identity"></a>const Element & </td><td class="memItemRight" valign=bottom><b>Identity</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_quotient_ringa5" doxytag="GF2NT::Add"></a>const Element & </td><td class="memItemRight" valign=bottom><b>Add</b> (const Element &a, const Element &b) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_quotient_ringa6" doxytag="GF2NT::Accumulate"></a>Element & </td><td class="memItemRight" valign=bottom><b>Accumulate</b> (Element &a, const Element &b) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_quotient_ringa7" doxytag="GF2NT::Inverse"></a>const Element & </td><td class="memItemRight" valign=bottom><b>Inverse</b> (const Element &a) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_quotient_ringa8" doxytag="GF2NT::Subtract"></a>const Element & </td><td class="memItemRight" valign=bottom><b>Subtract</b> (const Element &a, const Element &b) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_quotient_ringa9" doxytag="GF2NT::Reduce"></a>Element & </td><td class="memItemRight" valign=bottom><b>Reduce</b> (Element &a, const Element &b) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_quotient_ringa10" doxytag="GF2NT::Double"></a>const Element & </td><td class="memItemRight" valign=bottom><b>Double</b> (const Element &a) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_quotient_ringa12" doxytag="GF2NT::MultiplicativeIdentity"></a>const Element & </td><td class="memItemRight" valign=bottom><b>MultiplicativeIdentity</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_quotient_ringa16" doxytag="GF2NT::operator=="></a>bool </td><td class="memItemRight" valign=bottom><b>operator==</b> (const <a class="el" href="class_quotient_ring.html">QuotientRing</a>< <a class="el" href="class_euclidean_domain_of.html">EuclideanDomainOf</a>< <a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> > > &rhs) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_abstract_ringa8" doxytag="GF2NT::Divide"></a>virtual const Element & </td><td class="memItemRight" valign=bottom><b>Divide</b> (const Element &a, const Element &b) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_euclidean_domain_ofa18" doxytag="GF2NT::Exponentiate"></a>virtual Element </td><td class="memItemRight" valign=bottom><b>Exponentiate</b> (const Element &a, const <a class="el" href="class_integer.html">Integer</a> &e) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_euclidean_domain_ofa19" doxytag="GF2NT::CascadeExponentiate"></a>virtual Element </td><td class="memItemRight" valign=bottom><b>CascadeExponentiate</b> (const Element &x, const <a class="el" href="class_integer.html">Integer</a> &e1, const Element &y, const <a class="el" href="class_integer.html">Integer</a> &e2) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_euclidean_domain_ofa20" doxytag="GF2NT::SimultaneousExponentiate"></a>virtual void </td><td class="memItemRight" valign=bottom><b>SimultaneousExponentiate</b> (Element *results, const Element &base, const <a class="el" href="class_integer.html">Integer</a> *exponents, unsigned int exponentsCount) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_euclidean_domain_ofa21" doxytag="GF2NT::MultiplicativeGroup"></a>virtual const <a class="el" href="class_abstract_group.html">AbstractGroup</a><<br> <a class="el" href="class_euclidean_domain_of.html">EuclideanDomainOf</a>< <a class="el" href="class_polynomial_mod2.html">PolynomialMod2</a> <br>>::Element > & </td><td class="memItemRight" valign=bottom><b>MultiplicativeGroup</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_euclidean_domain_ofa22" doxytag="GF2NT::InversionIsFast"></a>virtual bool </td><td class="memItemRight" valign=bottom><b>InversionIsFast</b> () const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_euclidean_domain_ofa23" doxytag="GF2NT::ScalarMultiply"></a>virtual Element </td><td class="memItemRight" valign=bottom><b>ScalarMultiply</b> (const Element &a, const <a class="el" href="class_integer.html">Integer</a> &e) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_euclidean_domain_ofa24" doxytag="GF2NT::CascadeScalarMultiply"></a>virtual Element </td><td class="memItemRight" valign=bottom><b>CascadeScalarMultiply</b> (const Element &x, const <a class="el" href="class_integer.html">Integer</a> &e1, const Element &y, const <a class="el" href="class_integer.html">Integer</a> &e2) const</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_euclidean_domain_ofa25" doxytag="GF2NT::SimultaneousMultiply"></a>virtual void </td><td class="memItemRight" valign=bottom><b>SimultaneousMultiply</b> (Element *results, const Element &base, const <a class="el" href="class_integer.html">Integer</a> *exponents, unsigned int exponentsCount) const</td></tr><tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_g_f2_n_tp0" doxytag="GF2NT::m"></a>unsigned int </td><td class="memItemRight" valign=bottom><b>m</b></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_quotient_ringp0" doxytag="GF2NT::m_domain"></a>EuclideanDomain </td><td class="memItemRight" valign=bottom><b>m_domain</b></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a name="_quotient_ringp1" doxytag="GF2NT::m_modulus"></a>Element </td><td class="memItemRight" valign=bottom><b>m_modulus</b></td></tr></table><hr>The documentation for this class was generated from the following files:<ul><li><a class="el" href="gf2n_8h-source.html">gf2n.h</a><li><a class="el" href="gf2n_8cpp-source.html">gf2n.cpp</a></ul><hr size="1"><address style="align: right;"><small>Generated on Tue Jul 8 23:35:01 2003 for Crypto++ by<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border=0 > </a>1.3.2 </small></address></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -