-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathModuleTableEntry.cs
More file actions
140 lines (131 loc) · 5.5 KB
/
Copy pathModuleTableEntry.cs
File metadata and controls
140 lines (131 loc) · 5.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
using SharpNTCIP.Attributes;
using System;
using System.Collections.Generic;
using System.Text;
namespace SharpNTCIP
{
public enum ModuleType
{
other = 1, hardware = 2, software = 3
}
/// <summary>
/// This object defines an entry in the module table.
/// NTCIP OID: 1.3.6.1.4.1.1206.4.2.6.1.3.1
/// </summary>
public class ModuleTableEntry
{
/// <summary>
/// This object contains the row number (1..255) within
/// this table for the associated module
/// </summary>
[NtcipOid("1.3.6.1.4.1.1206.4.2.6.1.3.1.1.{0}")]
[NtcipMandatory(true)]
[NtcipAccess(NtcipAccessAttribute.Access.read)]
public virtual uint moduleNumber
{
get { return moduleNumber; }
}
/// <summary>
/// This object contains the device node number of the
/// device-type, e.g., an ASC signal controller would have an OID of
/// 1.3.6.1.4.1.1206.4.2.1
/// </summary>
[NtcipOid("1.3.6.1.4.1.1206.4.2.6.1.3.1.2.{0}")]
[NtcipMandatory(true)]
[NtcipAccess(NtcipAccessAttribute.Access.read)]
public virtual object moduleDeviceNode
{
get { return moduleDeviceNode; }
}
/// <summary>
/// Definition>This object specifies the manufacturer of the
/// associated module. A null-string shall be transmitted if this
/// object has no entry.
/// </summary>
[NtcipOid("1.3.6.1.4.1.1206.4.2.6.1.3.1.3.{0}")]
[NtcipMandatory(true)]
[NtcipAccess(NtcipAccessAttribute.Access.read)]
public virtual string moduleMake
{
get { return moduleMake; }
}
/// <summary>
/// This object specifies the model number (hardware) or
/// firmware reference (software) of the associated module. A nullstring
/// shall be transmitted if this object has no entry.
/// </summary>
[NtcipOid("1.3.6.1.4.1.1206.4.2.6.1.3.1.4.{0}")]
[NtcipMandatory(true)]
[NtcipAccess(NtcipAccessAttribute.Access.read)]
public virtual string moduleModel
{
get { return moduleModel; }
}
/// <summary>
/// This object specifies the version of the associated
/// module. If the moduleType has a value of software, the value of
/// this object shall include the date on which the software was
/// released as a string in the form of YYYYMMDD, it shall be followed
/// by a space, a hyphen, another space, the lower-case letter ‘v’,
/// followed by a version or configuration number. Preceding zeros
/// shall be required for the date. For example, version 7.03.02 of
/// the software released on July 5, 2002 would be presented as
/// 20020705 – v7.03.02
/// </summary>
[NtcipOid("1.3.6.1.4.1.1206.4.2.6.1.3.1.5.{0}")]
[NtcipMandatory(true)]
[NtcipAccess(NtcipAccessAttribute.Access.read)]
public virtual string moduleVersion
{
get { return moduleVersion; }
}
/// <summary>
/// This object specifies whether the associated module
/// is a hardware or software module
/// </summary>
[NtcipOid("1.3.6.1.4.1.1206.4.2.6.1.3.1.6.{0}")]
[NtcipMandatory(true)]
[NtcipAccess(NtcipAccessAttribute.Access.read)]
public virtual ModuleType moduleType
{
get { return moduleType; }
}
/// <summary>
/// For use in this object, an ASCII string that shall
/// identify all of the standard document numbers that define or
/// reference MIBs upon which the device is based. Where applicable,
/// profiles shall be referenced rather than the base standards. The
/// version string shall be constructed as follows: The acronym of the
/// standards development organization (or other body) that developed
/// and approved the standard; a space; the standards document number;
/// a colon; and the documents version number as designated by the
/// standards development organization (or other body). Separate
/// entries in the list of standards shall be separated by a carriage
/// return (0x0d) and line feed (0x0a).
/// In the case of NTCIP documents prior to formal approval, the
/// version number shall be the version number in the form of lower
/// case ‘v’ followed by the major version followed by a period
/// followed by the minor revision. In the case of approved NTCIP
/// standards, the publication year shall precede the version number.
/// In the case of amended NTCIP standards, the version number shall
/// be replaced by the four digit year of publication of the published
/// standard followed by the upper case letter ‘A’, followed by the
/// amendment number.
/// For example, a message sign may have the following value for this
/// object:
/// NTCIP 1201:v02.19
/// NTCIP 1203:1997A1
/// NTCIP 2101:2001 v01.19
/// NTCIP 2103:v01.13
/// NTCIP 2201:v01.14
/// NTCIP 2301:2001 v01.08
/// </summary>
[NtcipOid("1.3.6.1.4.1.1206.4.2.6.1.4.{0}")]
[NtcipMandatory(true)]
[NtcipAccess(NtcipAccessAttribute.Access.read)]
public virtual string controllerBaseStandards
{
get { return controllerBaseStandards; }
}
}
}