summaryrefslogtreecommitdiff
path: root/ASNMP/asnmp/vb.h
diff options
context:
space:
mode:
Diffstat (limited to 'ASNMP/asnmp/vb.h')
-rw-r--r--ASNMP/asnmp/vb.h108
1 files changed, 56 insertions, 52 deletions
diff --git a/ASNMP/asnmp/vb.h b/ASNMP/asnmp/vb.h
index 1dd823fb2d6..dca6e7ae985 100644
--- a/ASNMP/asnmp/vb.h
+++ b/ASNMP/asnmp/vb.h
@@ -12,9 +12,9 @@
//
// = DESCRIPTION
// This module contains the class definition for the variable binding (VB)
-// class. The VB class is an encapsulation of a SNMP VB. A VB object is
+// class. The VB class is an encapsulation of a SNMP VB. A VB object is
// composed of one SNMP++ Oid and one SMI value. The Vb class utilizes Oid
-// objects and thus requires the Oid class. To use this class,
+// objects and thus requires the Oid class. To use this class,
// set oid, value then call valid() to be sure object was constructed correctly.
//
// = AUTHOR
@@ -25,28 +25,32 @@
Hewlett-Packard Company
ATTENTION: USE OF THIS SOFTWARE IS SUBJECT TO THE FOLLOWING TERMS.
- Permission to use, copy, modify, distribute and/or sell this software
- and/or its documentation is hereby granted without fee. User agrees
- to display the above copyright notice and this license notice in all
- copies of the software and any documentation of the software. User
- agrees to assume all liability for the use of the software; Hewlett-Packard
- makes no representations about the suitability of this software for any
- purpose. It is provided "AS-IS without warranty of any kind,either express
- or implied. User hereby grants a royalty-free license to any and all
- derivatives based upon this software code base.
-=====================================================================*/
-
+ Permission to use, copy, modify, distribute and/or sell this software
+ and/or its documentation is hereby granted without fee. User agrees
+ to display the above copyright notice and this license notice in all
+ copies of the software and any documentation of the software. User
+ agrees to assume all liability for the use of the software; Hewlett-Packard
+ makes no representations about the suitability of this software for any
+ purpose. It is provided "AS-IS without warranty of any kind,either express
+ or implied. User hereby grants a royalty-free license to any and all
+ derivatives based upon this software code base.
+=====================================================================*/
+
//----[ external calls ]----------------------------------------------
#include "ace/OS.h"
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
#include "asnmp/smival.h"
#include "asnmp/snmperrs.h" // V2c error def
-#include "asnmp/oid.h" // oid class def
+#include "asnmp/oid.h" // oid class def
#include "asnmp/timetick.h" // time ticks
-#include "asnmp/counter.h" // counter
+#include "asnmp/counter.h" // counter
#include "asnmp/gauge.h" // gauge class
#include "asnmp/ctr64.h" // 64 bit counters
-#include "asnmp/octet.h" // octet class
+#include "asnmp/octet.h" // octet class
#include "asnmp/address.h" // address class def
#include "asnmp/integer.h" // integer class
@@ -56,63 +60,63 @@
// Variable binding lists in SNMP++ are represented as arrays of
// Vb objects. Vb objects are passed to and from SNMP objects to
// provide getting or setting MIB values.
-// The vb class keeps its own memory for objects and does not
+// The vb class keeps its own memory for objects and does not
// utilize pointers to external data structures.
//
-class ACE_Export Vb
+class ACE_Export Vb
// = TITLE
- // Implement the concrete Variable Bindings aka Varbind
+ // Implement the concrete Variable Bindings aka Varbind
// composite type. Varbinds hold 1 Oid and 1 Value (Any SMI value)
{
public:
Vb( void);
- // constructor with no arguments
+ // constructor with no arguments
// makes an vb, unitialized (does not make object valid)
Vb( const Oid &oid);
- // constructor to initialize the oid
+ // constructor to initialize the oid
// makes a vb with oid portion initialized (does not make object valid)
-
+
Vb( const Oid& vb, const SnmpSyntax &val, const SmiUINT32=SNMP_CLASS_SUCCESS);
- // constructor to initialize the oid
+ // constructor to initialize the oid
// makes a vb with oid portion and value portion initialized, (valid)
-
+
Vb( const Vb &vb);
// copy constructor
-
- ~Vb();
+
+ ~Vb();
// destructor
// if the vb has a oid or an octect string then
// the associated memory needs to be freed
int valid() const;
- // return validity of Vb object (both oid and value set return 1 else 0)
-
+ // return validity of Vb object (both oid and value set return 1 else 0)
+
Vb& operator=( const Vb &vb);
// assignment to another Vb object overloaded
friend int operator==( const Vb &lhs, const Vb &rhs);
// equivlence operator overloaded
-
+
//-----[ set oid / get oid part]------------------------------------------
-
+
void set_oid( const Oid& oid);
// set value oid only with another oid
-
+
void get_oid( Oid &oid) const;
// get oid portion
-
+
//-----[ set value part]--------------------------------------------------
void set_null();
// set a Vb null, if its not already
-
+
void set_value( const TimeTicks& ticks);
// returns 0 on success and a value
void set_value( const Oid& oid);
// returns 0 on success and a value
-
+
void set_value( const Counter32& ctr);
// returns 0 on success and a value
@@ -127,9 +131,9 @@ public:
void set_value( const SnmpInt32& ctr);
// returns 0 on success and a value
-
- void set_value( const OctetStr& oct_str);
- // get an octet string object
+
+ void set_value( const OctetStr& oct_str);
+ // get an octet string object
//----[ get value ]------------------------------------------------
@@ -138,7 +142,7 @@ public:
int get_value( Oid& oid);
// returns 0 on success and a value
-
+
int get_value( Counter32& ctr);
// returns 0 on success and a value
@@ -153,11 +157,11 @@ public:
int get_value( SnmpInt32& ctr);
// returns 0 on success and a value
-
- int get_value( OctetStr& oct_str);
- // get an octet string object
- // escape hatch
+ int get_value( OctetStr& oct_str);
+ // get an octet string object
+
+ // escape hatch
void set_value( const SnmpSyntax &val);
// for other derived types that can be casted
@@ -165,32 +169,32 @@ public:
// gets a general value
SmiUINT32 get_syntax();
- // return the current syntax
+ // return the current syntax
// Or.. if a V2 VB exception is present then return the exception value
friend void set_exception_status( Vb *vb, const SmiUINT32 status);
// set the exception status
-
+
char *to_string();
- // return fomatted version of this object
+ // return fomatted version of this object
char *to_string_value();
// returns a formatted version of the value
-
+
char *to_string_oid();
// returns a formatted version of the value
protected:
- char *output_;
- // display vb as [ oid / value ]
+ char *output_;
+ // display vb as [ oid / value ]
- Oid iv_vb_oid_;
- // a vb is made up of a oid
+ Oid iv_vb_oid_;
+ // a vb is made up of a oid
- SnmpSyntax *iv_vb_value_;
+ SnmpSyntax *iv_vb_value_;
// and a value...
- SmiUINT32 exception_status_;
+ SmiUINT32 exception_status_;
// are there any vb exceptions??
void free_vb();