Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

BigNumber.h

00001 /*
00002  * Copyright 2003 Michael A. Marsh, Cornell University. All rights reserved.
00003  * This software is released under the modified BSD license.
00004  * See the file LICENSE in the top-level directory for details.
00005  */
00006 //
00007 // $Id: BigNumber.h,v 1.4 2005/01/21 19:44:15 mmarsh Exp $
00008 //
00009 // $Log: BigNumber.h,v $
00010 // Revision 1.4  2005/01/21 19:44:15  mmarsh
00011 // Updated for compatibility with Doxygen 1.4.1
00012 //
00013 // Revision 1.3  2004/05/19 15:56:37  mmarsh
00014 // Added copyright and license statements.
00015 //
00016 // Revision 1.2  2003/11/04 22:31:46  mmarsh
00017 // *** empty log message ***
00018 //
00019 //
00020 
00021 #ifndef __CODEX_ASN1_BIGNUMBER_H__
00022 #define __CODEX_ASN1_BIGNUMBER_H__
00023 
00024 #include "Base.h"
00025 
00026 namespace CODEX_ASN1
00027 {
00034    class BigNumber : public Base
00035    {
00036       public :
00038          BigNumber();
00040          BigNumber( BIGNUM * pBN );
00042          BigNumber( const ASN1_INTEGER* asn1 );
00044          BigNumber( const BigNumber& aBN );
00046          virtual ~BigNumber();
00047 
00049          void operator=( const BigNumber& aBN );
00050 
00052          void operator=( BIGNUM * pBN );
00053 
00055          bool operator==( const BigNumber& aBN ) const;
00056 
00058          bool operator!=( const BigNumber& aBN ) const;
00059 
00061          bool operator<( const BigNumber& aBN ) const;
00062 
00064          bool operator>( const BigNumber& aBN ) const;
00065 
00067          const BIGNUM * value() const { return m_value; }
00069          const ASN1_INTEGER * asn1() const;
00070 
00071          int marshal( unsigned char ** pp ) const;
00072          void* unmarshal( void* bogus, unsigned char** pp, long length );
00073 
00074       protected :
00075          BIGNUM       *  m_value; 
00076          mutable ASN1_INTEGER *  m_asn1; 
00077    };
00078 
00079 }
00080 
00081 #endif /* __CODEX_ASN1_BIGNUMBER_H__ */

Generated on Fri May 6 17:38:34 2005 for COrnell Data EXchange (CODEX) by  doxygen 1.4.1