CoinMpsCardReader Class Reference

Very simple code for reading MPS data. More...

#include <CoinMpsIO.hpp>

Inheritance diagram for CoinMpsCardReader:

Inheritance graph
[legend]
Collaboration diagram for CoinMpsCardReader:

Collaboration graph
[legend]
List of all members.

methods

double osi_strtod (char *ptr, char **output, int type)
 type - 0 normal, 1 INTEL IEEE, 2 other IEEE
double osi_strtod (char *ptr, char **output)
 For strings.
static void strcpyAndCompress (char *to, const char *from)
 remove blanks
static char * nextBlankOr (char *image)
 type - 0 normal, 1 INTEL IEEE, 2 other IEEE

Public Member Functions

Constructor and destructor
 CoinMpsCardReader (CoinFileInput *input, CoinMpsIO *reader)
 Constructor expects file to be open This one takes gzFile if fp null.
 ~CoinMpsCardReader ()
 Destructor.
card stuff
COINSectionType readToNextSection ()
 Read to next section.
COINSectionType nextField ()
 Gets next field and returns section type e.g. COIN_COLUMN_SECTION.
int nextGmsField (int expectedType)
 Gets next field for .gms file and returns type.
COINSectionType whichSection () const
 Returns current section type.
void setWhichSection (COINSectionType section)
 Sets current section type.
bool freeFormat () const
 Sees if free format.
void setFreeFormat (bool yesNo)
 Sets whether free format. Mainly for blank RHS etc.
COINMpsType mpsType () const
 Only for first field on card otherwise BLANK_COLUMN e.g.
int cleanCard ()
 Reads and cleans card - taking out trailing blanks - return 1 if EOF.
const char * rowName () const
 Returns row name of current field.
const char * columnName () const
 Returns column name of current field.
double value () const
 Returns value in current field.
const char * valueString () const
 Returns value as string in current field.
const char * card () const
 Whole card (for printing).
char * mutableCard ()
 Whole card - so we look at it (not const so nextBlankOr will work for gms reader).
void setPosition (char *position)
 set position (again so gms reader will work)
char * getPosition () const
 get position (again so gms reader will work)
CoinBigIndex cardNumber () const
 Returns card number.
CoinFileInputfileInput () const
 Returns file input.
void setStringsAllowed ()
 Sets whether strings allowed.

Protected Attributes

data
double value_
 Current value.
char card_ [MAX_CARD_LENGTH]
 Current card image.
char * position_
 Current position within card image.
char * eol_
 End of card.
COINMpsType mpsType_
 Current COINMpsType.
char rowName_ [COIN_MAX_FIELD_LENGTH]
 Current row name.
char columnName_ [COIN_MAX_FIELD_LENGTH]
 Current column name.
CoinFileInputinput_
 File input.
COINSectionType section_
 Which section we think we are in.
CoinBigIndex cardNumber_
 Card number.
bool freeFormat_
 Whether free format. Just for blank RHS etc.
int ieeeFormat_
 Whether IEEE - 0 no, 1 INTEL, 2 not INTEL.
bool eightChar_
 If all names <= 8 characters then allow embedded blanks.
CoinMpsIOreader_
 MpsIO.
CoinMessageHandlerhandler_
 Message handler.
CoinMessages messages_
 Messages.
char valueString_ [COIN_MAX_FIELD_LENGTH]
 Current element as characters (only if strings allowed).
bool stringsAllowed_
 Whether strings allowed.

Detailed Description

Very simple code for reading MPS data.

Definition at line 59 of file CoinMpsIO.hpp.


Constructor & Destructor Documentation

CoinMpsCardReader::CoinMpsCardReader ( CoinFileInput input,
CoinMpsIO reader 
)

Constructor expects file to be open This one takes gzFile if fp null.

CoinMpsCardReader::~CoinMpsCardReader (  ) 

Destructor.


Member Function Documentation

COINSectionType CoinMpsCardReader::readToNextSection (  ) 

Read to next section.

COINSectionType CoinMpsCardReader::nextField (  ) 

Gets next field and returns section type e.g. COIN_COLUMN_SECTION.

int CoinMpsCardReader::nextGmsField ( int  expectedType  ) 

Gets next field for .gms file and returns type.

-1 - EOF 0 - what we expected (and processed so pointer moves past) 1 - not what we expected leading blanks always ignored input types 0 - anything - stops on non blank card 1 - name (in columnname) 2 - value 3 - value name pair 4 - equation type 5 - ;

COINSectionType CoinMpsCardReader::whichSection (  )  const [inline]

Returns current section type.

Definition at line 95 of file CoinMpsIO.hpp.

References section_.

void CoinMpsCardReader::setWhichSection ( COINSectionType  section  )  [inline]

Sets current section type.

Definition at line 99 of file CoinMpsIO.hpp.

References section_.

bool CoinMpsCardReader::freeFormat (  )  const [inline]

Sees if free format.

Definition at line 103 of file CoinMpsIO.hpp.

References freeFormat_.

void CoinMpsCardReader::setFreeFormat ( bool  yesNo  )  [inline]

Sets whether free format. Mainly for blank RHS etc.

Definition at line 106 of file CoinMpsIO.hpp.

References freeFormat_.

COINMpsType CoinMpsCardReader::mpsType (  )  const [inline]

Only for first field on card otherwise BLANK_COLUMN e.g.

COIN_E_ROW

Definition at line 110 of file CoinMpsIO.hpp.

References mpsType_.

int CoinMpsCardReader::cleanCard (  ) 

Reads and cleans card - taking out trailing blanks - return 1 if EOF.

const char* CoinMpsCardReader::rowName (  )  const [inline]

Returns row name of current field.

Definition at line 116 of file CoinMpsIO.hpp.

References rowName_.

const char* CoinMpsCardReader::columnName (  )  const [inline]

Returns column name of current field.

Definition at line 120 of file CoinMpsIO.hpp.

References columnName_.

double CoinMpsCardReader::value (  )  const [inline]

Returns value in current field.

Definition at line 124 of file CoinMpsIO.hpp.

References value_.

const char* CoinMpsCardReader::valueString (  )  const [inline]

Returns value as string in current field.

Definition at line 128 of file CoinMpsIO.hpp.

References valueString_.

const char* CoinMpsCardReader::card (  )  const [inline]

Whole card (for printing).

Definition at line 132 of file CoinMpsIO.hpp.

References card_.

char* CoinMpsCardReader::mutableCard (  )  [inline]

Whole card - so we look at it (not const so nextBlankOr will work for gms reader).

Definition at line 136 of file CoinMpsIO.hpp.

References card_.

void CoinMpsCardReader::setPosition ( char *  position  )  [inline]

set position (again so gms reader will work)

Definition at line 140 of file CoinMpsIO.hpp.

References position_.

char* CoinMpsCardReader::getPosition (  )  const [inline]

get position (again so gms reader will work)

Definition at line 143 of file CoinMpsIO.hpp.

References position_.

CoinBigIndex CoinMpsCardReader::cardNumber (  )  const [inline]

Returns card number.

Definition at line 146 of file CoinMpsIO.hpp.

References cardNumber_.

CoinFileInput* CoinMpsCardReader::fileInput (  )  const [inline]

Returns file input.

Definition at line 150 of file CoinMpsIO.hpp.

References input_.

void CoinMpsCardReader::setStringsAllowed (  )  [inline]

Sets whether strings allowed.

Definition at line 154 of file CoinMpsIO.hpp.

References stringsAllowed_.

double CoinMpsCardReader::osi_strtod ( char *  ptr,
char **  output,
int  type 
)

type - 0 normal, 1 INTEL IEEE, 2 other IEEE

static void CoinMpsCardReader::strcpyAndCompress ( char *  to,
const char *  from 
) [static]

remove blanks

static char* CoinMpsCardReader::nextBlankOr ( char *  image  )  [static]

type - 0 normal, 1 INTEL IEEE, 2 other IEEE

double CoinMpsCardReader::osi_strtod ( char *  ptr,
char **  output 
)

For strings.


Member Data Documentation

double CoinMpsCardReader::value_ [protected]

Current value.

Definition at line 164 of file CoinMpsIO.hpp.

Referenced by value().

char CoinMpsCardReader::card_[MAX_CARD_LENGTH] [protected]

Current card image.

Definition at line 166 of file CoinMpsIO.hpp.

Referenced by card(), and mutableCard().

char* CoinMpsCardReader::position_ [protected]

Current position within card image.

Definition at line 168 of file CoinMpsIO.hpp.

Referenced by getPosition(), and setPosition().

char* CoinMpsCardReader::eol_ [protected]

End of card.

Definition at line 170 of file CoinMpsIO.hpp.

COINMpsType CoinMpsCardReader::mpsType_ [protected]

Current COINMpsType.

Definition at line 172 of file CoinMpsIO.hpp.

Referenced by mpsType().

char CoinMpsCardReader::rowName_[COIN_MAX_FIELD_LENGTH] [protected]

Current row name.

Definition at line 174 of file CoinMpsIO.hpp.

Referenced by rowName(), and SmiSmpsCardReader::scenarioAnc().

char CoinMpsCardReader::columnName_[COIN_MAX_FIELD_LENGTH] [protected]

Current column name.

Definition at line 176 of file CoinMpsIO.hpp.

Referenced by columnName(), and SmiSmpsCardReader::scenarioNew().

CoinFileInput* CoinMpsCardReader::input_ [protected]

File input.

Definition at line 178 of file CoinMpsIO.hpp.

Referenced by fileInput().

COINSectionType CoinMpsCardReader::section_ [protected]

Which section we think we are in.

Definition at line 180 of file CoinMpsIO.hpp.

Referenced by setWhichSection(), and whichSection().

CoinBigIndex CoinMpsCardReader::cardNumber_ [protected]

Card number.

Definition at line 182 of file CoinMpsIO.hpp.

Referenced by cardNumber().

bool CoinMpsCardReader::freeFormat_ [protected]

Whether free format. Just for blank RHS etc.

Definition at line 184 of file CoinMpsIO.hpp.

Referenced by freeFormat(), and setFreeFormat().

int CoinMpsCardReader::ieeeFormat_ [protected]

Whether IEEE - 0 no, 1 INTEL, 2 not INTEL.

Definition at line 186 of file CoinMpsIO.hpp.

bool CoinMpsCardReader::eightChar_ [protected]

If all names <= 8 characters then allow embedded blanks.

Definition at line 188 of file CoinMpsIO.hpp.

CoinMpsIO* CoinMpsCardReader::reader_ [protected]

MpsIO.

Definition at line 190 of file CoinMpsIO.hpp.

CoinMessageHandler* CoinMpsCardReader::handler_ [protected]

Message handler.

Definition at line 192 of file CoinMpsIO.hpp.

CoinMessages CoinMpsCardReader::messages_ [protected]

Messages.

Definition at line 194 of file CoinMpsIO.hpp.

char CoinMpsCardReader::valueString_[COIN_MAX_FIELD_LENGTH] [protected]

Current element as characters (only if strings allowed).

Definition at line 196 of file CoinMpsIO.hpp.

Referenced by valueString().

bool CoinMpsCardReader::stringsAllowed_ [protected]

Whether strings allowed.

Definition at line 198 of file CoinMpsIO.hpp.

Referenced by setStringsAllowed().


The documentation for this class was generated from the following file:
Generated on Sun Nov 14 14:13:35 2010 for Coin-All by  doxygen 1.4.7