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 
13 public 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) {
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) {
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 }
static void DoubleVector_Reverse__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static global::System.IntPtr DoubleVector_Repeat(double jarg1, int jarg2)
static int DoubleVector_LastIndexOf(global::System.Runtime.InteropServices.HandleRef jarg1, double jarg2)
void CopyTo(double[] array, int arrayIndex)
void Dispose()
bool Contains(double value)
void Reset()
void SetRange(int index, DoubleVector values)
void Insert(int index, double x)
static bool DoubleVector_Remove(global::System.Runtime.InteropServices.HandleRef jarg1, double jarg2)
void Add(double x)
DoubleVector(DoubleVector other)
bool IsReadOnly
Definition: DoubleVector.cs:70
void Reverse()
Note that the IEnumerator documentation requires an InvalidOperationException to be thrown whenever t...
static void delete_DoubleVector(global::System.Runtime.InteropServices.HandleRef jarg1)
bool IsFixedSize
Definition: DoubleVector.cs:64
static bool Pending
static DoubleVector Repeat(double value, int count)
bool Remove(double value)
static double DoubleVector_getitemcopy(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
DoubleVectorEnumerator GetEnumerator()
DoubleVector(int capacity)
static global::System.IntPtr DoubleVector_GetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
using System
Definition: Program.cs:14
int Count
Definition: DoubleVector.cs:96
void RemoveRange(int index, int count)
static int DoubleVector_IndexOf(global::System.Runtime.InteropServices.HandleRef jarg1, double jarg2)
double Current
static void DoubleVector_RemoveAt(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
void InsertRange(int index, DoubleVector values)
DoubleVectorEnumerator(DoubleVector collection)
DoubleVector(global::System.Collections.IEnumerable c)
Definition: DoubleVector.cs:48
void Reverse(int index, int count)
void Dispose()
Definition: DoubleVector.cs:31
static void DoubleVector_Clear(global::System.Runtime.InteropServices.HandleRef jarg1)
static void DoubleVector_InsertRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3)
DoubleVector(global::System.Collections.Generic.IEnumerable< double > c)
Definition: DoubleVector.cs:56
int IndexOf(double value)
DoubleVector GetRange(int index, int count)
static uint DoubleVector_size(global::System.Runtime.InteropServices.HandleRef jarg1)
static void DoubleVector_Reverse__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1)
double[] ToArray()
bool swigCMemOwn
Definition: DoubleVector.cs:16
int Capacity
Definition: DoubleVector.cs:85
void RemoveAt(int index)
Definition: DoubleVector.cs:14
static void DoubleVector_RemoveRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
bool MoveNext()
int LastIndexOf(double value)
void CopyTo(int index, double[] array, int arrayIndex, int count)
static global::System.Exception Retrieve()
static bool DoubleVector_Contains(global::System.Runtime.InteropServices.HandleRef jarg1, double jarg2)
void CopyTo(double[] array)
static void DoubleVector_SetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3)
virtual void Dispose(bool disposing)
Definition: DoubleVector.cs:36
static void DoubleVector_Add(global::System.Runtime.InteropServices.HandleRef jarg1, double jarg2)
static void DoubleVector_Insert(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, double jarg3)
void Clear()
bool IsSynchronized
void AddRange(DoubleVector values)
DoubleVector()
static void DoubleVector_AddRange(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)