Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members

ClpParameters.hpp

00001 // Copyright (C) 2000, 2002, International Business Machines
00002 // Corporation and others.  All Rights Reserved.
00003 
00004 #ifndef _ClpParameters_H
00005 #define _ClpParameters_H
00006 
00010 enum ClpIntParam {
00013   ClpMaxNumIteration = 0,
00016   ClpMaxNumIterationHotStart,
00019   ClpLastIntParam
00020 };
00021 
00022 enum ClpDblParam {
00026   ClpDualObjectiveLimit,
00030   ClpPrimalObjectiveLimit,
00033   ClpDualTolerance,
00036   ClpPrimalTolerance,
00039   ClpObjOffset,
00041   ClpMaxSeconds,
00044   ClpLastDblParam
00045 };
00046 
00047 
00048 enum ClpStrParam {
00051   ClpProbName = 0,
00054   ClpLastStrParam
00055 };
00056 
00058 template <class T> inline void
00059 ClpDisjointCopyN( const T * array, const int size, T * newArray)
00060 {
00061   memcpy((void *) newArray,array,size*sizeof(T));
00062 }
00064 template <class T> inline void
00065 ClpFillN( T * array, const int size, T value)
00066 {
00067   int i;
00068   for (i=0;i<size;i++)
00069     array[i]=value;
00070 }
00072 template <class T> inline T*
00073 ClpCopyOfArray( const T * array, const int size, T value)
00074 {
00075   T * arrayNew = new T[size];
00076   if (array) 
00077     ClpDisjointCopyN(array,size,arrayNew);
00078   else
00079     ClpFillN ( arrayNew, size,value);
00080   return arrayNew;
00081 }
00082 
00084 template <class T> inline T*
00085 ClpCopyOfArray( const T * array, const int size)
00086 {
00087   if (array) {
00088     T * arrayNew = new T[size];
00089     ClpDisjointCopyN(array,size,arrayNew);
00090     return arrayNew;
00091   } else {
00092     return NULL;
00093   }
00094 }
00095 #endif

Generated on Wed Dec 3 14:37:28 2003 for CLP by doxygen 1.3.5