14using System.Runtime.InteropServices;
16public class StdVectorDouble : global::System.IDisposable, global::System.Collections.IEnumerable, global::System.Collections.Generic.IList<double>
18 private Object locker =
new Object();
19 private HandleRef swigCPtr;
21 [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
24 swigCPtr =
new HandleRef(
this, cPtr);
26 [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
28 return (obj ==
null) ?
new HandleRef(
null, IntPtr.Zero) : obj.swigCPtr;
37 global::System.GC.SuppressFinalize(
this);
40 protected virtual void Dispose(
bool disposing) {
42 if (swigCPtr.Handle != global::System.IntPtr.Zero) {
47 swigCPtr =
new global::System.Runtime.InteropServices.HandleRef(
null, global::System.IntPtr.Zero);
54 throw new global::System.ArgumentNullException(
"c");
55 foreach (
double element
in c) {
60 public StdVectorDouble(global::System.Collections.Generic.IEnumerable<
double> c) : this() {
62 throw new global::System.ArgumentNullException(
"c");
63 foreach (
double element
in c) {
80 public double this[
int index] {
82 return getitem(index);
85 setitem(index,
value);
91 return (
int)capacity();
95 throw new global::System.ArgumentOutOfRangeException(
"Capacity");
117 public void CopyTo(
double[] array,
int arrayIndex)
122 public void CopyTo(
int index,
double[] array,
int arrayIndex,
int count)
125 throw new global::System.ArgumentNullException(
"array");
127 throw new global::System.ArgumentOutOfRangeException(
"index",
"Value is less than zero");
129 throw new global::System.ArgumentOutOfRangeException(
"arrayIndex",
"Value is less than zero");
131 throw new global::System.ArgumentOutOfRangeException(
"count",
"Value is less than zero");
133 throw new global::System.ArgumentException(
"Multi dimensional array.",
"array");
134 if (index+count > this.
Count || arrayIndex+count > array.Length)
135 throw new global::System.ArgumentException(
"Number of elements to copy is too large.");
136 for (
int i=0; i<count; i++)
137 array.SetValue(getitemcopy(index+i), arrayIndex+i);
141 double[] array =
new double[this.
Count];
146 global::System.Collections.Generic.IEnumerator<
double> global::System.Collections.Generic.IEnumerable<
double>.GetEnumerator() {
147 return new StdVectorDoubleEnumerator(
this);
150 global::System.Collections.IEnumerator global::System.Collections.IEnumerable.GetEnumerator() {
151 return new StdVectorDoubleEnumerator(
this);
164 , global::System.Collections.Generic.IEnumerator<double>
167 private int currentIndex;
168 private object currentObject;
169 private int currentSize;
172 collectionRef = collection;
174 currentObject =
null;
175 currentSize = collectionRef.
Count;
181 if (currentIndex == -1)
182 throw new global::System.InvalidOperationException(
"Enumeration not started.");
183 if (currentIndex > currentSize - 1)
184 throw new global::System.InvalidOperationException(
"Enumeration finished.");
185 if (currentObject ==
null)
186 throw new global::System.InvalidOperationException(
"Collection modified.");
187 return (
double)currentObject;
192 object global::System.Collections.IEnumerator.Current {
199 int size = collectionRef.
Count;
200 bool moveOkay = (currentIndex+1 < size) && (size == currentSize);
203 currentObject = collectionRef[currentIndex];
205 currentObject =
null;
212 currentObject =
null;
213 if (collectionRef.
Count != currentSize) {
214 throw new global::System.InvalidOperationException(
"Collection modified.");
220 currentObject =
null;
229 public void Add(
double x) {
234 private uint size() {
240 private uint capacity() {
241 uint ret = GlobalsPINVOKE.StdVectorDouble_capacity(swigCPtr);
242 if (GlobalsPINVOKE.SWIGPendingException.Pending)
throw GlobalsPINVOKE.SWIGPendingException.Retrieve();
246 private void reserve(uint n) {
247 GlobalsPINVOKE.StdVectorDouble_reserve(swigCPtr, n);
248 if (GlobalsPINVOKE.SWIGPendingException.Pending)
throw GlobalsPINVOKE.SWIGPendingException.Retrieve();
263 private double getitemcopy(
int index) {
269 private double getitem(
int index) {
270 double ret = GlobalsPINVOKE.StdVectorDouble_getitem(swigCPtr, index);
271 if (GlobalsPINVOKE.SWIGPendingException.Pending)
throw GlobalsPINVOKE.SWIGPendingException.Retrieve();
275 private void setitem(
int index,
double val) {
276 GlobalsPINVOKE.StdVectorDouble_setitem(swigCPtr, index, val);
277 if (GlobalsPINVOKE.SWIGPendingException.Pending)
throw GlobalsPINVOKE.SWIGPendingException.Retrieve();
292 public void Insert(
int index,
double x) {
static global::System.Exception Retrieve()
static void StdVectorDouble_Insert(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, double jarg3)
static global::System.IntPtr StdVectorDouble_GetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static void StdVectorDouble_Reverse__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static bool StdVectorDouble_Remove(global::System.Runtime.InteropServices.HandleRef jarg1, double jarg2)
static uint StdVectorDouble_size(global::System.Runtime.InteropServices.HandleRef jarg1)
static global::System.IntPtr StdVectorDouble_Repeat(double jarg1, int jarg2)
static void StdVectorDouble_Clear(global::System.Runtime.InteropServices.HandleRef jarg1)
static void StdVectorDouble_Add(global::System.Runtime.InteropServices.HandleRef jarg1, double jarg2)
static void StdVectorDouble_AddRange(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
static int StdVectorDouble_LastIndexOf(global::System.Runtime.InteropServices.HandleRef jarg1, double jarg2)
static bool StdVectorDouble_Contains(global::System.Runtime.InteropServices.HandleRef jarg1, double jarg2)
static void delete_StdVectorDouble(global::System.Runtime.InteropServices.HandleRef jarg1)
static void StdVectorDouble_RemoveRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static void StdVectorDouble_SetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3)
static void StdVectorDouble_InsertRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3)
static int StdVectorDouble_IndexOf(global::System.Runtime.InteropServices.HandleRef jarg1, double jarg2)
static void StdVectorDouble_RemoveAt(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static void StdVectorDouble_Reverse__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1)
static double StdVectorDouble_getitemcopy(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
StdVectorDoubleEnumerator(StdVectorDouble collection)
int LastIndexOf(double value)
StdVectorDouble(global::System.Collections.IEnumerable c)
void CopyTo(double[] array, int arrayIndex)
StdVectorDoubleEnumerator GetEnumerator()
StdVectorDouble(StdVectorDouble other)
StdVectorDouble GetRange(int index, int count)
void RemoveRange(int index, int count)
static StdVectorDouble Repeat(double value, int count)
void AddRange(StdVectorDouble values)
virtual void Dispose(bool disposing)
StdVectorDouble(global::System.Collections.Generic.IEnumerable< double > c)
void SetRange(int index, StdVectorDouble values)
int IndexOf(double value)
void Insert(int index, double x)
void CopyTo(double[] array)
void Reverse(int index, int count)
void CopyTo(int index, double[] array, int arrayIndex, int count)
static HandleRef getCPtr(StdVectorDouble obj)
void InsertRange(int index, StdVectorDouble values)
StdVectorDouble(int capacity)
bool Remove(double value)
bool Contains(double value)
StdVectorDouble(IntPtr cPtr, bool cMemoryOwn)