#include "nsISupports.idl" [scriptable, uuid(2CA854E1-A52D-4ce3-BB67-8718B34DF92C)] // {2CA854E1-A52D-4ce3-BB67-8718B34DF92C} //IMPLEMENT_OLECREATE(<>, <>, //0x2ca854e1, 0xa52d, 0x4ce3, 0xbb, 0x67, 0x87, 0x18, 0xb3, 0x4d, 0xf9, 0x2c); interface mkISnmpSmi : nsISupports { void setModulePath([const] in AString path); void compile([const] in string nmodule); void startCompilation(); void endCompilation(); void applyCompilation(); void cancelCompilation(); void saveConfig(); attribute AString MIBDataFile; ACString numberToName(in ACString oid, in long number); short maxValueLength(in ACString oid); void getIndexFromOid(in ACString oid, out ACString columnOid, out unsigned long count, [array, size_is(count)] out string indexArray); // values returned by getBaseOidType const short INTEGER32 = 1; const short OCTETSTRING = 2; const short OBJECTIDENTIFIER = 3; const short UNSIGNED32 = 4; const short COUNTER32 = 5; const short COUNTER64 = 6; const short GAUGE32 = 7; const short IPADDRESS = 8; const short ENUM = 9; const short BITS = 10; const short TIMETICKS = 11; short getBaseOidType(in ACString oid); // returns types above short indexIsImplied(in ACString oid, in ACString index); void lengthRange(in ACString oid, out long long min, out long long max); ACString getIndexOid(in ACString rowoid,in short index); // returns types above ACString getUnits(in ACString oid); ACString getHint(in ACString oid); short isTypeOf(in ACString oid,in ACString type); ACString getOidName(in ACString oid); };