1 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 2 /* */ 3 /* This file is part of the program PolySCIP */ 4 /* */ 5 /* Copyright (C) 2012-2021 Konrad-Zuse-Zentrum */ 6 /* fuer Informationstechnik Berlin */ 7 /* */ 8 /* PolySCIP is distributed under the terms of the ZIB Academic License. */ 9 /* */ 10 /* You should have received a copy of the ZIB Academic License */ 11 /* along with PolySCIP; see the file LICENCE. */ 12 /* */ 13 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 14 15 /** 16 * @file ReaderMOP.h 17 * @brief .mop file format reader 18 * @author Sebastian Schenker 19 * @author Timo Strunk 20 * 21 * Adaption of SCIP MPS reader towards MOP format with multiple objectives. 22 * The input file has to follow some simple conventions 23 * - It has to contain a problem in 24 * <a href="http://en.wikipedia.org/wiki/MPS_%28format%29">MPS</a> format 25 * - The file extension must be <code>.mop</code> 26 * - Every row marked <code>N</code> is treated as an objective 27 */ 28 29 #ifndef POLYSCIP_SRC_READER_MOP_H_INCLUDED 30 #define POLYSCIP_SRC_READER_MOP_H_INCLUDED 31 32 #include "objscip/objscip.h" 33 34 /** 35 * @class ReaderMOP 36 * @brief Class for .mop file reader 37 */ 38 class ReaderMOP : public scip::ObjReader { 39 public: 40 /** 41 * Constructor 42 * @param scip SCIP pointer 43 */ ReaderMOP(SCIP * scip)44 ReaderMOP(SCIP *scip) 45 : scip::ObjReader(scip, "MOP Reader", "file reader for MOP file", "mop") { }; 46 47 /** 48 * Destructor 49 */ ~ReaderMOP()50 virtual ~ReaderMOP() { }; 51 52 /** 53 * Virtual SCIP function 54 */ 55 virtual SCIP_DECL_READERFREE(scip_free); 56 57 /** 58 * Virtual SCIP function 59 */ 60 virtual SCIP_DECL_READERREAD(scip_read); 61 62 }; 63 64 #endif //POLYSCIP_SRC_READER_MOP_H_INCLUDED 65