14using System.Runtime.InteropServices;
16public class OdInt32Array : IDisposable, System.Collections.IEnumerable
17, System.Collections.Generic.IList<Int32 >
19 private Object locker =
new Object();
20 private HandleRef swigCPtr;
22 [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
25 swigCPtr =
new HandleRef(
this, cPtr);
27 [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
29 return (obj ==
null) ?
new HandleRef(
null, IntPtr.Zero) : obj.swigCPtr;
38 global::System.GC.SuppressFinalize(
this);
41 protected virtual void Dispose(
bool disposing) {
43 if (swigCPtr.Handle != global::System.IntPtr.Zero) {
48 swigCPtr =
new global::System.Runtime.InteropServices.HandleRef(
null, global::System.IntPtr.Zero);
55 throw new ArgumentNullException(
"c");
56 foreach (Int32 element
in c) {
62 : this(
GlobalsPINVOKE.new_OdInt32Array__SWIG_0(), MemoryManager.GetMemoryManager().GetCurrentTransaction() == null)
64 MemoryTransaction mTr = MemoryManager.GetMemoryManager().GetCurrentTransaction();
73 MemoryTransaction mTr = MemoryManager.GetMemoryManager().GetCurrentTransaction();
81 public OdInt32Array(
int capacity) : this(
GlobalsPINVOKE.new_OdInt32Array__SWIG_2(capacity), MemoryManager.GetMemoryManager().GetCurrentTransaction() == null) {
82 MemoryTransaction mTr = MemoryManager.GetMemoryManager().GetCurrentTransaction();
102 public Int32
this[
int index] {
104 return getitem(index);
107 setitem(index,
value);
113 return (
int)capacity();
117 throw new ArgumentOutOfRangeException(
"Capacity");
118 reserve((uint)
value);
139 public void CopyTo(Int32 [] array,
int arrayIndex)
144 public void CopyTo(
int index, Int32 [] array,
int arrayIndex,
int count)
147 throw new ArgumentNullException(
"array");
149 throw new ArgumentOutOfRangeException(
"index",
"Value is less than zero");
151 throw new ArgumentOutOfRangeException(
"arrayIndex",
"Value is less than zero");
153 throw new ArgumentOutOfRangeException(
"count",
"Value is less than zero");
155 throw new ArgumentException(
"Multi dimensional array.",
"array");
156 if (index+count > this.
Count || arrayIndex+count > array.Length)
157 throw new ArgumentException(
"Number of elements to copy is too large.");
158 for (
int i=0; i<count; i++)
159 array.SetValue(getitemcopy(index+i), arrayIndex+i);
162 System.Collections.Generic.IEnumerator<Int32 > System.Collections.Generic.IEnumerable<Int32 >.GetEnumerator() {
163 return new OdInt32ArrayEnumerator(
this);
166 System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() {
167 return new OdInt32ArrayEnumerator(
this);
180 , System.Collections.Generic.IEnumerator<Int32 >
183 private int currentIndex;
184 private object currentObject;
185 private int currentSize;
188 collectionRef = collection;
190 currentObject =
null;
191 currentSize = collectionRef.
Count;
197 if (currentIndex == -1)
198 throw new InvalidOperationException(
"Enumeration not started.");
199 if (currentIndex > currentSize - 1)
200 throw new InvalidOperationException(
"Enumeration finished.");
201 if (currentObject ==
null)
202 throw new InvalidOperationException(
"Collection modified.");
203 return (Int32 )currentObject;
208 object System.Collections.IEnumerator.Current {
215 int size = collectionRef.
Count;
216 bool moveOkay = (currentIndex+1 < size) && (size == currentSize);
219 currentObject = collectionRef[currentIndex];
221 currentObject =
null;
228 currentObject =
null;
229 if (collectionRef.
Count != currentSize) {
230 throw new InvalidOperationException(
"Collection modified.");
236 currentObject =
null;
245 public void Add(Int32 x) {
250 private uint size() {
256 private uint capacity() {
257 uint ret = GlobalsPINVOKE.OdInt32Array_capacity(swigCPtr);
258 if (GlobalsPINVOKE.SWIGPendingException.Pending)
throw GlobalsPINVOKE.SWIGPendingException.Retrieve();
262 private void reserve(uint n) {
263 GlobalsPINVOKE.OdInt32Array_reserve(swigCPtr, n);
264 if (GlobalsPINVOKE.SWIGPendingException.Pending)
throw GlobalsPINVOKE.SWIGPendingException.Retrieve();
272 private Int32 getitemcopy(
int index) {
280 private Int32 getitem(
int index) {
283 Int32 ret = GlobalsPINVOKE.OdInt32Array_getitem(swigCPtr, index);
284 if (GlobalsPINVOKE.SWIGPendingException.Pending)
throw GlobalsPINVOKE.SWIGPendingException.Retrieve();
288 private void setitem(
int index, Int32 val) {
289 GlobalsPINVOKE.OdInt32Array_setitem(swigCPtr, index, val );
290 if (GlobalsPINVOKE.SWIGPendingException.Pending)
throw GlobalsPINVOKE.SWIGPendingException.Retrieve();
static global::System.Exception Retrieve()
static void OdInt32Array_SetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3)
static void delete_OdInt32Array(global::System.Runtime.InteropServices.HandleRef jarg1)
static global::System.IntPtr OdInt32Array_Repeat(Int32 jarg1, int jarg2)
static void OdInt32Array_Reverse__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1)
static bool OdInt32Array_Remove(global::System.Runtime.InteropServices.HandleRef jarg1, Int32 jarg2)
static int OdInt32Array_IndexOf(global::System.Runtime.InteropServices.HandleRef jarg1, Int32 jarg2)
static void OdInt32Array_resize(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2)
static void OdInt32Array_InsertRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3)
static Int32 OdInt32Array_getitemcopy(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static void OdInt32Array_Clear(global::System.Runtime.InteropServices.HandleRef jarg1)
static int OdInt32Array_LastIndexOf(global::System.Runtime.InteropServices.HandleRef jarg1, Int32 jarg2)
static void OdInt32Array_Insert(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, Int32 jarg3)
static void OdInt32Array_AddRange(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
static bool OdInt32Array_Contains(global::System.Runtime.InteropServices.HandleRef jarg1, Int32 jarg2)
static void OdInt32Array_Add(global::System.Runtime.InteropServices.HandleRef jarg1, Int32 jarg2)
static uint OdInt32Array_size(global::System.Runtime.InteropServices.HandleRef jarg1)
static void OdInt32Array_RemoveAt(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static void OdInt32Array_RemoveRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static void OdInt32Array_Reverse__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static global::System.IntPtr OdInt32Array_GetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
OdInt32ArrayEnumerator(OdInt32Array collection)
void RemoveRange(int index, int count)
void CopyTo(int index, Int32[] array, int arrayIndex, int count)
OdInt32ArrayEnumerator GetEnumerator()
void Reverse(int index, int count)
void InsertRange(int index, OdInt32Array values)
virtual void Dispose(bool disposing)
bool Contains(Int32 value)
void resize(uint logicalLength)
void CopyTo(Int32[] array, int arrayIndex)
static OdInt32Array Repeat(Int32 value, int count)
OdInt32Array(int capacity)
int LastIndexOf(Int32 value)
OdInt32Array(IntPtr cPtr, bool cMemoryOwn)
OdInt32Array GetRange(int index, int count)
OdInt32Array(System.Collections.ICollection c)
void AddRange(OdInt32Array values)
static HandleRef getCPtr(OdInt32Array obj)
void Insert(int index, Int32 x)
void CopyTo(Int32[] array)
void SetRange(int index, OdInt32Array values)
OdInt32Array(OdInt32Array other)