summaryrefslogtreecommitdiff
path: root/doc/swig/test/Array1.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'doc/swig/test/Array1.cxx')
-rw-r--r--doc/swig/test/Array1.cxx131
1 files changed, 0 insertions, 131 deletions
diff --git a/doc/swig/test/Array1.cxx b/doc/swig/test/Array1.cxx
deleted file mode 100644
index 0c09e02f9..000000000
--- a/doc/swig/test/Array1.cxx
+++ /dev/null
@@ -1,131 +0,0 @@
-#include "Array1.h"
-#include <iostream>
-#include <sstream>
-
-// Default/length/array constructor
-Array1::Array1(int length, long* data) :
- _ownData(false), _length(0), _buffer(0)
-{
- resize(length, data);
-}
-
-// Copy constructor
-Array1::Array1(const Array1 & source) :
- _length(source._length)
-{
- allocateMemory();
- *this = source;
-}
-
-// Destructor
-Array1::~Array1()
-{
- deallocateMemory();
-}
-
-// Assignment operator
-Array1 & Array1::operator=(const Array1 & source)
-{
- int len = _length < source._length ? _length : source._length;
- for (int i=0; i < len; ++i)
- {
- (*this)[i] = source[i];
- }
- return *this;
-}
-
-// Equals operator
-bool Array1::operator==(const Array1 & other) const
-{
- if (_length != other._length) return false;
- for (int i=0; i < _length; ++i)
- {
- if ((*this)[i] != other[i]) return false;
- }
- return true;
-}
-
-// Length accessor
-int Array1::length() const
-{
- return _length;
-}
-
-// Resize array
-void Array1::resize(int length, long* data)
-{
- if (length < 0) throw std::invalid_argument("Array1 length less than 0");
- if (length == _length) return;
- deallocateMemory();
- _length = length;
- if (!data)
- {
- allocateMemory();
- }
- else
- {
- _ownData = false;
- _buffer = data;
- }
-}
-
-// Set item accessor
-long & Array1::operator[](int i)
-{
- if (i < 0 || i >= _length) throw std::out_of_range("Array1 index out of range");
- return _buffer[i];
-}
-
-// Get item accessor
-const long & Array1::operator[](int i) const
-{
- if (i < 0 || i >= _length) throw std::out_of_range("Array1 index out of range");
- return _buffer[i];
-}
-
-// String output
-std::string Array1::asString() const
-{
- std::stringstream result;
- result << "[";
- for (int i=0; i < _length; ++i)
- {
- result << " " << _buffer[i];
- if (i < _length-1) result << ",";
- }
- result << " ]";
- return result.str();
-}
-
-// Get view
-void Array1::view(long** data, int* length) const
-{
- *data = _buffer;
- *length = _length;
-}
-
-// Private methods
- void Array1::allocateMemory()
- {
- if (_length == 0)
- {
- _ownData = false;
- _buffer = 0;
- }
- else
- {
- _ownData = true;
- _buffer = new long[_length];
- }
- }
-
- void Array1::deallocateMemory()
- {
- if (_ownData && _length && _buffer)
- {
- delete [] _buffer;
- }
- _ownData = false;
- _length = 0;
- _buffer = 0;
- }