00001 #if !defined(__MCOID_H_)
00002 #define __MCOID_H_
00003
00004 #ident "@(#)$Id: MCOid.h,v 1.2 2003/05/12 07:08:00 mike Exp $"
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #include "mcllib/MCBase.h"
00026 #include "mcllib/MCTypes.h"
00027 #include "mcllib/MCString.h"
00028
00029 namespace mcllib
00030 {
00031 namespace snmp
00032 {
00041 class MCOid : public MCBase
00042 {
00043 public:
00045 typedef const mcuint32* IMPLTYPE;
00047 typedef unsigned long size_t;
00052 typedef IMPLTYPE const_iterator;
00053
00057 MCOid();
00061 ~MCOid();
00068 MCOid(const char* oidStr);
00075 MCOid(IMPLTYPE pOid, size_t length);
00080 bool operator==(const MCOid& mco) const;
00085 bool operator!=(const MCOid& mco) const;
00091 bool operator<(const MCOid& mco) const;
00098 int cmp(const MCOid& mco) const;
00105 operator IMPLTYPE() const;
00107 size_t length() const;
00109 MCString toString() const;
00111 const_iterator begin() const;
00113 const_iterator end() const;
00115 void clear();
00117 MCOid suboid(int start, int length = 0) const;
00119 bool isPrefixOf(const MCOid& mco) const;
00121 unsigned long getCount() const;
00122 };
00123 };
00124 };
00125
00126 #endif