[Coin-discuss] CoinBigIndex
Matthew Galati
magh at lehigh.edu
Tue Dec 16 02:46:52 EST 2003
Hi Coin,
I needed to use long (vs int) for my element indices. I noticed that
with ${CoinDefine} += COIN_BIG_INDEX some of the Coin library functions
are using CoinBigIndex typedef'd to a long. Adding this to CoinDefine,
however, produced a number of compiler errors. The following is a patch
that should allow Coin, Osi, OsiOsl, OsiClp to compile (using the
typedef'd CoinBigIndex). I have not tested it outside of getting it to
compile, link and run (on my stuff).
Index: CoinFactorization1.cpp
===================================================================
RCS file: /usr/cvs/coin/COIN/Coin/CoinFactorization1.cpp,v
retrieving revision 1.10
diff -r1.10 CoinFactorization1.cpp
1618c1618
< int * startR = startColumnR_ + extraSpace+1;
---
> CoinBigIndex * startR = startColumnR_ + extraSpace+1;
Index: CoinFactorization3.cpp
===================================================================
RCS file: /usr/cvs/coin/COIN/Coin/CoinFactorization3.cpp,v
retrieving revision 1.15
diff -r1.15 CoinFactorization3.cpp
779c779
< int * startR = startColumnR_+maximumPivots_+1;
---
> CoinBigIndex * startR = startColumnR_+maximumPivots_+1;
799c799
< startR[maximumColumnsExtra_] = min(put + 4,lengthAreaR_);
---
> startR[maximumColumnsExtra_] = put + 4 < lengthAreaR_ ? put + 4
: lengthAreaR_;
1770c1770
< int * startR = startColumnR_+maximumPivots_+1;
---
> CoinBigIndex * startR = startColumnR_+maximumPivots_+1;
Index: CoinFactorization4.cpp
===================================================================
RCS file: /usr/cvs/coin/COIN/Coin/CoinFactorization4.cpp,v
retrieving revision 1.14
diff -r1.14 CoinFactorization4.cpp
747c747
< int * startR = startColumnR_+maximumPivots_+1;
---
> CoinBigIndex * startR = startColumnR_+maximumPivots_+1;
799c799
< int * startR = startColumnR_+maximumPivots_+1;
---
> CoinBigIndex * startR = startColumnR_+maximumPivots_+1;
918c918
< int * startR = startColumnR_+maximumPivots_+1;
---
> CoinBigIndex * startR = startColumnR_+maximumPivots_+1;
987c987
< int * startR = startColumnR_+maximumPivots_+1;
---
> CoinBigIndex * startR = startColumnR_+maximumPivots_+1;
Index: CoinPackedMatrix.cpp
===================================================================
RCS file: /usr/cvs/coin/COIN/Coin/CoinPackedMatrix.cpp,v
retrieving revision 1.16
diff -r1.16 CoinPackedMatrix.cpp
1829c1829
< maxSize_=max(1,size_);
---
> maxSize_= 1 > size_ ? 1 : size_;
Index: OsiClp/OsiClpSolverInterface.cpp
===================================================================
RCS file: /usr/cvs/coin/COIN/Osi/OsiClp/OsiClpSolverInterface.cpp,v
retrieving revision 1.42
diff -r1.42 OsiClpSolverInterface.cpp
1078c1078
< const int* start, const int* index,
---
> const CoinBigIndex* start, const int* index,
1094c1094
< const int* start, const int* index,
---
> const CoinBigIndex* start, const int* index,
Index: OsiClp/include/OsiClpSolverInterface.hpp
===================================================================
RCS file: /usr/cvs/coin/COIN/Osi/OsiClp/include/OsiClpSolverInterface.hpp,v
retrieving revision 1.17
diff -r1.17 OsiClpSolverInterface.hpp
622c622
< const int* start, const int* index,
---
> const CoinBigIndex* start, const int* index,
631c631
< const int* start, const int* index,
---
> const CoinBigIndex* start, const int* index,
Index: OsiOsl/OsiOslSolverInterface.cpp
===================================================================
RCS file: /usr/cvs/coin/COIN/Osi/OsiOsl/OsiOslSolverInterface.cpp,v
retrieving revision 1.16
diff -r1.16 OsiOslSolverInterface.cpp
27c27
< const int * start = matrix.getVectorStarts();
---
> const CoinBigIndex * start = matrix.getVectorStarts();
1153c1153
< int* start = new int[numcols+1];
---
> CoinBigIndex* start = new CoinBigIndex[numcols+1];
1350c1350
< const int* start, const int* index,
---
> const CoinBigIndex* start, const int* index,
1369c1369
< const int* start, const int* index,
---
> const CoinBigIndex* start, const int* index,
Index: OsiOsl/include/OsiOslSolverInterface.hpp
===================================================================
RCS file: /usr/cvs/coin/COIN/Osi/OsiOsl/include/OsiOslSolverInterface.hpp,v
retrieving revision 1.7
diff -r1.7 OsiOslSolverInterface.hpp
553c553
< const int* start, const int* index,
---
> const CoinBigIndex* start, const int* index,
562c562
< const int* start, const int* index,
---
> const CoinBigIndex* start, const int* index,
Index: include/OsiSolverInterface.hpp
===================================================================
RCS file: /usr/cvs/coin/COIN/Osi/include/OsiSolverInterface.hpp,v
retrieving revision 1.20
diff -r1.20 OsiSolverInterface.hpp
10a11
> #include "CoinPackedMatrix.hpp"
817c818
< const int* start, const int* index,
---
> const CoinBigIndex* start, const int* index,
826c827
< const int* start, const int* index,
---
> const CoinBigIndex* start, const int* index,
--
Matthew Galati
ISE Lehigh University
IBM Service Parts Solutions
610.758.4042 (Office)
610.882.0779 (Home)
magh at lehigh.edu, magal11 at us.ibm.com
http://sagan.ie.lehigh.edu/mgalati/
More information about the Coin-discuss
mailing list