CoinShallowPackedVector.hpp
Go to the documentation of this file.
1 /* $Id: CoinShallowPackedVector.hpp 1498 2011-11-02 15:25:35Z mjs $ */
2 // Copyright (C) 2000, International Business Machines
3 // Corporation and others. All Rights Reserved.
4 // This code is licensed under the terms of the Eclipse Public License (EPL).
5 
6 #ifndef CoinShallowPackedVector_H
7 #define CoinShallowPackedVector_H
8 
9 #if defined(_MSC_VER)
10 // Turn off compiler warning about long names
11 # pragma warning(disable:4786)
12 #endif
13 
14 #include "CoinError.hpp"
15 #include "CoinPackedVectorBase.hpp"
16 
75  friend void CoinShallowPackedVectorUnitTest();
76 
77 public:
78 
81  virtual int getNumElements() const { return nElements_; }
84  virtual const int * getIndices() const { return indices_; }
86  virtual const double * getElements() const { return elements_; }
88 
91  void clear();
98  void setVector(int size, const int * indices, const double * elements,
99  bool testForDuplicateIndex = true);
101 
114  CoinShallowPackedVector(int size,
115  const int * indices, const double * elements,
116  bool testForDuplicateIndex = true);
124  void print();
126 
127 private:
130  const int * indices_;
133  const double * elements_;
137 };
138 
139 //#############################################################################
145 void
147 
148 #endif
const double * elements_
Vector elements.
friend void CoinShallowPackedVectorUnitTest()
A function that tests the methods in the CoinShallowPackedVector class.
void clear()
Reset the vector (as if were just created an empty vector)
const int * indices_
Vector indices.
Abstract base class for various sparse vectors.
int nElements_
Size of indices and elements vectors.
CoinShallowPackedVector(bool testForDuplicateIndex=true)
Default constructor.
virtual int getNumElements() const
Get length of indices and elements vectors.
void print()
Print vector information.
void CoinShallowPackedVectorUnitTest()
A function that tests the methods in the CoinShallowPackedVector class.
virtual const int * getIndices() const
Get indices of elements.
bool testForDuplicateIndex() const
Returns true if the vector should be tested for duplicate indices when they can occur.
virtual const double * getElements() const
Get element values.
virtual ~CoinShallowPackedVector()
Destructor.
CoinShallowPackedVector & operator=(const CoinShallowPackedVector &x)
Assignment operator.
void setVector(int size, const int *indices, const double *elements, bool testForDuplicateIndex=true)
just like the explicit constructor