DotNet Reference

.Net Reference

DoubleVector.cs
Go to the documentation of this file.
1//------------------------------------------------------------------------------
2// <auto-generated />
3//
4// This file was automatically generated by SWIG (http://www.swig.org).
5// Version 4.0.2
6//
7// Do not make changes to this file unless you know what you are doing--modify
8// the SWIG interface file instead.
9//------------------------------------------------------------------------------
10
12
13public partial class DoubleVector : global::System.IDisposable, global::System.Collections.IEnumerable, global::System.Collections.Generic.IList<double>
14 {
15 private global::System.Runtime.InteropServices.HandleRef swigCPtr;
16 protected bool swigCMemOwn;
17
18 internal DoubleVector(global::System.IntPtr cPtr, bool cMemoryOwn) {
19 swigCMemOwn = cMemoryOwn;
20 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
21 }
22
23 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(DoubleVector obj) {
24 return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
25 }
26
27 ~DoubleVector() {
28 Dispose(false);
29 }
30
31 public void Dispose() {
32 Dispose(true);
33 global::System.GC.SuppressFinalize(this);
34 }
35
36 protected virtual void Dispose(bool disposing) {
37 lock(this) {
38 if (swigCPtr.Handle != global::System.IntPtr.Zero) {
39 if (swigCMemOwn) {
40 swigCMemOwn = false;
42 }
43 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
44 }
45 }
46 }
47
48 public DoubleVector(global::System.Collections.IEnumerable c) : this() {
49 if (c == null)
50 throw new global::System.ArgumentNullException("c");
51 foreach (double element in c) {
52 this.Add(element);
53 }
54 }
55
56 public DoubleVector(global::System.Collections.Generic.IEnumerable<double> c) : this() {
57 if (c == null)
58 throw new global::System.ArgumentNullException("c");
59 foreach (double element in c) {
60 this.Add(element);
61 }
62 }
63
64 public bool IsFixedSize {
65 get {
66 return false;
67 }
68 }
69
70 public bool IsReadOnly {
71 get {
72 return false;
73 }
74 }
75
76 public double this[int index] {
77 get {
78 return getitem(index);
79 }
80 set {
81 setitem(index, value);
82 }
83 }
84
85 public int Capacity {
86 get {
87 return (int)capacity();
88 }
89 set {
90 if (value < size())
91 throw new global::System.ArgumentOutOfRangeException("Capacity");
92 reserve((uint)value);
93 }
94 }
95
96 public int Count {
97 get {
98 return (int)size();
99 }
100 }
101
102 public bool IsSynchronized {
103 get {
104 return false;
105 }
106 }
107
108 public void CopyTo(double[] array)
109 {
110 CopyTo(0, array, 0, this.Count);
111 }
112
113 public void CopyTo(double[] array, int arrayIndex)
114 {
115 CopyTo(0, array, arrayIndex, this.Count);
116 }
117
118 public void CopyTo(int index, double[] array, int arrayIndex, int count)
119 {
120 if (array == null)
121 throw new global::System.ArgumentNullException("array");
122 if (index < 0)
123 throw new global::System.ArgumentOutOfRangeException("index", "Value is less than zero");
124 if (arrayIndex < 0)
125 throw new global::System.ArgumentOutOfRangeException("arrayIndex", "Value is less than zero");
126 if (count < 0)
127 throw new global::System.ArgumentOutOfRangeException("count", "Value is less than zero");
128 if (array.Rank > 1)
129 throw new global::System.ArgumentException("Multi dimensional array.", "array");
130 if (index+count > this.Count || arrayIndex+count > array.Length)
131 throw new global::System.ArgumentException("Number of elements to copy is too large.");
132 for (int i=0; i<count; i++)
133 array.SetValue(getitemcopy(index+i), arrayIndex+i);
134 }
135
136 public double[] ToArray() {
137 double[] array = new double[this.Count];
138 this.CopyTo(array);
139 return array;
140 }
141
142 global::System.Collections.Generic.IEnumerator<double> global::System.Collections.Generic.IEnumerable<double>.GetEnumerator() {
143 return new DoubleVectorEnumerator(this);
144 }
145
146 global::System.Collections.IEnumerator global::System.Collections.IEnumerable.GetEnumerator() {
147 return new DoubleVectorEnumerator(this);
148 }
149
151 return new DoubleVectorEnumerator(this);
152 }
153
154 // Type-safe enumerator
159 public sealed class DoubleVectorEnumerator : global::System.Collections.IEnumerator
160 , global::System.Collections.Generic.IEnumerator<double>
161 {
162 private DoubleVector collectionRef;
163 private int currentIndex;
164 private object currentObject;
165 private int currentSize;
166
168 collectionRef = collection;
169 currentIndex = -1;
170 currentObject = null;
171 currentSize = collectionRef.Count;
172 }
173
174 // Type-safe iterator Current
175 public double Current {
176 get {
177 if (currentIndex == -1)
178 throw new global::System.InvalidOperationException("Enumeration not started.");
179 if (currentIndex > currentSize - 1)
180 throw new global::System.InvalidOperationException("Enumeration finished.");
181 if (currentObject == null)
182 throw new global::System.InvalidOperationException("Collection modified.");
183 return (double)currentObject;
184 }
185 }
186
187 // Type-unsafe IEnumerator.Current
188 object global::System.Collections.IEnumerator.Current {
189 get {
190 return Current;
191 }
192 }
193
194 public bool MoveNext() {
195 int size = collectionRef.Count;
196 bool moveOkay = (currentIndex+1 < size) && (size == currentSize);
197 if (moveOkay) {
198 currentIndex++;
199 currentObject = collectionRef[currentIndex];
200 } else {
201 currentObject = null;
202 }
203 return moveOkay;
204 }
205
206 public void Reset() {
207 currentIndex = -1;
208 currentObject = null;
209 if (collectionRef.Count != currentSize) {
210 throw new global::System.InvalidOperationException("Collection modified.");
211 }
212 }
213
214 public void Dispose() {
215 currentIndex = -1;
216 currentObject = null;
217 }
218 }
219
220 public void Clear() {
222 }
223
224 public void Add(double x) {
226 }
227
228 private uint size() {
230 return ret;
231 }
232
233 private uint capacity() {
234 uint ret = operations_research_linear_solverPINVOKE.DoubleVector_capacity(swigCPtr);
235 return ret;
236 }
237
238 private void reserve(uint n) {
239 operations_research_linear_solverPINVOKE.DoubleVector_reserve(swigCPtr, n);
240 }
241
242 public DoubleVector() : this(operations_research_linear_solverPINVOKE.new_DoubleVector__SWIG_0(), true) {
243 }
244
245 public DoubleVector(DoubleVector other) : this(operations_research_linear_solverPINVOKE.new_DoubleVector__SWIG_1(DoubleVector.getCPtr(other)), true) {
247 }
248
249 public DoubleVector(int capacity) : this(operations_research_linear_solverPINVOKE.new_DoubleVector__SWIG_2(capacity), true) {
251 }
252
253 private double getitemcopy(int index) {
256 return ret;
257 }
258
259 private double getitem(int index) {
260 double ret = operations_research_linear_solverPINVOKE.DoubleVector_getitem(swigCPtr, index);
261 if (operations_research_linear_solverPINVOKE.SWIGPendingException.Pending) throw operations_research_linear_solverPINVOKE.SWIGPendingException.Retrieve();
262 return ret;
263 }
264
265 private void setitem(int index, double val) {
266 operations_research_linear_solverPINVOKE.DoubleVector_setitem(swigCPtr, index, val);
267 if (operations_research_linear_solverPINVOKE.SWIGPendingException.Pending) throw operations_research_linear_solverPINVOKE.SWIGPendingException.Retrieve();
268 }
269
270 public void AddRange(DoubleVector values) {
273 }
274
275 public DoubleVector GetRange(int index, int count) {
276 global::System.IntPtr cPtr = operations_research_linear_solverPINVOKE.DoubleVector_GetRange(swigCPtr, index, count);
277 DoubleVector ret = (cPtr == global::System.IntPtr.Zero) ? null : new DoubleVector(cPtr, true);
279 return ret;
280 }
281
282 public void Insert(int index, double x) {
285 }
286
287 public void InsertRange(int index, DoubleVector values) {
290 }
291
292 public void RemoveAt(int index) {
295 }
296
297 public void RemoveRange(int index, int count) {
300 }
301
302 public static DoubleVector Repeat(double value, int count) {
303 global::System.IntPtr cPtr = operations_research_linear_solverPINVOKE.DoubleVector_Repeat(value, count);
304 DoubleVector ret = (cPtr == global::System.IntPtr.Zero) ? null : new DoubleVector(cPtr, true);
306 return ret;
307 }
308
309 public void Reverse() {
311 }
312
313 public void Reverse(int index, int count) {
316 }
317
318 public void SetRange(int index, DoubleVector values) {
321 }
322
323 public bool Contains(double value) {
325 return ret;
326 }
327
328 public int IndexOf(double value) {
330 return ret;
331 }
332
333 public int LastIndexOf(double value) {
335 return ret;
336 }
337
338 public bool Remove(double value) {
340 return ret;
341 }
342
343}
344
345}
Note that the IEnumerator documentation requires an InvalidOperationException to be thrown whenever t...
void CopyTo(int index, double[] array, int arrayIndex, int count)
DoubleVector(global::System.Collections.IEnumerable c)
Definition: DoubleVector.cs:48
void SetRange(int index, DoubleVector values)
static DoubleVector Repeat(double value, int count)
virtual void Dispose(bool disposing)
Definition: DoubleVector.cs:36
void InsertRange(int index, DoubleVector values)
void RemoveRange(int index, int count)
void CopyTo(double[] array, int arrayIndex)
DoubleVector GetRange(int index, int count)
DoubleVectorEnumerator GetEnumerator()
void Insert(int index, double x)
void AddRange(DoubleVector values)
DoubleVector(global::System.Collections.Generic.IEnumerable< double > c)
Definition: DoubleVector.cs:56
void Reverse(int index, int count)
static global::System.IntPtr DoubleVector_GetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static uint DoubleVector_size(global::System.Runtime.InteropServices.HandleRef jarg1)
static void DoubleVector_Insert(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, double jarg3)
static void delete_DoubleVector(global::System.Runtime.InteropServices.HandleRef jarg1)
static void DoubleVector_Reverse__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static void DoubleVector_Add(global::System.Runtime.InteropServices.HandleRef jarg1, double jarg2)
static void DoubleVector_RemoveRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static void DoubleVector_AddRange(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
static void DoubleVector_RemoveAt(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static void DoubleVector_SetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3)
static double DoubleVector_getitemcopy(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static global::System.IntPtr DoubleVector_Repeat(double jarg1, int jarg2)
static void DoubleVector_Clear(global::System.Runtime.InteropServices.HandleRef jarg1)
static int DoubleVector_LastIndexOf(global::System.Runtime.InteropServices.HandleRef jarg1, double jarg2)
static bool DoubleVector_Remove(global::System.Runtime.InteropServices.HandleRef jarg1, double jarg2)
static void DoubleVector_Reverse__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1)
static void DoubleVector_InsertRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3)
static int DoubleVector_IndexOf(global::System.Runtime.InteropServices.HandleRef jarg1, double jarg2)
static bool DoubleVector_Contains(global::System.Runtime.InteropServices.HandleRef jarg1, double jarg2)