📄 classpasn__choice.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>PASN_Choice class Reference</title><link href="doxygen.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.2.18 --><center><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="annotated.html">Compound List</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="functions.html">Compound Members</a> <a class="qindex" href="globals.html">File Members</a> </center><hr><h1>PASN_Choice Class Reference</h1><code>#include <<a class="el" href="asner_8h-source.html">asner.h</a>></code><p><p>Inheritance diagram for PASN_Choice:<p><center><img src="classPASN__Choice.png" usemap="#PASN_Choice_map" border="0" alt=""></center><map name="PASN_Choice_map"><area href="classPASN__Object.html" alt="PASN_Object" shape="rect" coords="0,56,93,80"><area href="classPObject.html" alt="PObject" shape="rect" coords="0,0,93,24"></map><a href="classPASN__Choice-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0><tr><td></td></tr><tr><td colspan=2><br><h2>Public Methods</h2></td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a0">~PASN_Choice</a> ()</td></tr><tr><td nowrap align=right valign=top>virtual void </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a1">SetTag</a> (unsigned newTag, <a class="el" href="classPASN__Object.html#s38">TagClass</a> <a class="el" href="classPASN__Object.html#n1">tagClass</a>=DefaultTagClass)</td></tr><tr><td nowrap align=right valign=top><a class="el" href="classPString.html">PString</a> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a2">GetTagName</a> () const</td></tr><tr><td nowrap align=right valign=top><a class="el" href="classPASN__Object.html">PASN_Object</a> & </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a3">GetObject</a> () const</td></tr><tr><td nowrap align=right valign=top>BOOL </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a4">IsValid</a> () const</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a5">operator PASN_Null &</a> ()</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a6">operator PASN_Boolean &</a> ()</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a7">operator PASN_Integer &</a> ()</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a8">operator PASN_Enumeration &</a> ()</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a9">operator PASN_Real &</a> ()</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a10">operator PASN_ObjectId &</a> ()</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a11">operator PASN_BitString &</a> ()</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a12">operator PASN_OctetString &</a> ()</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a13">operator PASN_NumericString &</a> ()</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a14">operator PASN_PrintableString &</a> ()</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a15">operator PASN_VisibleString &</a> ()</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a16">operator PASN_IA5String &</a> ()</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a17">operator PASN_GeneralString &</a> ()</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a18">operator PASN_BMPString &</a> ()</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a19">operator PASN_Sequence &</a> ()</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a20">operator const PASN_Null &</a> () const</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a21">operator const PASN_Boolean &</a> () const</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a22">operator const PASN_Integer &</a> () const</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a23">operator const PASN_Enumeration &</a> () const</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a24">operator const PASN_Real &</a> () const</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a25">operator const PASN_ObjectId &</a> () const</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a26">operator const PASN_BitString &</a> () const</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a27">operator const PASN_OctetString &</a> () const</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a28">operator const PASN_NumericString &</a> () const</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a29">operator const PASN_PrintableString &</a> () const</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a30">operator const PASN_VisibleString &</a> () const</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a31">operator const PASN_IA5String &</a> () const</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a32">operator const PASN_GeneralString &</a> () const</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a33">operator const PASN_BMPString &</a> () const</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a34">operator const PASN_Sequence &</a> () const</td></tr><tr><td nowrap align=right valign=top>virtual BOOL </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a35">CreateObject</a> ()=0</td></tr><tr><td nowrap align=right valign=top>virtual <a class="el" href="classPObject.html#z199_0">Comparison</a> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a36">Compare</a> (const <a class="el" href="classPObject.html">PObject</a> &obj) const</td></tr><tr><td nowrap align=right valign=top>virtual void </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a37">PrintOn</a> (ostream &strm) const</td></tr><tr><td nowrap align=right valign=top>virtual <a class="el" href="classPString.html">PString</a> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a38">GetTypeAsString</a> () const</td></tr><tr><td nowrap align=right valign=top>virtual PINDEX </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a39">GetDataLength</a> () const</td></tr><tr><td nowrap align=right valign=top>virtual BOOL </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a40">IsPrimitive</a> () const</td></tr><tr><td nowrap align=right valign=top>virtual BOOL </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a41">Decode</a> (<a class="el" href="classPASN__Stream.html">PASN_Stream</a> &)</td></tr><tr><td nowrap align=right valign=top>virtual void </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a42">Encode</a> (<a class="el" href="classPASN__Stream.html">PASN_Stream</a> &) const</td></tr><tr><td nowrap align=right valign=top>virtual BOOL </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a43">DecodePER</a> (PPER_Stream &)</td></tr><tr><td nowrap align=right valign=top>virtual void </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a44">EncodePER</a> (PPER_Stream &) const</td></tr><tr><td nowrap align=right valign=top>PASN_Choice & </td><td valign=bottom><a class="el" href="classPASN__Choice.html#a45">operator=</a> (const PASN_Choice &other)</td></tr><tr><td colspan=2><br><h2>Protected Methods</h2></td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#b0">PASN_Choice</a> (unsigned nChoices=0, BOOL extend=FALSE)</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#b1">PASN_Choice</a> (unsigned <a class="el" href="classPASN__Object.html#n2">tag</a>, <a class="el" href="classPASN__Object.html#s38">TagClass</a> <a class="el" href="classPASN__Object.html#n1">tagClass</a>, unsigned nChoices, BOOL extend)</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#b2">PASN_Choice</a> (unsigned <a class="el" href="classPASN__Object.html#n2">tag</a>, <a class="el" href="classPASN__Object.html#s38">TagClass</a> <a class="el" href="classPASN__Object.html#n1">tagClass</a>, unsigned nChoices, BOOL extend, const <a class="el" href="classPString.html">PString</a> &nameSpec)</td></tr><tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#b3">PASN_Choice</a> (const PASN_Choice &other)</td></tr><tr><td nowrap align=right valign=top>BOOL </td><td valign=bottom><a class="el" href="classPASN__Choice.html#b4">CheckCreate</a> () const</td></tr><tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr><tr><td nowrap align=right valign=top>unsigned </td><td valign=bottom><a class="el" href="classPASN__Choice.html#n0">numChoices</a></td></tr><tr><td nowrap align=right valign=top><a class="el" href="classPASN__Object.html">PASN_Object</a> * </td><td valign=bottom><a class="el" href="classPASN__Choice.html#n1">choice</a></td></tr><tr><td nowrap align=right valign=top><a class="el" href="classPOrdinalToString.html">POrdinalToString</a> </td><td valign=bottom><a class="el" href="classPASN__Choice.html#n2">names</a></td></tr></table><hr><a name="_details"></a><h2>Detailed Description</h2>Class for ASN Choice type. <p><hr><h2>Constructor & Destructor Documentation</h2><a name="a0" doxytag="PASN_Choice::~PASN_Choice"></a><p><table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> PASN_Choice::~PASN_Choice </td> <td class="md" valign="top">( </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p> </td> </tr></table><a name="b0" doxytag="PASN_Choice::PASN_Choice"></a><p><table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> PASN_Choice::PASN_Choice </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">unsigned </td> <td class="mdname" nowrap> <em>nChoices</em> = 0, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>BOOL </td> <td class="mdname" nowrap> <em>extend</em> = FALSE</td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"><code> [protected]</code></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p> </td> </tr></table><a name="b1" doxytag="PASN_Choice::PASN_Choice"></a><p><table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> PASN_Choice::PASN_Choice </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">unsigned </td> <td class="mdname" nowrap> <em>tag</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap><a class="el" href="classPASN__Object.html#s38">TagClass</a> </td> <td class="mdname" nowrap> <em>tagClass</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>unsigned </td> <td class="mdname" nowrap> <em>nChoices</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>BOOL </td> <td class="mdname" nowrap> <em>extend</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"><code> [protected]</code></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p> </td> </tr></table><a name="b2" doxytag="PASN_Choice::PASN_Choice"></a><p><table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> PASN_Choice::PASN_Choice </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">unsigned </td> <td class="mdname" nowrap> <em>tag</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap><a class="el" href="classPASN__Object.html#s38">TagClass</a> </td> <td class="mdname" nowrap> <em>tagClass</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>unsigned </td> <td class="mdname" nowrap> <em>nChoices</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>BOOL </td> <td class="mdname" nowrap> <em>extend</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>const <a class="el" href="classPString.html">PString</a> & </td> <td class="mdname" nowrap> <em>nameSpec</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"><code> [protected]</code></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p> </td> </tr></table><a name="b3" doxytag="PASN_Choice::PASN_Choice"></a><p><table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> PASN_Choice::PASN_Choice </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const PASN_Choice & </td> <td class="mdname1" valign="top" nowrap> <em>other</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap><code> [protected]</code></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p> </td> </tr></table><hr><h2>Member Function Documentation</h2><a name="b4" doxytag="PASN_Choice::CheckCreate"></a><p><table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> BOOL PASN_Choice::CheckCreate </td> <td class="md" valign="top">( </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap><code> [protected]</code></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p> </td> </tr></table><a name="a36" doxytag="PASN_Choice::Compare"></a><p><table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> virtual <a class="el" href="classPObject.html#z199_0">Comparison</a> PASN_Choice::Compare </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="classPObject.html">PObject</a> & </td> <td class="mdname1" valign="top" nowrap> <em>obj</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap> const<code> [virtual]</code></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Compare the two objects and return their relative rank. This function is usually overridden by descendent classes to yield the ranking according to the semantics of the object.<p>The default function is to use the <a class="el" href="classPObject.html#z199_2">CompareObjectMemoryDirect()</a># function to do a byte wise memory comparison of the two objects.<p><dl compact><dt><b>Returns: </b></dt><dd> <a class="el" href="classPObject.html#z199_0s0">LessThan</a>#, <a class="el" href="classPObject.html#z199_0s1">EqualTo</a># or <a class="el" href="classPObject.html#z199_0s2">GreaterThan</a># according to the relative rank of the objects. </dl><p>Reimplemented from <a class="el" href="classPObject.html#z199_1">PObject</a>. </td> </tr></table><a name="a35" doxytag="PASN_Choice::CreateObject"></a><p><table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> virtual BOOL PASN_Choice::CreateObject </td> <td class="md" valign="top">( </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap><code> [pure virtual]</code></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p> </td> </tr></table><a name="a41" doxytag="PASN_Choice::Decode"></a><p><table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> virtual BOOL PASN_Choice::Decode </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="classPASN__Stream.html">PASN_Stream</a> & </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap><code> [virtual]</code></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p><p>Implements <a class="el" href="classPASN__Object.html#a4">PASN_Object</a>. </td> </tr></table><a name="a43" doxytag="PASN_Choice::DecodePER"></a><p><table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> virtual BOOL PASN_Choice::DecodePER </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">PPER_Stream & </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap><code> [virtual]</code></td> </tr> </table> </td> </tr>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -