WIENER_SNMP
1.1
A C/C++ library for MPOD crate access via SNMP
Main Page
Classes
Files
File List
File Members
All
Classes
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
WIENER_SNMP.h
Go to the documentation of this file.
1
3
#ifndef WIENER_SNMP_H
4
#define WIENER_SNMP_H
5
6
#ifdef _MSC_VER
7
#define EXPORT extern "C" _declspec(dllexport)
8
#else
9
#define EXPORT extern "C"
10
#endif
11
12
#define WIN32_LEAN_AND_MEAN
13
14
#include <net-snmp/net-snmp-config.h>
15
#define NET_SNMP_SNMPV3_H // we don't need SNMPV3 (one include file is missing)
16
#include <net-snmp/net-snmp-includes.h>
17
18
typedef
void
*
HSNMP
;
// SNMP handle (like FILE)
19
20
// DLL functions
21
EXPORT
void
snmpSetStdErrLog
(
void
);
22
EXPORT
void
snmpSetFileLog
(
const
char
*
const
fileName);
23
EXPORT
unsigned
int
snmpGetVersion
(
void
);
24
EXPORT
char
*
snmpGetVersionString
(
void
);
25
26
EXPORT
int
snmpInit
(
void
);
27
EXPORT
void
snmpCleanup
(
void
);
28
EXPORT
void
snmpSetReadCommunityName
(
const
char
*
const
readCommunityName);
29
EXPORT
void
snmpSetWriteCommunityName
(
const
char
*
const
writeCommunityName);
30
31
EXPORT
HSNMP
snmpOpen
(
const
char
*
const
ipAddress);
32
EXPORT
void
snmpClose
(
HSNMP
session);
33
EXPORT
char
*
snmpGetLastError
(
void
);
34
35
// System Functions
36
EXPORT
char
*
getSysDescr
(
HSNMP
session);
37
EXPORT
int
getMainSwitch
(
HSNMP
session);
38
EXPORT
int
setMainSwitch
(
HSNMP
session,
int
value);
39
EXPORT
int
getMainStatus
(
HSNMP
session);
40
EXPORT
int
getVmeReset
(
HSNMP
session);
41
EXPORT
int
setVmeReset
(
HSNMP
session);
42
EXPORT
int
getIpStaticAddress
(
HSNMP
session);
43
EXPORT
int
setIpStaticAddress
(
HSNMP
session,
int
value);
44
EXPORT
char
*
getPsSerialNumber
(
HSNMP
session);
45
46
// Output Counts
47
EXPORT
int
getOutputNumber
(
HSNMP
session);
48
EXPORT
int
getOutputGroups
(
HSNMP
session);
49
50
//Output Channel Information
51
//std::string getOutputName(HSNMP session, int channel);
52
EXPORT
int
getOutputGroup
(
HSNMP
session,
int
channel);
53
EXPORT
int
getOutputStatus
(
HSNMP
session,
int
channel);
54
EXPORT
int
getChannelStatus
(
HSNMP
m_sessmp,
int
channel);
55
EXPORT
double
getOutputSenseMeasurement
(
HSNMP
session,
int
channel);
56
EXPORT
double
getOutputTerminalMeasurement
(
HSNMP
session,
int
channel);
57
EXPORT
double
getCurrentMeasurement
(
HSNMP
session,
int
channel);
58
EXPORT
int
getTemperatureMeasurement
(
HSNMP
session,
int
channel);
59
EXPORT
int
setChannelSwitch
(
HSNMP
session,
int
channel,
int
value);
60
EXPORT
int
setOutputSwitch
(
HSNMP
session,
int
channel,
int
value);
61
EXPORT
int
getChannelSwitch
(
HSNMP
session,
int
channel);
62
EXPORT
int
getOutputSwitch
(
HSNMP
session,
int
channel);
63
EXPORT
int
setHighVoltageGroupsSwitch
(
HSNMP
session,
int
value);
64
EXPORT
int
getHighVoltageGroupsSwitch
(
HSNMP
session);
65
EXPORT
int
setLowVoltageGroupsSwitch
(
HSNMP
session,
int
value);
66
EXPORT
int
getLowVoltageGroupsSwitch
(
HSNMP
session);
67
EXPORT
double
getOutputVoltage
(
HSNMP
session,
int
channel);
68
EXPORT
double
setOutputVoltage
(
HSNMP
session,
int
channel,
double
value);
69
EXPORT
double
getOutputCurrent
(
HSNMP
session,
int
channel);
70
EXPORT
double
setOutputCurrent
(
HSNMP
session,
int
channel,
double
value);
71
EXPORT
double
getOutputRiseRate
(
HSNMP
session,
int
channel);
72
EXPORT
double
setOutputRiseRate
(
HSNMP
session,
int
channel,
double
value);
73
EXPORT
double
getOutputFallRate
(
HSNMP
session,
int
channel);
74
EXPORT
double
setOutputFallRate
(
HSNMP
session,
int
channel,
double
value);
75
EXPORT
double
getOutputCurrentRiseRate
(
HSNMP
session,
int
channel);
76
EXPORT
double
setOutputCurrentRiseRate
(
HSNMP
session,
int
channel,
double
value);
77
EXPORT
double
getOutputCurrentFallRate
(
HSNMP
session,
int
channel);
78
EXPORT
double
setOutputCurrentFallRate
(
HSNMP
session,
int
channel,
double
value);
79
EXPORT
int
getOutputSupervisionBehavior
(
HSNMP
session,
int
channel);
80
EXPORT
int
setOutputSupervisionBehavior
(
HSNMP
session,
int
channel,
int
value);
81
EXPORT
double
getOutputSupervisionMinSenseVoltage
(
HSNMP
session,
int
channel);
82
EXPORT
double
setOutputSupervisionMinSenseVoltage
(
HSNMP
session,
int
channel,
double
value);
83
EXPORT
double
getOutputSupervisionMaxSenseVoltage
(
HSNMP
session,
int
channel);
84
EXPORT
double
setOutputSupervisionMaxSenseVoltage
(
HSNMP
session,
int
channel,
double
value);
85
EXPORT
double
getOutputSupervisionMaxTerminalVoltage
(
HSNMP
session,
int
channel);
86
EXPORT
double
setOutputSupervisionMaxTerminalVoltage
(
HSNMP
session,
int
channel,
double
value);
87
EXPORT
double
getOutputSupervisionMaxCurrent
(
HSNMP
session,
int
channel);
88
EXPORT
double
setOutputSupervisionMaxCurrent
(
HSNMP
session,
int
channel,
double
value);
89
EXPORT
int
setOutputSupervisionMaxTemperature
(
HSNMP
session,
int
channel,
int
value);
90
EXPORT
double
getOutputConfigMaxSenseVoltage
(
HSNMP
session,
int
channel);
91
EXPORT
double
getOutputConfigMaxTerminalVoltage
(
HSNMP
session,
int
channel);
92
EXPORT
double
getOutputConfigMaxCurrent
(
HSNMP
session,
int
channel);
93
EXPORT
double
getOutputSupervisionMaxPower
(
HSNMP
session,
int
channel);
94
EXPORT
int
getOutputTripTimeMaxCurrent
(
HSNMP
session,
int
channel);
95
EXPORT
int
setOutputTripTimeMaxCurrent
(
HSNMP
session,
int
channel,
int
delay);
96
97
//Sensor Information functions
98
EXPORT
int
getSensorNumber
(
HSNMP
session);
99
EXPORT
int
getSensorTemp
(
HSNMP
session,
int
sensor);
100
EXPORT
int
getSensorWarningTemperature
(
HSNMP
session,
int
sensor);
101
EXPORT
int
setSensorWarningTemperature
(
HSNMP
session,
int
sensor,
int
value);
102
EXPORT
int
getSensorFailureTemperature
(
HSNMP
session,
int
sensor);
103
EXPORT
int
setSensorFailureTemperature
(
HSNMP
session,
int
sensor,
int
value);
104
105
//SNMP Community Name Functions
106
//std::string getSnmpCommunityName(HSNMP session, int index);
107
//std::string setSnmpCommunityName(HSNMP session, int index , int value);
108
109
//Power Supply Detail Functions
110
//std::string getPsFirmwareVersion(HSNMP session);
111
//std::string getPsSerialNumber(HSNMP session);
112
EXPORT
int
getPsOperatingTime
(
HSNMP
session);
113
EXPORT
double
getPsAuxVoltage
(
HSNMP
session,
int
auxIndex);
114
EXPORT
double
getPsAuxCurrent
(
HSNMP
session,
int
auxIndex);
115
//std::string getPsDirectAccess(HSNMP session);
116
//std::string setPsDirectAccess(HSNMP session);
117
118
//Fan Tray Functions
119
//std::string getFanFirmwareVersion(HSNMP session);
120
//std::string getFanSerialNumber(HSNMP session);
121
EXPORT
int
getFanOperatingTime
(
HSNMP
session);
122
EXPORT
int
getFanAirTemperature
(
HSNMP
session);
123
EXPORT
int
getFanSwitchOffDelay
(
HSNMP
session);
124
EXPORT
int
setFanSwitchOffDelay
(
HSNMP
session,
int
value);
125
EXPORT
int
getFanNominalSpeed
(
HSNMP
session);
126
EXPORT
int
setFanNominalSpeed
(
HSNMP
session,
int
value);
127
EXPORT
int
getFanNumberOfFans
(
HSNMP
session);
128
EXPORT
int
getFanSpeed
(
HSNMP
session,
int
fan);
129
130
// Module functions
131
EXPORT
char
*
getModuleDescription
(
HSNMP
session,
int
slot);
132
EXPORT
double
getModuleSupply24
(
HSNMP
session,
int
slot);
133
EXPORT
double
getModuleSupply5
(
HSNMP
session,
int
slot);
134
EXPORT
double
getModuleAuxTemperature
(
HSNMP
session,
int
slot,
int
index);
135
EXPORT
double
getModuleHardwareLimitVoltage
(
HSNMP
session,
int
slot);
136
EXPORT
double
getModuleHardwareLimitCurrent
(
HSNMP
session,
int
slot);
137
EXPORT
double
getModuleRampSpeedVoltage
(
HSNMP
session,
int
slot);
138
EXPORT
double
setModuleRampSpeedVoltage
(
HSNMP
session,
int
slot,
double
value);
139
EXPORT
double
getModuleRampSpeedCurrent
(
HSNMP
session,
int
slot);
140
EXPORT
double
setModuleRampSpeedCurrent
(
HSNMP
session,
int
slot,
double
value);
141
EXPORT
int
getModuleStatus
(
HSNMP
session,
int
slot);
142
EXPORT
int
getModuleEventStatus
(
HSNMP
session,
int
slot);
143
EXPORT
int
setModuleDoClear
(
HSNMP
session,
int
slot);
144
148
typedef
enum
MaximumCrateValues
{
149
MaxModuleAuxSupplies
= 2,
150
MaxModuleAuxTemperatures
= 4,
151
MaxCommunities
= 4,
152
MaxFans
= 6,
153
MaxPsAuxSupplies
= 8,
154
MaxSlotsPerCrate
= 10,
155
MaxSensors
= 12,
156
MaxChannelsPerSlot
= 100,
157
MaxChannelsPerCrate
= 1000
158
}
MaximumCrateValues
;
159
165
typedef
struct
SnmpDoubleBuffer
{
166
int
size
;
167
double
value
[
MaxChannelsPerSlot
];
168
}
SnmpDoubleBuffer
;
169
175
typedef
struct
SnmpIntegerBuffer
{
176
int
size
;
177
int
value
[
MaxChannelsPerSlot
];
178
}
SnmpIntegerBuffer
;
179
180
// Functions for multiple data transfer in one SNMP packet
181
EXPORT
SnmpIntegerBuffer
*
getMultipleChannelStatuses
(
HSNMP
session,
int
start,
int
size);
182
EXPORT
SnmpIntegerBuffer
*
getMultipleOutputStatuses
(
HSNMP
session,
int
start,
int
size);
183
EXPORT
SnmpIntegerBuffer
*
getMultipleOutputSwitches
(
HSNMP
session,
int
start,
int
size);
184
EXPORT
SnmpIntegerBuffer
*
setMultipleOutputSwitches
(
HSNMP
session,
int
start,
SnmpIntegerBuffer
*values);
185
EXPORT
SnmpDoubleBuffer
*
getMultipleOutputVoltages
(
HSNMP
session,
int
start,
int
size);
186
EXPORT
SnmpDoubleBuffer
*
setMultipleOutputVoltages
(
HSNMP
session,
int
start,
SnmpDoubleBuffer
*values);
187
EXPORT
SnmpDoubleBuffer
*
getMultipleMeasurementTerminalVoltages
(
HSNMP
session,
int
start,
int
size);
188
EXPORT
SnmpDoubleBuffer
*
getMultipleOutputMeasurementTerminalVoltages
(
HSNMP
session,
int
start,
int
size);
189
EXPORT
SnmpDoubleBuffer
*
getMultipleOutputConfigMaxTerminalVoltages
(
HSNMP
session,
int
start,
int
size);
190
EXPORT
SnmpDoubleBuffer
*
getMultipleOutputCurrents
(
HSNMP
session,
int
start,
int
size);
191
EXPORT
SnmpDoubleBuffer
*
setMultipleOutputCurrents
(
HSNMP
session,
int
start,
SnmpDoubleBuffer
*values);
192
EXPORT
SnmpDoubleBuffer
*
getMultipleMeasurementCurrents
(
HSNMP
session,
int
start,
int
size);
193
EXPORT
SnmpDoubleBuffer
*
getMultipleOutputMeasurementCurrents
(
HSNMP
session,
int
start,
int
size);
194
EXPORT
SnmpDoubleBuffer
*
getMultipleOutputConfigMaxCurrents
(
HSNMP
session,
int
start,
int
size);
195
EXPORT
SnmpIntegerBuffer
*
getMultipleOutputTripTimeMaxCurrents
(
HSNMP
session,
int
start,
int
size);
196
EXPORT
SnmpIntegerBuffer
*
setMultipleOutputTripTimeMaxCurrents
(
HSNMP
session,
int
start,
SnmpIntegerBuffer
*values);
197
EXPORT
SnmpIntegerBuffer
*
getMultipleOutputSupervisionBehaviors
(
HSNMP
session,
int
start,
int
size);
198
EXPORT
SnmpIntegerBuffer
*
setMultipleOutputSupervisionBehaviors
(
HSNMP
session,
int
start,
SnmpIntegerBuffer
*values);
199
200
#endif
WIENER_SNMP.h
Generated on Wed Sep 25 2013 12:20:36 for WIENER_SNMP by
1.8.3.1