You can subscribe to this list here.
2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(3) |
Sep
|
Oct
|
Nov
|
Dec
(1) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2009 |
Jan
(3) |
Feb
(2) |
Mar
(27) |
Apr
(8) |
May
(22) |
Jun
(10) |
Jul
(4) |
Aug
(3) |
Sep
(25) |
Oct
(12) |
Nov
|
Dec
(6) |
2010 |
Jan
(13) |
Feb
(3) |
Mar
(2) |
Apr
(1) |
May
|
Jun
(3) |
Jul
(11) |
Aug
(14) |
Sep
(14) |
Oct
(4) |
Nov
(1) |
Dec
(2) |
From: <den...@us...> - 2009-03-08 19:52:09
|
Revision: 175 http://rmol.svn.sourceforge.net/rmol/?rev=175&view=rev Author: denis_arnaud Date: 2009-03-08 19:51:59 +0000 (Sun, 08 Mar 2009) Log Message: ----------- [Release 0.18.0] Changed the RPM release (from 1 to 0.dev.1) Modified Paths: -------------- trunk/rmol/configure.ac Modified: trunk/rmol/configure.ac =================================================================== --- trunk/rmol/configure.ac 2009-03-08 17:51:26 UTC (rev 174) +++ trunk/rmol/configure.ac 2009-03-08 19:51:59 UTC (rev 175) @@ -11,7 +11,7 @@ AM_CONDITIONAL([HAVE_CPPUNIT], [test "x$CPPUNIT_LIBS" != x]) # RPM release number -RPM_RELEASE="1" +RPM_RELEASE="0.dev.1" AC_SUBST(RPM_RELEASE) # Shared library versioning This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2009-03-08 17:51:41
|
Revision: 174 http://rmol.svn.sourceforge.net/rmol/?rev=174&view=rev Author: denis_arnaud Date: 2009-03-08 17:51:26 +0000 (Sun, 08 Mar 2009) Log Message: ----------- [Release 0.18.0] Added Logging service. Modified Paths: -------------- trunk/rmol/configure.ac trunk/rmol/po/POTFILES.in trunk/rmol/rmol/RMOL_Service.hpp trunk/rmol/rmol/RmolTypes.hpp trunk/rmol/rmol/bom/BomAbstract.cpp trunk/rmol/rmol/bom/BomAbstract.hpp trunk/rmol/rmol/bom/Bucket.cpp trunk/rmol/rmol/bom/Bucket.hpp trunk/rmol/rmol/bom/BucketHolder.cpp trunk/rmol/rmol/bom/BucketHolder.hpp trunk/rmol/rmol/bom/Demand.cpp trunk/rmol/rmol/bom/Demand.hpp trunk/rmol/rmol/bom/Overbooking.cpp trunk/rmol/rmol/bom/Overbooking.hpp trunk/rmol/rmol/bom/PartialSumHolder.cpp trunk/rmol/rmol/bom/PartialSumHolder.hpp trunk/rmol/rmol/bom/PartialSumHolderHolder.cpp trunk/rmol/rmol/bom/PartialSumHolderHolder.hpp trunk/rmol/rmol/factory/FacBucket.hpp trunk/rmol/rmol/factory/FacBucketHolder.hpp trunk/rmol/rmol/factory/FacDemand.hpp trunk/rmol/rmol/factory/FacOverbooking.hpp trunk/rmol/rmol/factory/FacPartialSumHolder.hpp trunk/rmol/rmol/factory/FacPartialSumHolderHolder.hpp trunk/rmol/rmol/factory/FacSupervisor.cpp trunk/rmol/rmol/factory/FacSupervisor.hpp trunk/rmol/rmol/factory/sources.mk trunk/rmol/rmol/field/FldDistributionParameters.cpp trunk/rmol/rmol/field/FldDistributionParameters.hpp trunk/rmol/rmol/field/FldOverbookingPolicy.cpp trunk/rmol/rmol/field/FldOverbookingPolicy.hpp trunk/rmol/rmol/field/FldYieldRange.cpp trunk/rmol/rmol/field/FldYieldRange.hpp trunk/rmol/rmol/field/sources.mk trunk/rmol/rmol/rmol.cpp trunk/rmol/rmol/service/RMOL_Service.cpp trunk/rmol/rmol/service/sources.mk trunk/rmol/rmol.spec.in trunk/rmol/test/Makefile.am trunk/rmol/test/testLib.sh Added Paths: ----------- trunk/rmol/config/cppunit.m4 trunk/rmol/rmol/factory/FacBomAbstract.cpp trunk/rmol/rmol/factory/FacBomAbstract.hpp trunk/rmol/rmol/factory/FacRmolServiceContext.cpp trunk/rmol/rmol/factory/FacRmolServiceContext.hpp trunk/rmol/rmol/field/FldAbstract.cpp trunk/rmol/rmol/field/FldAbstract.hpp trunk/rmol/rmol/service/Logger.cpp trunk/rmol/rmol/service/Logger.hpp trunk/rmol/rmol/service/RMOL_ServiceContext.cpp trunk/rmol/rmol/service/RMOL_ServiceContext.hpp trunk/rmol/test/OptimiseTestSuite.cpp trunk/rmol/test/OptimiseTestSuite.hpp trunk/rmol/test/SimulateTestSuite.cpp trunk/rmol/test/SimulateTestSuite.hpp trunk/rmol/test/com/ trunk/rmol/test/com/CppUnitCore.cpp trunk/rmol/test/com/CppUnitCore.hpp trunk/rmol/test/com/Makefile.am trunk/rmol/test/com/XmlOutputterHookForCC.cpp trunk/rmol/test/com/XmlOutputterHookForCC.hpp trunk/rmol/test/com/sources.mk Removed Paths: ------------- trunk/rmol/rmol/factory/FacAbstract.cpp trunk/rmol/rmol/factory/FacAbstract.hpp trunk/rmol/rmol/factory/FacServiceContext.cpp trunk/rmol/rmol/factory/FacServiceContext.hpp trunk/rmol/rmol/service/ServiceContext.cpp trunk/rmol/rmol/service/ServiceContext.hpp trunk/rmol/test/optimise.cpp trunk/rmol/test/simulate.cpp Property Changed: ---------------- trunk/rmol/rmol/ trunk/rmol/test/ Added: trunk/rmol/config/cppunit.m4 =================================================================== --- trunk/rmol/config/cppunit.m4 (rev 0) +++ trunk/rmol/config/cppunit.m4 2009-03-08 17:51:26 UTC (rev 174) @@ -0,0 +1,93 @@ +dnl +dnl AM_PATH_CPPUNIT(MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) +dnl +AC_DEFUN([AM_PATH_CPPUNIT], +[ + +AC_ARG_WITH(cppunit-prefix,[ --with-cppunit-prefix=PFX Prefix where CppUnit is installed (optional)], + cppunit_config_prefix="$withval", cppunit_config_prefix="") +AC_ARG_WITH(cppunit-exec-prefix,[ --with-cppunit-exec-prefix=PFX Exec prefix where CppUnit is installed (optional)], + cppunit_config_exec_prefix="$withval", cppunit_config_exec_prefix="") + + if test x$cppunit_config_exec_prefix != x ; then + cppunit_config_args="$cppunit_config_args --exec-prefix=$cppunit_config_exec_prefix" + if test x${CPPUNIT_CONFIG+set} != xset ; then + CPPUNIT_CONFIG=$cppunit_config_exec_prefix/bin/cppunit-config + fi + fi + if test x$cppunit_config_prefix != x ; then + cppunit_config_args="$cppunit_config_args --prefix=$cppunit_config_prefix" + if test x${CPPUNIT_CONFIG+set} != xset ; then + CPPUNIT_CONFIG=$cppunit_config_prefix/bin/cppunit-config + fi + fi + + AC_PATH_PROG(CPPUNIT_CONFIG, cppunit-config, no) + cppunit_version_min=$1 + + AC_MSG_CHECKING(for Cppunit - version >= $cppunit_version_min) + no_cppunit="" + if test "$CPPUNIT_CONFIG" = "no" ; then + AC_MSG_RESULT(no) + no_cppunit=yes + else + CPPUNIT_CFLAGS=`$CPPUNIT_CONFIG --cflags` + CPPUNIT_LIBS=`$CPPUNIT_CONFIG --libs` + CPPUNIT_VERSION=`$CPPUNIT_CONFIG --version` + + cppunit_major_version=`echo $CPPUNIT_VERSION | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` + cppunit_minor_version=`echo $CPPUNIT_VERSION | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` + cppunit_micro_version=`echo $CPPUNIT_VERSION | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` + + cppunit_major_min=`echo $cppunit_version_min | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` + if test "x${cppunit_major_min}" = "x" ; then + cppunit_major_min=0 + fi + + cppunit_minor_min=`echo $cppunit_version_min | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` + if test "x${cppunit_minor_min}" = "x" ; then + cppunit_minor_min=0 + fi + + cppunit_micro_min=`echo $cppunit_version_min | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` + if test "x${cppunit_micro_min}" = "x" ; then + cppunit_micro_min=0 + fi + + cppunit_version_proper=`expr \ + $cppunit_major_version \> $cppunit_major_min \| \ + $cppunit_major_version \= $cppunit_major_min \& \ + $cppunit_minor_version \> $cppunit_minor_min \| \ + $cppunit_major_version \= $cppunit_major_min \& \ + $cppunit_minor_version \= $cppunit_minor_min \& \ + $cppunit_micro_version \>= $cppunit_micro_min ` + + if test "$cppunit_version_proper" = "1" ; then + AC_MSG_RESULT([$cppunit_major_version.$cppunit_minor_version.$cppunit_micro_version]) + else + AC_MSG_RESULT(no) + no_cppunit=yes + fi + fi + + if test "x$no_cppunit" = x ; then + ifelse([$2], , :, [$2]) + else + CPPUNIT_CFLAGS="" + CPPUNIT_LIBS="" + ifelse([$3], , :, [$3]) + fi + + AC_SUBST(CPPUNIT_CFLAGS) + AC_SUBST(CPPUNIT_LIBS) + AC_SUBST(CPPUNIT_VERSION) +]) + + + Modified: trunk/rmol/configure.ac =================================================================== --- trunk/rmol/configure.ac 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/configure.ac 2009-03-08 17:51:26 UTC (rev 174) @@ -7,6 +7,8 @@ AC_CONFIG_SRCDIR([rmol/basic/BasConst.cpp]) AC_CONFIG_AUX_DIR([config]) AM_INIT_AUTOMAKE +AM_PATH_CPPUNIT(1.10) +AM_CONDITIONAL([HAVE_CPPUNIT], [test "x$CPPUNIT_LIBS" != x]) # RPM release number RPM_RELEASE="1" @@ -286,11 +288,19 @@ #endif /* #ifndef CONFIG_H */ ]) + +# -------------------------------------------------------- +# I18n (internationalisation) with GNU Gettext +# -------------------------------------------------------- AM_GNU_GETTEXT([external], [need-formatstring-macros]) AM_GNU_GETTEXT_VERSION([0.14]) - +# Force the usage of the i18n feature: on 64bit architecture, +# as gettext uses conversions from int to char*, there may be +# some issues. However, for regular translation (e.g., to German +# or French), the PO files are correctly transformed into GMO. USE_NLS=yes + # Define configured files AC_CONFIG_FILES( Makefile @@ -317,6 +327,7 @@ doc/sourceforge/howto_release_rmol.html po/Makefile.in test/Makefile + test/com/Makefile win32/Makefile) AC_OUTPUT @@ -376,6 +387,11 @@ o BOOST_PO_LIB .... : ${BOOST_PROGRAM_OPTIONS_LIB} o BOOST_FS_LIB .... : ${BOOST_FILESYSTEM_LIB} + - CPPUNIT ........... : + o CPPUNIT_VERSION . : ${CPPUNIT_VERSION} + o CPPUNIT_CFLAGS .. : ${CPPUNIT_CFLAGS} + o CPPUNIT_LIBS .... : ${CPPUNIT_LIBS} + ------------------------------------------------------------------------------ Now type 'make && make install' to build and install $PACKAGE-$VERSION library ------------------------------------------------------------------------------ Modified: trunk/rmol/po/POTFILES.in =================================================================== --- trunk/rmol/po/POTFILES.in 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/po/POTFILES.in 2009-03-08 17:51:26 UTC (rev 174) @@ -1,14 +1,18 @@ # List of files which contain translatable strings. rmol/service/RMOL_Service.cpp +rmol/service/RMOL_ServiceContext.cpp +rmol/service/Logger.cpp rmol/service/ServiceAbstract.hpp rmol/service/ServiceAbstract.cpp -rmol/service/ServiceContext.cpp -rmol/service/ServiceContext.hpp +rmol/service/RMOL_ServiceContext.hpp +rmol/service/Logger.hpp rmol/RmolTypes.hpp rmol/RMOL_Service.hpp rmol/field/FldYieldRange.hpp rmol/field/FldOverbookingPolicy.hpp +rmol/field/FldAbstract.cpp rmol/field/FldYieldRange.cpp +rmol/field/FldAbstract.hpp rmol/field/FldDistributionParameters.hpp rmol/field/FldOverbookingPolicy.cpp rmol/field/FldDistributionParameters.cpp @@ -18,20 +22,20 @@ rmol/factory/FacServiceAbstract.hpp rmol/factory/FacOverbooking.hpp rmol/factory/FacSupervisor.cpp -rmol/factory/FacServiceContext.cpp rmol/factory/FacDemand.hpp rmol/factory/FacPartialSumHolderHolder.cpp -rmol/factory/FacAbstract.hpp rmol/factory/FacBucketHolder.cpp +rmol/factory/FacBomAbstract.hpp +rmol/factory/FacRmolServiceContext.hpp rmol/factory/FacServiceAbstract.cpp -rmol/factory/FacAbstract.cpp rmol/factory/FacDemand.cpp rmol/factory/FacBucketHolder.hpp +rmol/factory/FacRmolServiceContext.cpp +rmol/factory/FacBomAbstract.cpp rmol/factory/FacPartialSumHolderHolder.hpp rmol/factory/FacPartialSumHolder.cpp rmol/factory/FacSupervisor.hpp rmol/factory/FacBucket.cpp -rmol/factory/FacServiceContext.hpp rmol/basic/BasConst_RMOL_Service.hpp rmol/basic/BasConst.cpp rmol/basic/BasConst_Overbooking.hpp Property changes on: trunk/rmol/rmol ___________________________________________________________________ Modified: svn:ignore - .deps .libs Makefile Makefile.in config.h config.h.in stamp-h1 rmol + .deps .libs Makefile Makefile.in config.h config.h.in stamp-h1 rmol rmol.log Modified: trunk/rmol/rmol/RMOL_Service.hpp =================================================================== --- trunk/rmol/rmol/RMOL_Service.hpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/RMOL_Service.hpp 2009-03-08 17:51:26 UTC (rev 174) @@ -12,13 +12,14 @@ namespace RMOL { /** Forward declaration. */ - class ServiceContext; + class RMOL_ServiceContext; /** Interface for the RMOL Services. */ class RMOL_Service { public: /** Constructor. */ - RMOL_Service (const ResourceCapacity_T iResourceCapacity); + RMOL_Service (std::ostream& ioLogStream, + const ResourceCapacity_T iResourceCapacity); /** Destructor. */ ~RMOL_Service(); @@ -70,11 +71,20 @@ RMOL_Service (); RMOL_Service (const RMOL_Service&); - /** Initialiser. */ - void initContext (const ResourceCapacity_T iResourceCapacity); + /** Initialise. */ + void init (std::ostream& ioLogStream, + const ResourceCapacity_T iResourceCapacity); + /** Initilise the log. */ + void logInit (const LOG::EN_LogLevel iLogLevel, std::ostream& ioLogStream); + + /** Finaliser. */ + void finalise (); + + private: + // ////////// Service Context ////////// /** Service Context. */ - ServiceContext* _context; + RMOL_ServiceContext* _rmolServiceContext; }; } #endif // __RMOL_SVC_RMOL_SERVICE_HPP Modified: trunk/rmol/rmol/RmolTypes.hpp =================================================================== --- trunk/rmol/rmol/RmolTypes.hpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/RmolTypes.hpp 2009-03-08 17:51:26 UTC (rev 174) @@ -10,6 +10,41 @@ namespace RMOL { + // ///////// Exceptions /////////// + class RootException : public std::exception { + }; + + class FileNotFoundException : public RootException { + }; + + class NonInitialisedServiceException : public RootException { + }; + + class MemoryAllocationException : public RootException { + }; + + class ObjectNotFoundException : public RootException { + }; + + class DocumentNotFoundException : public RootException { + }; + + + // /////////////// Log ///////////// + /** Level of logs. */ + namespace LOG { + typedef enum { + CRITICAL = 0, + ERROR, + NOTIFICATION, + WARNING, + DEBUG, + VERBOSE, + LAST_VALUE + } EN_LogLevel; + } + + // //////// Type definitions ///////// /** Define the capacity. <br>It is a double, as it allows for overbooking. */ typedef double ResourceCapacity_T; Modified: trunk/rmol/rmol/bom/BomAbstract.cpp =================================================================== --- trunk/rmol/rmol/bom/BomAbstract.cpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/bom/BomAbstract.cpp 2009-03-08 17:51:26 UTC (rev 174) @@ -2,7 +2,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // RMOL -#include "BomAbstract.hpp" +#include <rmol/bom/BomAbstract.hpp> namespace RMOL { Modified: trunk/rmol/rmol/bom/BomAbstract.hpp =================================================================== --- trunk/rmol/rmol/bom/BomAbstract.hpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/bom/BomAbstract.hpp 2009-03-08 17:51:26 UTC (rev 174) @@ -1,34 +1,50 @@ -#ifndef __RMOL_BOMABSTRACT_HPP -#define __RMOL_BOMABSTRACT_HPP +#ifndef __RMOL_BOM_BOMABSTRACT_HPP +#define __RMOL_BOM_BOMABSTRACT_HPP // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// // STL -#include <iostream> +#include <istream> +#include <ostream> #include <sstream> +#include <string> namespace RMOL { /** Base class for the Business Object Model (BOM) layer. */ class BomAbstract { + friend class FacBomAbstract; public: - - /** Destructor. */ - virtual ~BomAbstract() {} - + // /////////// Display support methods ///////// /** Dump a Business Object into an output stream. @param ostream& the output stream. */ - virtual void toStream (std::ostream& ioOut) const {} + virtual void toStream (std::ostream& ioOut) const = 0; /** Read a Business Object from an input stream. @param istream& the input stream. */ - virtual void fromStream (std::istream& ioIn) {} + virtual void fromStream (std::istream& ioIn) = 0; + /** Get the serialised version of the Business Object. */ + virtual std::string toString() const = 0; + + /** Get a string describing the whole key (differentiating two objects + at any level). */ + virtual const std::string describeKey() const = 0; + + /** Get a string describing the short key (differentiating two objects + at the same level). */ + virtual const std::string describeShortKey() const = 0; + + protected: /** Protected Default Constructor to ensure this class is abtract. */ BomAbstract() {} - }; + BomAbstract(const BomAbstract&) {} + + /** Destructor. */ + virtual ~BomAbstract() {} + }; } /** @@ -74,4 +90,4 @@ return ioIn; } -#endif // __RMOL_BOMABSTRACT_HPP +#endif // __RMOL_BOM_BOMABSTRACT_HPP Modified: trunk/rmol/rmol/bom/Bucket.cpp =================================================================== --- trunk/rmol/rmol/bom/Bucket.cpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/bom/Bucket.cpp 2009-03-08 17:51:26 UTC (rev 174) @@ -13,15 +13,16 @@ namespace RMOL { // ////////////////////////////////////////////////////////////////////// - Bucket::Bucket () : _yieldRange (), _demand (NULL), - _protection (0.0), _cumulatedProtection (0.0), - _bookingLimit (0.0), _cumulatedBookingLimit (0.0) { + Bucket::Bucket () + : _demand (NULL), + _yieldRange (), _protection (0.0), _cumulatedProtection (0.0), + _bookingLimit (0.0), _cumulatedBookingLimit (0.0) { } // ////////////////////////////////////////////////////////////////////// Bucket::Bucket (const Bucket& iBucket) : + _demand (&iBucket.getDemand()), _yieldRange (iBucket.getYieldRange()), - _demand (&iBucket.getDemand()), _protection (iBucket.getProtection()), _cumulatedProtection (iBucket.getCumulatedProtection()), _bookingLimit (iBucket.getBookingLimit()), @@ -30,8 +31,8 @@ // ////////////////////////////////////////////////////////////////////// Bucket::Bucket (const FldYieldRange& iYieldRange) : - _yieldRange (iYieldRange), _demand (NULL), - _protection (0.0), _cumulatedProtection (0.0), + _demand (NULL), + _yieldRange (iYieldRange), _protection (0.0), _cumulatedProtection (0.0), _bookingLimit (0.0), _cumulatedBookingLimit (0.0) { } @@ -40,21 +41,70 @@ } // ////////////////////////////////////////////////////////////////////// + const std::string Bucket::describeShortKey() const { + std::ostringstream oStr; + oStr << _yieldRange; + return oStr.str(); + } + + // ////////////////////////////////////////////////////////////////////// + const std::string Bucket::describeKey() const { + return describeShortKey(); + } + + // ////////////////////////////////////////////////////////////////////// + std::string Bucket::toString() const { + std::ostringstream oStr; + oStr << describeShortKey() << ", "; + const double pj = getUpperYield(); + const double mj = getMean(); + const double sj = getStandardDeviation(); + const double proj = getProtection(); + const double yj = getCumulatedProtection(); + const double bj = getCumulatedBookingLimit(); + oStr << std::fixed << std::setprecision (2) + << pj << "; " << mj << "; " << sj << "; " << proj << "; " << yj + << "; " << bj << std::endl; + + return oStr.str(); + } + + // ////////////////////////////////////////////////////////////////////// void Bucket::toStream (std::ostream& ioOut) const { + ioOut << toString(); + } + + // ////////////////////////////////////////////////////////////////////// + void Bucket::fromStream (std::istream& ioIn) { + } + + // ////////////////////////////////////////////////////////////////////// + const std::string Bucket::shortDisplay() const { + std::ostringstream oStr; + oStr << describeKey(); const double pj = getUpperYield(); const double mj = getMean(); const double sj = getStandardDeviation(); const double proj = getProtection(); const double yj = getCumulatedProtection(); + const double blj = getBookingLimit(); const double bj = getCumulatedBookingLimit(); - ioOut << std::fixed << std::setprecision (2) - << pj << "; " << mj << "; " << sj << "; " << proj << "; " << yj - << "; " << bj << std::endl; + oStr << std::fixed << std::setprecision (2) + << ", upper yield = " << pj << "; " + << ", mean = " << mj << "; " << ", std_dev = " << sj << "; " + << ", protection = " << proj << "; " + << ", cumulative protection = " << yj << "; " + << ", booking limit = " << blj + << ", cumulative booking limit = " << bj << std::endl; + + return oStr.str(); } // ////////////////////////////////////////////////////////////////////// - void Bucket::display () const { - toStream (std::cout); + const std::string Bucket::display() const { + std::ostringstream oStr; + oStr << shortDisplay(); + return oStr.str(); } // ////////////////////////////////////////////////////////////////////// Modified: trunk/rmol/rmol/bom/Bucket.hpp =================================================================== --- trunk/rmol/rmol/bom/Bucket.hpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/bom/Bucket.hpp 2009-03-08 17:51:26 UTC (rev 174) @@ -52,7 +52,7 @@ friend class FacBucketHolder; public: - // Getters + // ///////// Getters //////// /** Getter for the yield range. */ const FldYieldRange& getYieldRange() const { return _yieldRange; @@ -73,32 +73,42 @@ double getBookingLimit() const { return _bookingLimit; } + /** Getter for the distribution parameters of the demand. */ const FldDistributionParameters& getDistributionParameters() const; + /** Getter for the demand mean. */ const double getMean() const; + /** Getter for the demand standard deviation. */ const double getStandardDeviation() const; + /** Getter for the upper yield. */ const double getUpperYield() const; + /** Getter for the average yield. */ const double getAverageYield() const; + /** Getter for the lower yield. */ const double getLowerYield() const; - // Setters + + // ///////// Setters //////// /** Setter for the protection. */ void setProtection (const double iProtection) { _protection = iProtection; } + /** Setter for the cumulated protection. */ void setCumulatedProtection (const double iProtection) { _cumulatedProtection = iProtection; } + /** Setter for the booking limit. */ void setBookingLimit (const double iBookingLimit) { _bookingLimit = iBookingLimit; } + /** Setter for the cumulated booking limit. */ void setCumulatedBookingLimit (const double iBookingLimit) { _cumulatedBookingLimit = iBookingLimit; @@ -113,34 +123,53 @@ /** Set the demand mean and standard deviation. */ void setDemandParameters (const double, const double); + public: + // ///////// Display methods //////// /** Dump a Business Object into an output stream. - @param ostream& the output stream - @return ostream& the output stream. */ - void toStream (std::ostream& ioOut) const; + @param ostream& the output stream. */ + void toStream (std::ostream&) const; - /** Display on standard output. */ - void display () const; + /** Read a Business Object from an input stream. + @param istream& the input stream. */ + void fromStream (std::istream&); - /** Destructors. */ - virtual ~Bucket(); + /** Get the serialised version of the Place object. */ + std::string toString() const; + /** Get a string describing the whole key (differentiating two objects + at any level). */ + const std::string describeKey() const; + + /** Get a string describing the short key (differentiating two objects + at the same level). */ + const std::string describeShortKey() const; + + /** Display the full Place context. */ + const std::string display() const; + + /** Display a short Place context. */ + const std::string shortDisplay() const; + + private: /** Constructors. <br>Protected to force the use of the Factory. */ Bucket (); Bucket (const Bucket&); Bucket (const FldYieldRange&); + /** Destructors. */ + virtual ~Bucket(); /** Getter for the demand. */ Demand& getDemand() const; private: - /** Yield range, defined by upper and average yield. */ - FldYieldRange _yieldRange; - /** Demand, defined by (mean, standard deviation) and yield range. */ Demand* _demand; + /** Yield range, defined by upper and average yield. */ + FldYieldRange _yieldRange; + /** Protection. */ double _protection; Modified: trunk/rmol/rmol/bom/BucketHolder.cpp =================================================================== --- trunk/rmol/rmol/bom/BucketHolder.cpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/bom/BucketHolder.cpp 2009-03-08 17:51:26 UTC (rev 174) @@ -35,9 +35,50 @@ } // ////////////////////////////////////////////////////////////////////// + const std::string BucketHolder::describeShortKey() const { + std::ostringstream oStr; + oStr << _cabinCapacity; + return oStr.str(); + } + + // ////////////////////////////////////////////////////////////////////// + const std::string BucketHolder::describeKey() const { + return describeShortKey(); + } + + // ////////////////////////////////////////////////////////////////////// + std::string BucketHolder::toString() const { + std::ostringstream oStr; + oStr << describeShortKey() + << ", " << _totalMeanDemand + << ", " << _demandFactor << ", " << _optimalRevenue + << std::endl; + + return oStr.str(); + } + + // ////////////////////////////////////////////////////////////////////// void BucketHolder::toStream (std::ostream& ioOut) const { + ioOut << toString(); + } + + // ////////////////////////////////////////////////////////////////////// + void BucketHolder::fromStream (std::istream& ioIn) { + } + + // ////////////////////////////////////////////////////////////////////// + const std::string BucketHolder::shortDisplay() const { + std::ostringstream oStr; + oStr << describeKey(); + return oStr.str(); + } + + // ////////////////////////////////////////////////////////////////////// + const std::string BucketHolder::display() const { + std::ostringstream oStr; + oStr << shortDisplay(); // Generate a CSV (Comma Separated Values) output - ioOut << "Class; Price; Mean; Std Dev; Protection; Cum. Protection; Cum. Bkg Limit; " + oStr << "Class; Price; Mean; Std Dev; Protection; Cum. Protection; Cum. Bkg Limit; " << std::endl; BucketList_T::const_iterator itBucket = _bucketList.begin(); @@ -45,22 +86,17 @@ const Bucket* currentBucket_ptr = *itBucket; assert (currentBucket_ptr != NULL); - ioOut << j << "; " << *currentBucket_ptr; + oStr << j << "; " << currentBucket_ptr->display(); } - ioOut << "Cabin Capacity = " << _cabinCapacity - << "; Total Mean Demand = " << _totalMeanDemand - << "; Demand Factor = " << _demandFactor - << "; Optimal Revenue = " << _optimalRevenue << std::endl; - + oStr << "Cabin Capacity = " << _cabinCapacity + << "; Total Mean Demand = " << _totalMeanDemand + << "; Demand Factor = " << _demandFactor + << "; Optimal Revenue = " << _optimalRevenue << std::endl; + return oStr.str(); } // ////////////////////////////////////////////////////////////////////// - void BucketHolder::display () const { - toStream (std::cout); - } - - // ////////////////////////////////////////////////////////////////////// Bucket& BucketHolder::getCurrentBucket () const { Bucket* resultBucket_ptr = *_itCurrentBucket; assert (resultBucket_ptr != NULL); Modified: trunk/rmol/rmol/bom/BucketHolder.hpp =================================================================== --- trunk/rmol/rmol/bom/BucketHolder.hpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/bom/BucketHolder.hpp 2009-03-08 17:51:26 UTC (rev 174) @@ -43,20 +43,9 @@ /** Get the size of list of buckets/classes. */ const short getSize () const; - /** Dump a Business Object into an output stream. - @param ostream& the output stream - @return ostream& the output stream. */ - void toStream (std::ostream& ioOut) const; - - /** Display on standard output. */ - void display () const; - /** Fill up the vector of cumulated booking limits. */ void fillup (BookingLimitVector_T&) const; - /** Destructor. */ - virtual ~BucketHolder(); - /** Get the current element (bucket/class). */ Bucket& getCurrentBucket () const; @@ -88,6 +77,34 @@ - the booking limits and cumulated booking limits. */ void recalculate (); + public: + // ///////// Display methods //////// + /** Dump a Business Object into an output stream. + @param ostream& the output stream. */ + void toStream (std::ostream&) const; + + /** Read a Business Object from an input stream. + @param istream& the input stream. */ + void fromStream (std::istream&); + + /** Get the serialised version of the Place object. */ + std::string toString() const; + + /** Get a string describing the whole key (differentiating two objects + at any level). */ + const std::string describeKey() const; + + /** Get a string describing the short key (differentiating two objects + at the same level). */ + const std::string describeShortKey() const; + + /** Display the full Place context. */ + const std::string display() const; + + /** Display a short Place context. */ + const std::string shortDisplay() const; + + private: /** Constructor. <br>Protected to force the use of the Factory. */ @@ -98,6 +115,10 @@ <br>Protected to force the use of the Factory. */ BucketHolder (const double iCabinCapacity); + /** Destructor. */ + virtual ~BucketHolder(); + + private: /** The capacity of the cabin associated to the bucket/class list. */ const double _cabinCapacity; Modified: trunk/rmol/rmol/bom/Demand.cpp =================================================================== --- trunk/rmol/rmol/bom/Demand.cpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/bom/Demand.cpp 2009-03-08 17:51:26 UTC (rev 174) @@ -29,6 +29,51 @@ } // ////////////////////////////////////////////////////////////////////// + const std::string Demand::describeShortKey() const { + std::ostringstream oStr; + oStr << _yieldRange; + return oStr.str(); + } + + // ////////////////////////////////////////////////////////////////////// + const std::string Demand::describeKey() const { + return describeShortKey(); + } + + // ////////////////////////////////////////////////////////////////////// + std::string Demand::toString() const { + std::ostringstream oStr; + oStr << describeShortKey() << ", "; + oStr << _distributionParameters; + return oStr.str(); + } + + // ////////////////////////////////////////////////////////////////////// + void Demand::toStream (std::ostream& ioOut) const { + ioOut << toString(); + } + + // ////////////////////////////////////////////////////////////////////// + void Demand::fromStream (std::istream& ioIn) { + } + + // ////////////////////////////////////////////////////////////////////// + const std::string Demand::shortDisplay() const { + std::ostringstream oStr; + oStr << describeKey(); + oStr << ", distribution parameters = " << _distributionParameters + << std::endl; + return oStr.str(); + } + + // ////////////////////////////////////////////////////////////////////// + const std::string Demand::display() const { + std::ostringstream oStr; + oStr << shortDisplay(); + return oStr.str(); + } + + // ////////////////////////////////////////////////////////////////////// double Demand::getUpperYield() const { return _yieldRange.getUpperYield(); } Modified: trunk/rmol/rmol/bom/Demand.hpp =================================================================== --- trunk/rmol/rmol/bom/Demand.hpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/bom/Demand.hpp 2009-03-08 17:51:26 UTC (rev 174) @@ -21,7 +21,7 @@ friend class FacDemand; public: - // Getters + // ///////// Getters //////// /** Getter for the demand distribution parmaters (i.e., mean and standard deviation). */ const FldDistributionParameters& getDistributionParameters() const { @@ -31,35 +31,69 @@ const FldYieldRange& getYieldRange() const { return _yieldRange; } + /** Getter for the upper yield of the range. */ double getUpperYield() const; + /** Getter for the average yield of the range. */ double getAverageYield() const; + /** Getter for the lower yield of the range. */ double getLowerYield(); + /** Getter for the mean value. */ double getMean() const; + /** Getter for the standard deviation value. */ double getStandardDeviation() const; + /** Getter for the variance value. */ double getVariance() const; - // Setters + + // ///////// Setters //////// /** Set the mean value. */ void setMean (const double); /** set the standard deviation. */ void setSD (const double); + - /** Destructors. */ - virtual ~Demand(); + public: + // ///////// Display methods //////// + /** Dump a Business Object into an output stream. + @param ostream& the output stream. */ + void toStream (std::ostream&) const; + + /** Read a Business Object from an input stream. + @param istream& the input stream. */ + void fromStream (std::istream&); + + /** Get the serialised version of the Place object. */ + std::string toString() const; + + /** Get a string describing the whole key (differentiating two objects + at any level). */ + const std::string describeKey() const; + + /** Get a string describing the short key (differentiating two objects + at the same level). */ + const std::string describeShortKey() const; + /** Display the full Place context. */ + const std::string display() const; + + /** Display a short Place context. */ + const std::string shortDisplay() const; + private: /** Constructors. <br>Protected to force the use of the Factory. */ Demand (); Demand (const Demand&); Demand (const FldDistributionParameters&, const FldYieldRange&); + /** Destructors. */ + ~Demand(); private: /** Yield range, i.e., upper and lower yields, as well as average yield Modified: trunk/rmol/rmol/bom/Overbooking.cpp =================================================================== --- trunk/rmol/rmol/bom/Overbooking.cpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/bom/Overbooking.cpp 2009-03-08 17:51:26 UTC (rev 174) @@ -70,7 +70,68 @@ Overbooking::~Overbooking() { } + // ////////////////////////////////////////////////////////////////////// + const std::string Overbooking::describeShortKey() const { + std::ostringstream oStr; + oStr << _policy; + return oStr.str(); + } + + // ////////////////////////////////////////////////////////////////////// + const std::string Overbooking::describeKey() const { + return describeShortKey(); + } + // ////////////////////////////////////////////////////////////////////// + std::string Overbooking::toString() const { + std::ostringstream oStr; + oStr << describeShortKey() + << ", " << _policy << ", " << _overbookingPercentage + << ", " << _capacity << ", " << _netBookings + << ", " << _loadFactor + << ", " << _noShowDistributionParameters + << ", " << _cancellationDistributionParameters + << ", " << _remainingCancellationDistributionParameters + << ", " << _demandDistributionParameters + << std::endl; + + return oStr.str(); + } + + // ////////////////////////////////////////////////////////////////////// + void Overbooking::toStream (std::ostream& ioOut) const { + ioOut << toString(); + } + + // ////////////////////////////////////////////////////////////////////// + void Overbooking::fromStream (std::istream& ioIn) { + } + + // ////////////////////////////////////////////////////////////////////// + const std::string Overbooking::shortDisplay() const { + std::ostringstream oStr; + oStr << describeKey(); + return oStr.str(); + } + + // ////////////////////////////////////////////////////////////////////// + const std::string Overbooking::display() const { + std::ostringstream oStr; + oStr << shortDisplay(); + oStr << "Policy = " << _policy + << "; OB% = " << _overbookingPercentage + << "; Capacity = " << _capacity + << "; Net Bookings = " << _netBookings + << "; Load Factor (LF) = " << _loadFactor + << "; No-Show Distrib. Params = " << _noShowDistributionParameters + << "; Cx Distrib. Params = " << _cancellationDistributionParameters + << "; Rem. Cx Distrib. Params = " << _remainingCancellationDistributionParameters + << "; Demand Distrib. Params = " << _demandDistributionParameters + << std::endl; + return oStr.str(); + } + + // ////////////// TODO: REMOVE THOSE CONSTANTS ////////// //Parameters given by RMS User , for the prototype we set at //predefined values Modified: trunk/rmol/rmol/bom/Overbooking.hpp =================================================================== --- trunk/rmol/rmol/bom/Overbooking.hpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/bom/Overbooking.hpp 2009-03-08 17:51:26 UTC (rev 174) @@ -24,9 +24,6 @@ friend class FacOverbooking; public: - /** Destructor. */ - virtual ~Overbooking(); - // ///////// Getters ///////// /** Get the overbooking calculation policy. */ const FldOverbookingPolicy& getPolicy () const { @@ -53,6 +50,7 @@ return _netBookings; } + /** Get the No-Show Distribution Parameters. */ FldDistributionParameters getNoShowDistributionParameters () const { return _noShowDistributionParameters; @@ -116,24 +114,57 @@ } /** Set the net bookings. */ - void getNetBookings (const unsigned int iNetBookings) { + void setNetBookings (const unsigned int iNetBookings) { _netBookings = iNetBookings; } - + // /////////// /** This function return the OB% with its standard deviation following the given choice of method*/ FldDistributionParameters getOverbookingCalculation () const; + /** This function calculates the OB% by the heuristic method */ FldDistributionParameters calculateHeuristic() const; + /** This function calculates the OB% by the cost-based method */ FldDistributionParameters calculateRiskBased() const; + /** This function calculates the OB% by the service level policies */ FldDistributionParameters calculateServiceLevel() const; + /** This function calculates the OB% by the Hybrid policy*/ FldDistributionParameters calculateHybridPolicy() const; + + public: + // ///////// Display methods //////// + /** Dump a Business Object into an output stream. + @param ostream& the output stream. */ + void toStream (std::ostream&) const; + + /** Read a Business Object from an input stream. + @param istream& the input stream. */ + void fromStream (std::istream&); + + /** Get the serialised version of the Place object. */ + std::string toString() const; + + /** Get a string describing the whole key (differentiating two objects + at any level). */ + const std::string describeKey() const; + + /** Get a string describing the short key (differentiating two objects + at the same level). */ + const std::string describeShortKey() const; + + /** Display the full Place context. */ + const std::string display() const; + + /** Display a short Place context. */ + const std::string shortDisplay() const; + + private: /** Constructors. <br>Protected to force the use of the Factory. */ @@ -141,19 +172,29 @@ Overbooking (const Overbooking&); Overbooking (const FldOverbookingPolicy&); - /** */ + /** Destructor. */ + virtual ~Overbooking(); + + + private: + /** Calculate the booking limit. */ double calculateBookingLimit () const; - /** */ + + /** Calculate the normal probability. */ double probabilityNormal (const int, const double, const double) const; - /** */ + + /** Calculate the binomial probability. */ double binomialProbability_F_b_s (const double, const int, const int) const; - /** */ + /** Calculate the first service level. */ double serviceLevel1 (const double, const int, const int) const; - /** */ + + /** Calculate the fraction of service level 2. */ double fractionServiceLevel2 (const double , const int , const int) const; + private: + // /////// Attributes ////////// /** Overbooking Calculation Policy. */ FldOverbookingPolicy _policy; Modified: trunk/rmol/rmol/bom/PartialSumHolder.cpp =================================================================== --- trunk/rmol/rmol/bom/PartialSumHolder.cpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/bom/PartialSumHolder.cpp 2009-03-08 17:51:26 UTC (rev 174) @@ -26,24 +26,55 @@ } // ////////////////////////////////////////////////////////////////////// + const std::string PartialSumHolder::describeShortKey() const { + std::ostringstream oStr; + return oStr.str(); + } + + // ////////////////////////////////////////////////////////////////////// + const std::string PartialSumHolder::describeKey() const { + return describeShortKey(); + } + + // ////////////////////////////////////////////////////////////////////// + std::string PartialSumHolder::toString() const { + std::ostringstream oStr; + oStr << _partialSumList.size(); + return oStr.str(); + } + + // ////////////////////////////////////////////////////////////////////// void PartialSumHolder::toStream (std::ostream& ioOut) const { + ioOut << toString(); + } + + // ////////////////////////////////////////////////////////////////////// + void PartialSumHolder::fromStream (std::istream& ioIn) { + } + + // ////////////////////////////////////////////////////////////////////// + const std::string PartialSumHolder::shortDisplay() const { + std::ostringstream oStr; + oStr << describeKey(); // Generate a CSV (Comma Separated Values) output - ioOut << "Partial Sum (K = " << _partialSumList.size() << "); " - << std::endl; + oStr << "Partial Sum (K = " << _partialSumList.size() << ")" << std::endl; + return oStr.str(); + } + + // ////////////////////////////////////////////////////////////////////// + const std::string PartialSumHolder::display() const { + std::ostringstream oStr; + oStr << shortDisplay(); PartialSumList_T::const_iterator itPartialSum = _partialSumList.begin(); for (short k=1; itPartialSum != _partialSumList.end(); itPartialSum++,k++){ const double currentPartialSum = *itPartialSum; - ioOut << k << "; " << currentPartialSum; + oStr << k << "; " << currentPartialSum; } + return oStr.str(); } // ////////////////////////////////////////////////////////////////////// - void PartialSumHolder::display () const { - toStream (std::cout); - } - - // ////////////////////////////////////////////////////////////////////// void PartialSumHolder::initSize (const int K) { _partialSumList.reserve (K); } Modified: trunk/rmol/rmol/bom/PartialSumHolder.hpp =================================================================== --- trunk/rmol/rmol/bom/PartialSumHolder.hpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/bom/PartialSumHolder.hpp 2009-03-08 17:51:26 UTC (rev 174) @@ -21,12 +21,13 @@ friend class FacPartialSumHolder; public: + // ///////// Getters ///////// + /** Get the k-th element (partial sum). */ + const double getPartialSum (const int k) const; + /** Reserve the space for K elements (partial sums). */ void initSize (const int K); - /** Get the k-th element (partial sum). */ - const double getPartialSum (const int k) const; - /** Add an element (partial sum). */ void addPartialSum (const double iPartialSum); @@ -35,22 +36,45 @@ complexity of O (N log N): http://www.sgi.com/tech/stl/sort.html . */ void sort (); + public: + // ///////// Display methods //////// /** Dump a Business Object into an output stream. - @param ostream& the output stream - @return ostream& the output stream. */ - void toStream (std::ostream& ioOut) const; + @param ostream& the output stream. */ + void toStream (std::ostream&) const; - /** Display on standard output. */ - void display () const; + /** Read a Business Object from an input stream. + @param istream& the input stream. */ + void fromStream (std::istream&); - /** Destructor. */ - virtual ~PartialSumHolder(); + /** Get the serialised version of the Place object. */ + std::string toString() const; + /** Get a string describing the whole key (differentiating two objects + at any level). */ + const std::string describeKey() const; + + /** Get a string describing the short key (differentiating two objects + at the same level). */ + const std::string describeShortKey() const; + + /** Display the full Place context. */ + const std::string display() const; + + /** Display a short Place context. */ + const std::string shortDisplay() const; + + private: /** Constructors. */ PartialSumHolder (); PartialSumHolder (const PartialSumHolder&); + /** Destructor. */ + virtual ~PartialSumHolder(); + + + private: + // ///////// Attributes ///////// /** The vector of (K) partial sums. */ PartialSumList_T _partialSumList; }; Modified: trunk/rmol/rmol/bom/PartialSumHolderHolder.cpp =================================================================== --- trunk/rmol/rmol/bom/PartialSumHolderHolder.cpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/bom/PartialSumHolderHolder.cpp 2009-03-08 17:51:26 UTC (rev 174) @@ -4,7 +4,8 @@ // C #include <assert.h> // STL -#include <iostream> +#include <istream> +#include <ostream> // RMOL #include <rmol/bom/PartialSumHolder.hpp> #include <rmol/bom/PartialSumHolderHolder.hpp> @@ -21,36 +22,65 @@ } // ////////////////////////////////////////////////////////////////////// - const short PartialSumHolderHolder::getSize () const { - return _partialSumHolderList.size(); + const std::string PartialSumHolderHolder::describeShortKey() const { + std::ostringstream oStr; + return oStr.str(); } + + // ////////////////////////////////////////////////////////////////////// + const std::string PartialSumHolderHolder::describeKey() const { + return describeShortKey(); + } // ////////////////////////////////////////////////////////////////////// + std::string PartialSumHolderHolder::toString() const { + std::ostringstream oStr; + return oStr.str(); + } + + // ////////////////////////////////////////////////////////////////////// void PartialSumHolderHolder::toStream (std::ostream& ioOut) const { + ioOut << toString(); + } + + // ////////////////////////////////////////////////////////////////////// + void PartialSumHolderHolder::fromStream (std::istream& ioIn) { + } + + // ////////////////////////////////////////////////////////////////////// + const std::string PartialSumHolderHolder::shortDisplay() const { + std::ostringstream oStr; + oStr << describeKey(); + return oStr.str(); + } + + // ////////////////////////////////////////////////////////////////////// + const std::string PartialSumHolderHolder::display() const { + std::ostringstream oStr; + oStr << shortDisplay(); + PartialSumHolderList_T::const_iterator itPartialSumHolder = _partialSumHolderList.begin(); - for (short j=1; itPartialSumHolder != _partialSumHolderList.end(); - itPartialSumHolder++, j++) { - const PartialSumHolder* currentPartialSumHolder_ptr = - *itPartialSumHolder; + for (short j = 1; itPartialSumHolder != _partialSumHolderList.end(); + itPartialSumHolder++, j++) { + const PartialSumHolder* currentPartialSumHolder_ptr = *itPartialSumHolder; assert (currentPartialSumHolder_ptr != NULL); - - ioOut << j << "; " << (*currentPartialSumHolder_ptr); + + oStr << j << "; " << currentPartialSumHolder_ptr->display(); } + return oStr.str(); } // ////////////////////////////////////////////////////////////////////// - void PartialSumHolderHolder::display () const { - toStream (std::cout); + const short PartialSumHolderHolder::getSize () const { + return _partialSumHolderList.size(); } // ////////////////////////////////////////////////////////////////////// PartialSumHolder& PartialSumHolderHolder:: getPreviousPartialSumHolder () const { - PartialSumHolder* resultPartialSumHolder_ptr = - *_itPreviousPartialSumHolder; + PartialSumHolder* resultPartialSumHolder_ptr= *_itPreviousPartialSumHolder; assert (resultPartialSumHolder_ptr != NULL); - return (*resultPartialSumHolder_ptr); } @@ -59,7 +89,6 @@ getCurrentPartialSumHolder () const { PartialSumHolder* resultPartialSumHolder_ptr = *_itCurrentPartialSumHolder; assert (resultPartialSumHolder_ptr != NULL); - return (*resultPartialSumHolder_ptr); } Modified: trunk/rmol/rmol/bom/PartialSumHolderHolder.hpp =================================================================== --- trunk/rmol/rmol/bom/PartialSumHolderHolder.hpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/bom/PartialSumHolderHolder.hpp 2009-03-08 17:51:26 UTC (rev 174) @@ -21,21 +21,11 @@ friend class FacPartialSumHolderHolder; public: + // ///////// Getters ///////// /** Get the size of the internal list (i.e., number of partial sum lists). */ const short getSize () const; - /** Dump a Business Object into an output stream. - @param ostream& the output stream - @return ostream& the output stream. */ - void toStream (std::ostream& ioOut) const; - - /** Display on standard output. */ - void display () const; - - /** Destructor. */ - virtual ~PartialSumHolderHolder(); - /** Get the previous element (partial sum holder/list). */ PartialSumHolder& getPreviousPartialSumHolder () const; @@ -55,19 +45,54 @@ list has been reached. */ bool hasNotReachedEnd () const; + public: + // ///////// Display methods //////// + /** Dump a Business Object into an output stream. + @param ostream& the output stream. */ + void toStream (std::ostream&) const; + + /** Read a Business Object from an input stream. + @param istream& the input stream. */ + void fromStream (std::istream&); + + /** Get the serialised version of the Place object. */ + std::string toString() const; + + /** Get a string describing the whole key (differentiating two objects + at any level). */ + const std::string describeKey() const; + + /** Get a string describing the short key (differentiating two objects + at the same level). */ + const std::string describeShortKey() const; + + /** Display the full Place context. */ + const std::string display() const; + + /** Display a short Place context. */ + const std::string shortDisplay() const; + + private: /** Constructors. */ PartialSumHolderHolder(); /** Reserve the space for iSize elements (partial sum holders). */ PartialSumHolderHolder (const int iSize); + /** Destructor. */ + virtual ~PartialSumHolderHolder(); + + + private: /** Add an element (partial sum holder/list). <br>Note that the Bucket object may be altered by subsequent operations. <br>Protected to force the use of the Factory. */ void addPartialSumHolder (PartialSumHolder&); + private: + // //////// Attributes ///////// /** The vector of (K) partial sums. */ PartialSumHolderList_T _partialSumHolderList; Deleted: trunk/rmol/rmol/factory/FacAbstract.cpp =================================================================== --- trunk/rmol/rmol/factory/FacAbstract.cpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/factory/FacAbstract.cpp 2009-03-08 17:51:26 UTC (rev 174) @@ -1,31 +0,0 @@ -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// C -#include <assert.h> -// RMOL -#include <rmol/bom/BomAbstract.hpp> -#include <rmol/factory/FacAbstract.hpp> - -namespace RMOL { - - // ////////////////////////////////////////////////////////////////////// - FacAbstract::~FacAbstract() { - clean (); - } - - // ////////////////////////////////////////////////////////////////////// - void FacAbstract::clean() { - for (BomPool_T::iterator itBom = _pool.begin(); - itBom != _pool.end(); itBom++) { - BomAbstract* currentBom_ptr = *itBom; - assert (currentBom_ptr != NULL); - - delete (currentBom_ptr); currentBom_ptr = NULL; - } - - // Empty the pool of Factories - _pool.clear(); - } - -} Deleted: trunk/rmol/rmol/factory/FacAbstract.hpp =================================================================== --- trunk/rmol/rmol/factory/FacAbstract.hpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/factory/FacAbstract.hpp 2009-03-08 17:51:26 UTC (rev 174) @@ -1,37 +0,0 @@ -#ifndef __RMOL_FAC_FACABSTRACT_HPP -#define __RMOL_FAC_FACABSTRACT_HPP - -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// STL -#include <vector> - -namespace RMOL { - - // Forward declarations - class BomAbstract; - - /** Base class for Factory layer. */ - class FacAbstract { - public: - - /** Define the list (pool) of Bom objects. */ - typedef std::vector<BomAbstract*> BomPool_T; - - /** Destructor. */ - virtual ~FacAbstract(); - - /** Destroyed all the object instantiated by this factory. */ - void clean(); - - protected: - /** Default Constructor. - <br>This constructor is protected to ensure the class is abstract. */ - FacAbstract() {} - - /** List of instantiated Business Objects*/ - BomPool_T _pool; - }; -} -#endif // __RMOL_FAC_FACABSTRACT_HPP Copied: trunk/rmol/rmol/factory/FacBomAbstract.cpp (from rev 168, trunk/rmol/rmol/factory/FacAbstract.cpp) =================================================================== --- trunk/rmol/rmol/factory/FacBomAbstract.cpp (rev 0) +++ trunk/rmol/rmol/factory/FacBomAbstract.cpp 2009-03-08 17:51:26 UTC (rev 174) @@ -0,0 +1,31 @@ +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// C +#include <assert.h> +// RMOL +#include <rmol/bom/BomAbstract.hpp> +#include <rmol/factory/FacBomAbstract.hpp> + +namespace RMOL { + + // ////////////////////////////////////////////////////////////////////// + FacBomAbstract::~FacBomAbstract() { + clean (); + } + + // ////////////////////////////////////////////////////////////////////// + void FacBomAbstract::clean() { + for (BomPool_T::iterator itBom = _pool.begin(); + itBom != _pool.end(); itBom++) { + BomAbstract* currentBom_ptr = *itBom; + assert (currentBom_ptr != NULL); + + delete (currentBom_ptr); currentBom_ptr = NULL; + } + + // Empty the pool of Factories + _pool.clear(); + } + +} Property changes on: trunk/rmol/rmol/factory/FacBomAbstract.cpp ___________________________________________________________________ Added: svn:mergeinfo + Copied: trunk/rmol/rmol/factory/FacBomAbstract.hpp (from rev 168, trunk/rmol/rmol/factory/FacAbstract.hpp) =================================================================== --- trunk/rmol/rmol/factory/FacBomAbstract.hpp (rev 0) +++ trunk/rmol/rmol/factory/FacBomAbstract.hpp 2009-03-08 17:51:26 UTC (rev 174) @@ -0,0 +1,37 @@ +#ifndef __RMOL_FAC_FACBOMABSTRACT_HPP +#define __RMOL_FAC_FACBOMABSTRACT_HPP + +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// STL +#include <vector> + +namespace RMOL { + + // Forward declarations + class BomAbstract; + + /** Base class for Factory layer. */ + class FacBomAbstract { + public: + + /** Define the list (pool) of Bom objects. */ + typedef std::vector<BomAbstract*> BomPool_T; + + /** Destructor. */ + virtual ~FacBomAbstract(); + + /** Destroyed all the object instantiated by this factory. */ + void clean(); + + protected: + /** Default Constructor. + <br>This constructor is protected to ensure the class is abstract. */ + FacBomAbstract() {} + + /** List of instantiated Business Objects*/ + BomPool_T _pool; + }; +} +#endif // __RMOL_FAC_FACBOMABSTRACT_HPP Property changes on: trunk/rmol/rmol/factory/FacBomAbstract.hpp ___________________________________________________________________ Added: svn:mergeinfo + Modified: trunk/rmol/rmol/factory/FacBucket.hpp =================================================================== --- trunk/rmol/rmol/factory/FacBucket.hpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/factory/FacBucket.hpp 2009-03-08 17:51:26 UTC (rev 174) @@ -5,7 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // RMOL -#include <rmol/factory/FacAbstract.hpp> +#include <rmol/factory/FacBomAbstract.hpp> namespace RMOL { @@ -15,7 +15,7 @@ class Demand; /** Factory for Bucket. */ - class FacBucket : public FacAbstract { + class FacBucket : public FacBomAbstract { public: /** Provide the unique instance. Modified: trunk/rmol/rmol/factory/FacBucketHolder.hpp =================================================================== --- trunk/rmol/rmol/factory/FacBucketHolder.hpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/factory/FacBucketHolder.hpp 2009-03-08 17:51:26 UTC (rev 174) @@ -5,7 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // RMOL -#include <rmol/factory/FacAbstract.hpp> +#include <rmol/factory/FacBomAbstract.hpp> namespace RMOL { @@ -14,7 +14,7 @@ class Bucket; /** Factory for Bucket. */ - class FacBucketHolder : public FacAbstract { + class FacBucketHolder : public FacBomAbstract { public: /** Provide the unique instance. Modified: trunk/rmol/rmol/factory/FacDemand.hpp =================================================================== --- trunk/rmol/rmol/factory/FacDemand.hpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/factory/FacDemand.hpp 2009-03-08 17:51:26 UTC (rev 174) @@ -5,7 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // RMOL -#include <rmol/factory/FacAbstract.hpp> +#include <rmol/factory/FacBomAbstract.hpp> namespace RMOL { @@ -15,7 +15,7 @@ class Demand; /** Factory for Demand. */ - class FacDemand : public FacAbstract { + class FacDemand : public FacBomAbstract { public: /** Provide the unique instance. Modified: trunk/rmol/rmol/factory/FacOverbooking.hpp =================================================================== --- trunk/rmol/rmol/factory/FacOverbooking.hpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/factory/FacOverbooking.hpp 2009-03-08 17:51:26 UTC (rev 174) @@ -5,7 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // RMOL -#include <rmol/factory/FacAbstract.hpp> +#include <rmol/factory/FacBomAbstract.hpp> namespace RMOL { @@ -14,7 +14,7 @@ class Overbooking; /** Factory for Overbooking. */ - class FacOverbooking : public FacAbstract { + class FacOverbooking : public FacBomAbstract { public: /** Provide the unique instance. Modified: trunk/rmol/rmol/factory/FacPartialSumHolder.hpp =================================================================== --- trunk/rmol/rmol/factory/FacPartialSumHolder.hpp 2009-03-08 06:47:19 UTC (rev 173) +++ trunk/rmol/rmol/factory/FacPartialSumHolder.hpp 2009-03-08 17:51:26 UTC (rev 174) @@ -5,7 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // RMOL -#include <rm... [truncated message content] |
From: <den...@us...> - 2009-03-08 06:47:22
|
Revision: 173 http://rmol.svn.sourceforge.net/rmol/?rev=173&view=rev Author: denis_arnaud Date: 2009-03-08 06:47:19 +0000 (Sun, 08 Mar 2009) Log Message: ----------- [Build] Now uses the i18n feature (the USE_NLS flag had to be forced to yes). Modified Paths: -------------- trunk/rmol/Makefile.am trunk/rmol/configure.ac trunk/rmol/rmol.spec.in Modified: trunk/rmol/Makefile.am =================================================================== --- trunk/rmol/Makefile.am 2009-03-08 00:06:18 UTC (rev 172) +++ trunk/rmol/Makefile.am 2009-03-08 06:47:19 UTC (rev 173) @@ -24,7 +24,7 @@ EXTRA_DIST = @PACKAGE@.spec @PACKAGE@.m4 @PACKAGE@.pc Makefile.common # Build in these directories: -SUBDIRS = rmol win32 man $(INFO_DOC_DIR) $(HTML_DOC_DIR) $(TEST_DIR) +SUBDIRS = rmol win32 po man $(INFO_DOC_DIR) $(HTML_DOC_DIR) $(TEST_DIR) # Configuration helpers Modified: trunk/rmol/configure.ac =================================================================== --- trunk/rmol/configure.ac 2009-03-08 00:06:18 UTC (rev 172) +++ trunk/rmol/configure.ac 2009-03-08 06:47:19 UTC (rev 173) @@ -286,7 +286,11 @@ #endif /* #ifndef CONFIG_H */ ]) +AM_GNU_GETTEXT([external], [need-formatstring-macros]) +AM_GNU_GETTEXT_VERSION([0.14]) +USE_NLS=yes + # Define configured files AC_CONFIG_FILES( Makefile @@ -311,6 +315,7 @@ doc/local/index.doc doc/doxygen_html.cfg doc/sourceforge/howto_release_rmol.html + po/Makefile.in test/Makefile win32/Makefile) AC_OUTPUT @@ -332,6 +337,7 @@ Switches: - debug ............. : ${enable_debug} - exceptions ........ : ${enable_exceptions} + - use-nls ........... : ${USE_NLS} - info-doc .......... : ${enable_info_doc} - html-doc .......... : ${enable_html_doc} - shared ............ : ${enable_shared} Modified: trunk/rmol/rmol.spec.in =================================================================== --- trunk/rmol/rmol.spec.in 2009-03-08 00:06:18 UTC (rev 172) +++ trunk/rmol/rmol.spec.in 2009-03-08 06:47:19 UTC (rev 173) @@ -58,7 +58,7 @@ %install rm -rf $RPM_BUILD_ROOT make install DESTDIR=$RPM_BUILD_ROOT -#%find_lang %{name} +%find_lang %{name} # remove unpackaged files from the buildroot rm -f $RPM_BUILD_ROOT%{_infodir}/dir @@ -77,8 +77,7 @@ /sbin/install-info --delete %{_infodir}/%{name}-ref.info.gz %{_infodir}/dir fi -%files -# -f %{name}.lang +%files -f %{name}.lang %defattr(-,root,root,-) %doc AUTHORS ChangeLog COPYING INSTALL NEWS README %{_bindir}/%{name} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2009-03-08 00:06:21
|
Revision: 172 http://rmol.svn.sourceforge.net/rmol/?rev=172&view=rev Author: denis_arnaud Date: 2009-03-08 00:06:18 +0000 (Sun, 08 Mar 2009) Log Message: ----------- [Build] Fixed a typo in the configure.ac (the po/Makefile.in has no longer to be delivered). Modified Paths: -------------- trunk/rmol/configure.ac Modified: trunk/rmol/configure.ac =================================================================== --- trunk/rmol/configure.ac 2009-03-08 00:02:50 UTC (rev 171) +++ trunk/rmol/configure.ac 2009-03-08 00:06:18 UTC (rev 172) @@ -311,7 +311,6 @@ doc/local/index.doc doc/doxygen_html.cfg doc/sourceforge/howto_release_rmol.html - po/Makefile.in test/Makefile win32/Makefile) AC_OUTPUT This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2009-03-08 00:03:05
|
Revision: 171 http://rmol.svn.sourceforge.net/rmol/?rev=171&view=rev Author: denis_arnaud Date: 2009-03-08 00:02:50 +0000 (Sun, 08 Mar 2009) Log Message: ----------- [Build] Fixed a typo in the rmol.spec (for RPM delivery). Modified Paths: -------------- trunk/rmol/rmol.spec.in Modified: trunk/rmol/rmol.spec.in =================================================================== --- trunk/rmol/rmol.spec.in 2009-03-07 23:58:58 UTC (rev 170) +++ trunk/rmol/rmol.spec.in 2009-03-08 00:02:50 UTC (rev 171) @@ -13,8 +13,6 @@ BuildRequires: boost-devel >= 1.34 #Requires: - Typically, the service providers (like, e.g., airlines, hotels or car rental companies) may use that library to help them - %description @PACKAGE_NAME@ is a C++ library of Revenue Management and Optimisation classes and functions. Typically, that library may be used by service providers This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2009-03-07 23:59:02
|
Revision: 170 http://rmol.svn.sourceforge.net/rmol/?rev=170&view=rev Author: denis_arnaud Date: 2009-03-07 23:58:58 +0000 (Sat, 07 Mar 2009) Log Message: ----------- [Build] Removed the i18n feature (as it was not working properly... and still not used). Modified Paths: -------------- trunk/rmol/Makefile.am trunk/rmol/configure.ac trunk/rmol/rmol.spec.in Removed Paths: ------------- trunk/rmol/po/create_po_file.sh.in Modified: trunk/rmol/Makefile.am =================================================================== --- trunk/rmol/Makefile.am 2009-03-07 22:50:43 UTC (rev 169) +++ trunk/rmol/Makefile.am 2009-03-07 23:58:58 UTC (rev 170) @@ -24,7 +24,7 @@ EXTRA_DIST = @PACKAGE@.spec @PACKAGE@.m4 @PACKAGE@.pc Makefile.common # Build in these directories: -SUBDIRS = rmol win32 po man $(INFO_DOC_DIR) $(HTML_DOC_DIR) $(TEST_DIR) +SUBDIRS = rmol win32 man $(INFO_DOC_DIR) $(HTML_DOC_DIR) $(TEST_DIR) # Configuration helpers Modified: trunk/rmol/configure.ac =================================================================== --- trunk/rmol/configure.ac 2009-03-07 22:50:43 UTC (rev 169) +++ trunk/rmol/configure.ac 2009-03-07 23:58:58 UTC (rev 170) @@ -287,10 +287,6 @@ ]) -# I18n -AM_GNU_GETTEXT([external], [need-formatstring-macros]) -AM_GNU_GETTEXT_VERSION([0.14]) - # Define configured files AC_CONFIG_FILES( Makefile @@ -316,7 +312,6 @@ doc/doxygen_html.cfg doc/sourceforge/howto_release_rmol.html po/Makefile.in - po/create_po_file.sh test/Makefile win32/Makefile) AC_OUTPUT Deleted: trunk/rmol/po/create_po_file.sh.in =================================================================== --- trunk/rmol/po/create_po_file.sh.in 2009-03-07 22:50:43 UTC (rev 169) +++ trunk/rmol/po/create_po_file.sh.in 2009-03-07 23:58:58 UTC (rev 170) @@ -1,5 +0,0 @@ -#!/bin/sh - -find ../rmol -name '*.[ch]pp' > sources_for_po.txt -xgettext -d rmol -a -f sources_for_po.txt - Modified: trunk/rmol/rmol.spec.in =================================================================== --- trunk/rmol/rmol.spec.in 2009-03-07 22:50:43 UTC (rev 169) +++ trunk/rmol/rmol.spec.in 2009-03-07 23:58:58 UTC (rev 170) @@ -1,7 +1,7 @@ Name: @PACKAGE@ Version: 0.17.0 Release: 0.dev.1 -Summary: @PACKAGE_NAME@ is a C++ library of Revenue Management and Optimisation classes and functions. Typically, the service providers (like, e.g., airlines, hotels or car rental companies) may use that library to help them optimise their revenues from their seat capacities. +Summary: @PACKAGE_NAME@ is a C++ library of Revenue Management and Optimisation classes and functions. Group: System Environment/Libraries License: LGPL @@ -11,16 +11,17 @@ BuildRequires: gsl-devel >= 1.8 BuildRequires: boost-devel >= 1.34 -BuildRequires: gettext >= 0.14 -BuildRequires: gettext-devel >= 0.14 #Requires: + Typically, the service providers (like, e.g., airlines, hotels or car rental companies) may use that library to help them + %description @PACKAGE_NAME@ is a C++ library of Revenue Management and Optimisation classes and functions. Typically, that library may be used by service providers (e.g., airlines offering flight seats, hotels offering rooms, rental car companies offering rental days, broadcasting company offering advertisement -slots, theaters offering seats, etc.). +slots, theaters offering seats, etc.) to help in optimising their revenues from +seat capacities. Most of the algorithms implemented are public and documented in the following book: The Theory and practice of Revenue Management, by Kalyan T. Talluri and @@ -59,7 +60,7 @@ %install rm -rf $RPM_BUILD_ROOT make install DESTDIR=$RPM_BUILD_ROOT -%find_lang %{name} +#%find_lang %{name} # remove unpackaged files from the buildroot rm -f $RPM_BUILD_ROOT%{_infodir}/dir @@ -78,7 +79,8 @@ /sbin/install-info --delete %{_infodir}/%{name}-ref.info.gz %{_infodir}/dir fi -%files -f %{name}.lang +%files +# -f %{name}.lang %defattr(-,root,root,-) %doc AUTHORS ChangeLog COPYING INSTALL NEWS README %{_bindir}/%{name} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2009-03-07 22:51:07
|
Revision: 169 http://rmol.svn.sourceforge.net/rmol/?rev=169&view=rev Author: denis_arnaud Date: 2009-03-07 22:50:43 +0000 (Sat, 07 Mar 2009) Log Message: ----------- [Build] 1. Improved the translation files. 2. Now delivers a rmol binary. Modified Paths: -------------- trunk/rmol/NEWS trunk/rmol/configure.ac trunk/rmol/po/POTFILES.in trunk/rmol/po/fr.po trunk/rmol/po/rmol.pot trunk/rmol/rmol/Makefile.am trunk/rmol/rmol/service/sources.mk trunk/rmol/rmol/sources.mk trunk/rmol/rmol.spec.in Added Paths: ----------- trunk/rmol/po/create_po_file.sh.in trunk/rmol/rmol/rmol.cpp trunk/rmol/rmol/service/RMOL_Service.cpp Removed Paths: ------------- trunk/rmol/rmol/RMOL_Service.cpp Property Changed: ---------------- trunk/rmol/po/ trunk/rmol/rmol/ Modified: trunk/rmol/NEWS =================================================================== --- trunk/rmol/NEWS 2009-03-05 02:36:56 UTC (rev 168) +++ trunk/rmol/NEWS 2009-03-07 22:50:43 UTC (rev 169) @@ -0,0 +1,3 @@ + +2009-03-07: Release of RPMs for Fedora 10. + Modified: trunk/rmol/configure.ac =================================================================== --- trunk/rmol/configure.ac 2009-03-05 02:36:56 UTC (rev 168) +++ trunk/rmol/configure.ac 2009-03-07 22:50:43 UTC (rev 169) @@ -146,9 +146,12 @@ # Boost (STL Extensions: http://www.boost.org) # -------------------------------------------------------- AX_BOOST([1.33]) +AC_SUBST(BOOST_VERSION) AC_SUBST(BOOST_CFLAGS) AC_SUBST(BOOST_LIBS) AC_SUBST(BOOST_DATE_TIME_LIB) +AC_SUBST(BOOST_PROGRAM_OPTIONS_LIB) +AC_SUBST(BOOST_FILESYSTEM_LIB) # Checks for documentation build tools @@ -313,6 +316,7 @@ doc/doxygen_html.cfg doc/sourceforge/howto_release_rmol.html po/Makefile.in + po/create_po_file.sh test/Makefile win32/Makefile) AC_OUTPUT @@ -323,52 +327,54 @@ ------------------------------------------------------------------------------ Directories: - - prefix ......... : ${prefix} - - exec_prefix .... : ${exec_prefix} - - includedir ..... : ${includedir} - - libdir ......... : ${libdir} - - docdir ......... : ${docdir} - - mandir ......... : ${mandir} - - infodir ........ : ${infodir} + - prefix ............ : ${prefix} + - exec_prefix ....... : ${exec_prefix} + - includedir ........ : ${includedir} + - libdir ............ : ${libdir} + - docdir ............ : ${docdir} + - mandir ............ : ${mandir} + - infodir ........... : ${infodir} Switches: - - debug .......... : ${enable_debug} - - exceptions ..... : ${enable_exceptions} - - info-doc ....... : ${enable_info_doc} - - html-doc ....... : ${enable_html_doc} - - shared ......... : ${enable_shared} - - static ......... : ${enable_static} + - debug ............. : ${enable_debug} + - exceptions ........ : ${enable_exceptions} + - info-doc .......... : ${enable_info_doc} + - html-doc .......... : ${enable_html_doc} + - shared ............ : ${enable_shared} + - static ............ : ${enable_static} Documentation tools: - - texinfo ........ : ${texinfo_ok} - - doxygen ........ : ${doxygen_ok} - - latex .......... : ${latex_ok} - - dvips .......... : ${dvips_ok} - - ghostscript .... : ${gs_ok} + - texinfo ........... : ${texinfo_ok} + - doxygen ........... : ${doxygen_ok} + - latex ............. : ${latex_ok} + - dvips ............. : ${dvips_ok} + - ghostscript ....... : ${gs_ok} Testing tools: - - diff ........... : ${diff_ok} - - sed ............ : ${sed_ok} + - diff .............. : ${diff_ok} + - sed ............... : ${sed_ok} Compiler/linker flags/libs/defs: - - CXX ............ : ${CXX} - - CXXFLAGS ....... : ${CXXFLAGS_OPT} - - CXXFLAGS_DEBUG . : ${CXXFLAGS_DEBUG} - - CPPFLAGS ....... : ${CPPFLAGS} - - LDFLAGS ........ : ${LDFLAGS} - - LIBS ........... : ${LIBS} + - CXX ............... : ${CXX} + - CXXFLAGS .......... : ${CXXFLAGS_OPT} + - CXXFLAGS_DEBUG .... : ${CXXFLAGS_DEBUG} + - CPPFLAGS .......... : ${CPPFLAGS} + - LDFLAGS ........... : ${LDFLAGS} + - LIBS .............. : ${LIBS} External libraries: - - GSL ............ : ${GSL_CONFIG} - o GSL_VERSION .. : ${GSL_VERSION} - o GSL_CFLAGS ... : ${GSL_CFLAGS} - o GSL_LIBS ..... : ${GSL_LIBS} + - GSL ............... : ${GSL_CONFIG} + o GSL_VERSION ..... : ${GSL_VERSION} + o GSL_CFLAGS ...... : ${GSL_CFLAGS} + o GSL_LIBS ........ : ${GSL_LIBS} - - Boost .......... : - o BOOST_VERSION. : ${boost_lib_version_shorten} - o BOOST_CFLAGS . : ${BOOST_CFLAGS} - o BOOST_LIBS ... : ${BOOST_LIBS} - o BOOST_DT_LIB . : ${BOOST_DATE_TIME_LIB} + - Boost ............. : + o BOOST_VERSION ... : ${BOOST_VERSION} + o BOOST_CFLAGS .... : ${BOOST_CFLAGS} + o BOOST_LIBS ...... : ${BOOST_LIBS} + o BOOST_DT_LIB .... : ${BOOST_DATE_TIME_LIB} + o BOOST_PO_LIB .... : ${BOOST_PROGRAM_OPTIONS_LIB} + o BOOST_FS_LIB .... : ${BOOST_FILESYSTEM_LIB} ------------------------------------------------------------------------------ Now type 'make && make install' to build and install $PACKAGE-$VERSION library Property changes on: trunk/rmol/po ___________________________________________________________________ Modified: svn:ignore - Makefile Makefile.in POTFILES @localedir@ Makevars.template fr.gmo remove-potcdate.sed + Makefile Makefile.in POTFILES @localedir@ Makevars.template fr.gmo remove-potcdate.sed create_po_file.sh Modified: trunk/rmol/po/POTFILES.in =================================================================== --- trunk/rmol/po/POTFILES.in 2009-03-05 02:36:56 UTC (rev 168) +++ trunk/rmol/po/POTFILES.in 2009-03-07 22:50:43 UTC (rev 169) @@ -1,64 +1,77 @@ # List of files which contain translatable strings. +rmol/service/RMOL_Service.cpp +rmol/service/ServiceAbstract.hpp +rmol/service/ServiceAbstract.cpp +rmol/service/ServiceContext.cpp +rmol/service/ServiceContext.hpp +rmol/RmolTypes.hpp +rmol/RMOL_Service.hpp +rmol/field/FldYieldRange.hpp rmol/field/FldOverbookingPolicy.hpp -rmol/field/FldYieldRange.hpp -rmol/field/FldOverbookingPolicy.cpp rmol/field/FldYieldRange.cpp rmol/field/FldDistributionParameters.hpp +rmol/field/FldOverbookingPolicy.cpp rmol/field/FldDistributionParameters.cpp +rmol/factory/FacBucket.hpp +rmol/factory/FacOverbooking.cpp +rmol/factory/FacPartialSumHolder.hpp +rmol/factory/FacServiceAbstract.hpp +rmol/factory/FacOverbooking.hpp +rmol/factory/FacSupervisor.cpp +rmol/factory/FacServiceContext.cpp +rmol/factory/FacDemand.hpp +rmol/factory/FacPartialSumHolderHolder.cpp +rmol/factory/FacAbstract.hpp +rmol/factory/FacBucketHolder.cpp +rmol/factory/FacServiceAbstract.cpp +rmol/factory/FacAbstract.cpp +rmol/factory/FacDemand.cpp +rmol/factory/FacBucketHolder.hpp +rmol/factory/FacPartialSumHolderHolder.hpp +rmol/factory/FacPartialSumHolder.cpp +rmol/factory/FacSupervisor.hpp +rmol/factory/FacBucket.cpp +rmol/factory/FacServiceContext.hpp +rmol/basic/BasConst_RMOL_Service.hpp +rmol/basic/BasConst.cpp rmol/basic/BasConst_Overbooking.hpp rmol/basic/BasConst_General.hpp -rmol/basic/BasConst_RMOL_Service.hpp -rmol/basic/BasConst.cpp -rmol/RmolTypes.hpp -rmol/bom/BucketHolder.hpp -rmol/bom/PartialSumHolder.hpp +rmol/bom/Resource.hpp +rmol/bom/BucketList.hpp +rmol/bom/PartialSumHolder.cpp +rmol/bom/PartialSumHolderList.hpp +rmol/bom/Demand.hpp +rmol/bom/VariateList.hpp +rmol/bom/EmsrUtils.hpp +rmol/bom/BomAbstract.hpp +rmol/bom/MCOptimiser.cpp +rmol/bom/Demand.cpp rmol/bom/Emsr.cpp rmol/bom/Bucket.hpp +rmol/bom/Gaussian.cpp +rmol/bom/Bucket.cpp +rmol/bom/EmsrUtils.cpp +rmol/bom/DPOptimiser.hpp rmol/bom/Emsr.hpp +rmol/bom/BomAbstract.cpp +rmol/bom/MAForecast.cpp +rmol/bom/old/DemandGeneratorList.hpp +rmol/bom/old/DemandGeneratorList.cpp +rmol/bom/MCOptimiser.hpp +rmol/bom/PartialSumHolder.hpp +rmol/bom/MAForecast.hpp +rmol/bom/PartialSumHolderHolder.hpp rmol/bom/PartialSumList.hpp -rmol/bom/EmsrUtils.cpp -rmol/bom/Gaussian.cpp -rmol/bom/BomAbstract.hpp -rmol/bom/MCOptimiser.hpp -rmol/bom/BucketHolder.cpp +rmol/bom/DPOptimiser.cpp rmol/bom/Overbooking.hpp -rmol/bom/EmsrUtils.hpp -rmol/bom/PartialSumHolder.cpp -rmol/bom/Demand.hpp -rmol/bom/old/DemandGeneratorList.cpp -rmol/bom/old/DemandGeneratorList.hpp +rmol/bom/BucketHolder.hpp rmol/bom/Overbooking.cpp -rmol/bom/Gaussian.hpp -rmol/bom/BucketList.hpp rmol/bom/PartialSumHolderHolder.cpp +rmol/bom/BucketHolder.cpp rmol/bom/DistributionParameterList.hpp -rmol/bom/Demand.cpp -rmol/bom/Bucket.cpp -rmol/bom/BomAbstract.cpp -rmol/bom/PartialSumHolderList.hpp -rmol/bom/PartialSumHolderHolder.hpp -rmol/bom/MCOptimiser.cpp -rmol/bom/VariateList.hpp +rmol/bom/Gaussian.hpp +rmol/rmol.cpp +rmol/command/Optimiser.hpp +rmol/command/Optimiser.cpp rmol/command/FileMgr.hpp -rmol/command/Optimiser.cpp rmol/command/FileMgr.cpp -rmol/command/Optimiser.hpp -rmol/factory/FacOverbooking.hpp -rmol/factory/FacSupervisor.hpp -rmol/factory/FacAbstract.hpp -rmol/factory/FacBucket.cpp -rmol/factory/FacPartialSumHolderHolder.cpp -rmol/factory/FacDemand.cpp -rmol/factory/FacDemand.hpp -rmol/factory/FacPartialSumHolder.cpp -rmol/factory/FacBucket.hpp -rmol/factory/FacBucketHolder.cpp -rmol/factory/FacBucketHolder.hpp -rmol/factory/FacAbstract.cpp -rmol/factory/FacPartialSumHolderHolder.hpp -rmol/factory/FacPartialSumHolder.hpp -rmol/factory/FacOverbooking.cpp -rmol/factory/FacSupervisor.cpp -rmol/RMOL_Service.hpp -rmol/RMOL_Service.cpp - Added: trunk/rmol/po/create_po_file.sh.in =================================================================== --- trunk/rmol/po/create_po_file.sh.in (rev 0) +++ trunk/rmol/po/create_po_file.sh.in 2009-03-07 22:50:43 UTC (rev 169) @@ -0,0 +1,5 @@ +#!/bin/sh + +find ../rmol -name '*.[ch]pp' > sources_for_po.txt +xgettext -d rmol -a -f sources_for_po.txt + Property changes on: trunk/rmol/po/create_po_file.sh.in ___________________________________________________________________ Added: svn:mergeinfo + Modified: trunk/rmol/po/fr.po =================================================================== --- trunk/rmol/po/fr.po 2009-03-05 02:36:56 UTC (rev 168) +++ trunk/rmol/po/fr.po 2009-03-07 22:50:43 UTC (rev 169) @@ -5,10082 +5,8329 @@ msgid "" msgstr "" "Project-Id-Version: GNU coreutils 5.97\n" -"Report-Msgid-Bugs-To: bug...@gn...\n" -"POT-Creation-Date: 2007-01-28 23:45+0100\n" -"PO-Revision-Date: 2006-07-10 08:00-0500\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2009-03-07 22:47+0100\n" +"PO-Revision-Date: 2009-03-07 23:24+0100\n" "Last-Translator: Michel Robitaille <rob...@IR...>\n" "Language-Team: French <tr...@tr...>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" -"Content-Transfer-Encoding: 8-bit\n" +"Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: lib/acl.c:254 lib/acl.c:268 lib/acl.c:285 lib/acl.c:297 lib/acl.c:396 -#: src/copy.c:555 src/copy.c:1864 -#, fuzzy, c-format -msgid "preserving permissions for %s" -msgstr "Ne peut changer les permissions de %s" +#: ../rmol/service/RMOL_Service.cpp:138 +msgid "Bid-Price Vector (BPV): " +msgstr "" -#: lib/acl.c:377 lib/acl.c:385 lib/acl.c:404 src/copy.c:1580 src/cp.c:483 -#, c-format -msgid "setting permissions for %s" -msgstr "initialisation des permissions de %s" +#: ../rmol/service/RMOL_Service.cpp:143 ../rmol/command/Optimiser.cpp:74 +msgid " " +msgstr "" -#: lib/argmatch.c:135 -#, c-format -msgid "invalid argument %s for %s" -msgstr "argument %s invalide pour %s" +#: ../rmol/field/FldOverbookingPolicy.cpp:9 +msgid "HEUR" +msgstr "" -#: lib/argmatch.c:136 -#, c-format -msgid "ambiguous argument %s for %s" -msgstr "argument %s ambigu pour %s" +#: ../rmol/field/FldOverbookingPolicy.cpp:9 +msgid "RISK" +msgstr "" -#: lib/argmatch.c:155 -#, c-format -msgid "Valid arguments are:" -msgstr "Arguments valides sont:" +#: ../rmol/field/FldOverbookingPolicy.cpp:9 +msgid "SL1" +msgstr "" -#: lib/closeout.c:74 src/base64.c:115 src/base64.c:127 src/base64.c:133 -#: src/base64.c:174 src/base64.c:218 src/cat.c:193 src/cat.c:209 src/cat.c:293 -#: src/cksum.c:252 src/expand.c:337 src/expand.c:362 src/head.c:300 -#: src/head.c:350 src/head.c:758 src/head.c:799 src/od.c:968 src/paste.c:143 -#: src/shuf.c:409 src/tail.c:305 src/tail.c:1093 src/tr.c:1561 src/tr.c:1784 -#: src/tr.c:1887 src/unexpand.c:434 src/unexpand.c:450 -#, c-format -msgid "write error" -msgstr "Erreur d'\xE9criture." +#: ../rmol/field/FldOverbookingPolicy.cpp:9 +msgid "SL2" +msgstr "" -#: lib/error.c:125 -msgid "Unknown system error" -msgstr "Erreur syst\xE8me inconnue" +#: ../rmol/field/FldOverbookingPolicy.cpp:10 +msgid "HYBRID" +msgstr "" -#: lib/euidaccess-stat.c:137 src/copy.c:1024 src/copy.c:1060 src/copy.c:1568 -#: src/copy.c:1851 src/df.c:512 src/install.c:455 src/stat.c:784 -#, c-format -msgid "cannot stat %s" -msgstr "ne peut \xE9valuer %s" +#: ../rmol/bom/PartialSumHolder.cpp:31 +msgid "Partial Sum (K = " +msgstr "" -#: lib/file-type.c:39 -msgid "regular empty file" -msgstr "fichier r\xE9gulier vide" +#: ../rmol/bom/PartialSumHolder.cpp:31 +msgid "); " +msgstr "" -#: lib/file-type.c:39 -msgid "regular file" -msgstr "fichier r\xE9gulier" +#: ../rmol/bom/PartialSumHolder.cpp:37 ../rmol/bom/Bucket.cpp:51 +#: ../rmol/bom/Bucket.cpp:52 ../rmol/bom/PartialSumHolderHolder.cpp:38 +#: ../rmol/bom/BucketHolder.cpp:48 +msgid "; " +msgstr "" -#: lib/file-type.c:42 -msgid "directory" -msgstr "r\xE9pertoire" +#: ../rmol/bom/DPOptimiser.cpp:158 +msgid "x = " +msgstr "" -#: lib/file-type.c:45 -msgid "block special file" -msgstr "fichier sp\xE9cial de bloc" +#: ../rmol/bom/DPOptimiser.cpp:159 +msgid "class: " +msgstr "" -#: lib/file-type.c:48 -msgid "character special file" -msgstr "fichier sp\xE9cial de caract\xE8res" +#: ../rmol/bom/DPOptimiser.cpp:181 +msgid "Vmaxindex = " +msgstr "" -#: lib/file-type.c:51 -msgid "fifo" -msgstr "PEPS (FIFO)" +#: ../rmol/bom/BucketHolder.cpp:40 +msgid "" +"Class; Price; Mean; Std Dev; Protection; Cum. Protection; Cum. Bkg Limit; " +msgstr "" -#: lib/file-type.c:54 -msgid "symbolic link" -msgstr "lien symbolique" +#: ../rmol/bom/BucketHolder.cpp:51 +msgid "Cabin Capacity = " +msgstr "" -#: lib/file-type.c:57 -msgid "socket" -msgstr "socket" +#: ../rmol/bom/BucketHolder.cpp:52 +msgid "; Total Mean Demand = " +msgstr "" -#: lib/file-type.c:60 -msgid "message queue" -msgstr "queue de messages" +#: ../rmol/bom/BucketHolder.cpp:53 +msgid "; Demand Factor = " +msgstr "" -#: lib/file-type.c:63 -msgid "semaphore" -msgstr "s\xE9maphore" +#: ../rmol/bom/BucketHolder.cpp:54 +msgid "; Optimal Revenue = " +msgstr "" -#: lib/file-type.c:66 -msgid "shared memory object" -msgstr "objet de m\xE9moire partag\xE9e" +#: ../rmol/rmol.cpp:23 +msgid "class.csv" +msgstr "" -#: lib/file-type.c:69 -msgid "typed memory object" -msgstr "objet m\xE9moire typ\xE9e" +#: ../rmol/rmol.cpp:97 +msgid "Standard exception: " +msgstr "" -#: lib/file-type.c:71 -msgid "weird file" -msgstr "fichier bizarre" +#: ../rmol/command/Optimiser.cpp:69 +msgid "BVP: " +msgstr "" -#: lib/gai_strerror.c:44 -msgid "Address family for hostname not supported" -msgstr "La famille d'adresses pour le nom de l'h\xF4te n'est pas support\xE9." +#: ../rmol/command/FileMgr.cpp:29 +#, fuzzy +msgid "Can not open input file \"" +msgstr "fermeture du fichier d'entr\xE9e %s" -#: lib/gai_strerror.c:45 -msgid "Temporary failure in name resolution" -msgstr "\xC9chec temporaire dans la r\xE9solution de nom" +#: ../rmol/command/FileMgr.cpp:29 ../rmol/command/FileMgr.cpp:80 +msgid "\"" +msgstr "" -#: lib/gai_strerror.c:46 -msgid "Bad value for ai_flags" -msgstr "Valeur erron\xE9e pour ai_flags" +#: ../rmol/command/FileMgr.cpp:79 +msgid "Problem when reading input file \"" +msgstr "" -#: lib/gai_strerror.c:47 -msgid "Non-recoverable failure in name resolution" -msgstr "\xC9chec non r\xE9cup\xE9rable dans la r\xE9solution de nom" +#, fuzzy +#~ msgid "preserving permissions for %s" +#~ msgstr "Ne peut changer les permissions de %s" -#: lib/gai_strerror.c:48 -msgid "ai_family not supported" -msgstr "ai_family non support\xE9" +#~ msgid "setting permissions for %s" +#~ msgstr "initialisation des permissions de %s" -#: lib/gai_strerror.c:49 -msgid "Memory allocation failure" -msgstr "\xC9chec d'allocation m\xE9moire" +#~ msgid "invalid argument %s for %s" +#~ msgstr "argument %s invalide pour %s" -#: lib/gai_strerror.c:50 -msgid "No address associated with hostname" -msgstr "Aucune adresse associ\xE9 avec le nom de l'h\xF4te" +#~ msgid "ambiguous argument %s for %s" +#~ msgstr "argument %s ambigu pour %s" -#: lib/gai_strerror.c:51 -msgid "Name or service not known" -msgstr "Nom ou service inconnu" +#~ msgid "Valid arguments are:" +#~ msgstr "Arguments valides sont:" -#: lib/gai_strerror.c:52 -msgid "Servname not supported for ai_socktype" -msgstr "Servname n'est pas support\xE9 avec ai_socktype" +#~ msgid "write error" +#~ msgstr "Erreur d'\xE9criture." -#: lib/gai_strerror.c:53 -msgid "ai_socktype not supported" -msgstr "ai_socktype n'est pas support\xE9." +#~ msgid "Unknown system error" +#~ msgstr "Erreur syst\xE8me inconnue" -#: lib/gai_strerror.c:54 -msgid "System error" -msgstr "Erreur syst\xE8me" +#~ msgid "cannot stat %s" +#~ msgstr "ne peut \xE9valuer %s" -#: lib/gai_strerror.c:56 -msgid "Processing request in progress" -msgstr "Requ\xEAte de traitement en cours" +#~ msgid "regular empty file" +#~ msgstr "fichier r\xE9gulier vide" -#: lib/gai_strerror.c:57 -msgid "Request canceled" -msgstr "Requ\xEAte annul\xE9e" +#~ msgid "regular file" +#~ msgstr "fichier r\xE9gulier" -#: lib/gai_strerror.c:58 -msgid "Request not canceled" -msgstr "Requ\xEAte non annul\xE9e" +#~ msgid "directory" +#~ msgstr "r\xE9pertoire" -#: lib/gai_strerror.c:59 -msgid "All requests done" -msgstr "Toutes les requ\xEAtes ont \xE9t\xE9 trait\xE9es" +#~ msgid "block special file" +#~ msgstr "fichier sp\xE9cial de bloc" -#: lib/gai_strerror.c:60 -msgid "Interrupted by a signal" -msgstr "Interrompu par un signal" +#~ msgid "character special file" +#~ msgstr "fichier sp\xE9cial de caract\xE8res" -#: lib/gai_strerror.c:61 -msgid "Parameter string not correctly encoded" -msgstr "Param\xE8tre de cha\xEEne n'est pas correctement encod\xE9" +#~ msgid "fifo" +#~ msgstr "PEPS (FIFO)" -#: lib/gai_strerror.c:73 -msgid "Unknown error" -msgstr "Erreur inconnue" +#~ msgid "symbolic link" +#~ msgstr "lien symbolique" -#: lib/getopt.c:531 lib/getopt.c:547 -#, c-format -msgid "%s: option `%s' is ambiguous\n" -msgstr "%s: l'option \xAB %s \xBB est ambigu\xEB\n" +#~ msgid "socket" +#~ msgstr "socket" -#: lib/getopt.c:580 lib/getopt.c:584 -#, c-format -msgid "%s: option `--%s' doesn't allow an argument\n" -msgstr "%s: l'option \xAB --%s \xBB ne requiert pas un argument.\n" +#~ msgid "message queue" +#~ msgstr "queue de messages" -#: lib/getopt.c:593 lib/getopt.c:598 -#, c-format -msgid "%s: option `%c%s' doesn't allow an argument\n" -msgstr "%s: l'option \xAB %c%s \xBB ne requiert pas un argument.\n" +#~ msgid "semaphore" +#~ msgstr "s\xE9maphore" -#: lib/getopt.c:641 lib/getopt.c:660 lib/getopt.c:976 lib/getopt.c:995 -#, c-format -msgid "%s: option `%s' requires an argument\n" -msgstr "%s: l'option \xAB %s \xBB requiert un argument.\n" +#~ msgid "shared memory object" +#~ msgstr "objet de m\xE9moire partag\xE9e" -#: lib/getopt.c:698 lib/getopt.c:701 -#, c-format -msgid "%s: unrecognized option `--%s'\n" -msgstr "%s: option non reconnue \xAB --%s \xBB\n" +#~ msgid "typed memory object" +#~ msgstr "objet m\xE9moire typ\xE9e" -#: lib/getopt.c:709 lib/getopt.c:712 -#, c-format -msgid "%s: unrecognized option `%c%s'\n" -msgstr "%s: option non reconnue \xAB %c%s \xBB\n" +#~ msgid "weird file" +#~ msgstr "fichier bizarre" -#: lib/getopt.c:764 lib/getopt.c:767 -#, c-format -msgid "%s: illegal option -- %c\n" -msgstr "%s: option ill\xE9gale --%c\n" +#~ msgid "Address family for hostname not supported" +#~ msgstr "La famille d'adresses pour le nom de l'h\xF4te n'est pas support\xE9." -#: lib/getopt.c:773 lib/getopt.c:776 -#, c-format -msgid "%s: invalid option -- %c\n" -msgstr "%s: option invalide --%c\n" +#~ msgid "Temporary failure in name resolution" +#~ msgstr "\xC9chec temporaire dans la r\xE9solution de nom" -#: lib/getopt.c:828 lib/getopt.c:844 lib/getopt.c:1048 lib/getopt.c:1066 -#, c-format -msgid "%s: option requires an argument -- %c\n" -msgstr "%s: l'option requiert un argument --%c\n" +#~ msgid "Bad value for ai_flags" +#~ msgstr "Valeur erron\xE9e pour ai_flags" -#: lib/getopt.c:897 lib/getopt.c:913 -#, c-format -msgid "%s: option `-W %s' is ambiguous\n" -msgstr "%s: l'option \xAB -W %s \xBB est ambigu\xEB\n" +#~ msgid "Non-recoverable failure in name resolution" +#~ msgstr "\xC9chec non r\xE9cup\xE9rable dans la r\xE9solution de nom" -#: lib/getopt.c:937 lib/getopt.c:955 -#, c-format -msgid "%s: option `-W %s' doesn't allow an argument\n" -msgstr "%s: l'option \xAB -W %s \xBB ne permet pas un argument.\n" +#~ msgid "ai_family not supported" +#~ msgstr "ai_family non support\xE9" -#: lib/human.c:477 -msgid "block size" -msgstr "taille de bloc" +#~ msgid "Memory allocation failure" +#~ msgstr "\xC9chec d'allocation m\xE9moire" -#: lib/mkdir-p.c:192 src/install.c:522 -#, c-format -msgid "cannot change permissions of %s" -msgstr "Ne peut changer les permissions de %s" +#~ msgid "No address associated with hostname" +#~ msgstr "Aucune adresse associ\xE9 avec le nom de l'h\xF4te" -#: lib/mkdir-p.c:202 src/copy.c:1557 src/install.c:423 src/install.c:436 -#, c-format -msgid "cannot create directory %s" -msgstr "ne peut cr\xE9er le r\xE9pertoire %s" +#~ msgid "Name or service not known" +#~ msgstr "Nom ou service inconnu" -#: lib/obstack.c:424 lib/obstack.c:426 lib/xalloc-die.c:35 src/csplit.c:237 -msgid "memory exhausted" -msgstr "M\xE9moire \xE9puis\xE9e" +#~ msgid "Servname not supported for ai_socktype" +#~ msgstr "Servname n'est pas support\xE9 avec ai_socktype" -#: lib/openat-die.c:34 -#, c-format -msgid "unable to record current working directory" -msgstr "incapable d'enregistrer le r\xE9pertoire de travail courant" +#~ msgid "ai_socktype not supported" +#~ msgstr "ai_socktype n'est pas support\xE9." -#: lib/openat-die.c:47 src/df.c:535 -#, c-format -msgid "failed to return to initial working directory" -msgstr "\xE9chec de retour au r\xE9pertoire initial de travail" +#~ msgid "System error" +#~ msgstr "Erreur syst\xE8me" -#. TRANSLATORS: -#. Get translations for open and closing quotation marks. -#. -#. The message catalog should translate "`" to a left -#. quotation mark suitable for the locale, and similarly for -#. "'". If the catalog has no translation, -#. locale_quoting_style quotes `like this', and -#. clocale_quoting_style quotes "like this". -#. -#. For example, an American English Unicode locale should -#. translate "`" to U+201C (LEFT DOUBLE QUOTATION MARK), and -#. should translate "'" to U+201D (RIGHT DOUBLE QUOTATION -#. MARK). A British English Unicode locale should instead -#. translate these to U+2018 (LEFT SINGLE QUOTATION MARK) and -#. U+2019 (RIGHT SINGLE QUOTATION MARK), respectively. -#. -#. If you don't know what to put here, please see -#. <http://en.wikipedia.org/wiki/Quotation_mark#Glyphs> -#. and use glyphs suitable for your language. -#: lib/quotearg.c:245 -msgid "`" -msgstr "`" +#~ msgid "Processing request in progress" +#~ msgstr "Requ\xEAte de traitement en cours" -#: lib/quotearg.c:246 -msgid "'" -msgstr "'" +#~ msgid "Request canceled" +#~ msgstr "Requ\xEAte annul\xE9e" -#: lib/randread.c:125 -#, fuzzy, c-format -msgid "%s: end of file" -msgstr "%s: \xE9chec de rep\xE9rage (seek)" +#~ msgid "Request not canceled" +#~ msgstr "Requ\xEAte non annul\xE9e" -#: lib/regcomp.c:131 -msgid "Success" -msgstr "" +#~ msgid "All requests done" +#~ msgstr "Toutes les requ\xEAtes ont \xE9t\xE9 trait\xE9es" -#: lib/regcomp.c:134 -msgid "No match" -msgstr "" +#~ msgid "Interrupted by a signal" +#~ msgstr "Interrompu par un signal" -#: lib/regcomp.c:137 -#, fuzzy -msgid "Invalid regular expression" -msgstr "%s: expression r\xE9guli\xE8re invalide: %s" +#~ msgid "Parameter string not correctly encoded" +#~ msgstr "Param\xE8tre de cha\xEEne n'est pas correctement encod\xE9" -#: lib/regcomp.c:140 -#, fuzzy -msgid "Invalid collation character" -msgstr "caract\xE8re de classe invalide %s" +#~ msgid "Unknown error" +#~ msgstr "Erreur inconnue" -#: lib/regcomp.c:143 -#, fuzzy -msgid "Invalid character class name" -msgstr "caract\xE8re de classe invalide %s" +#~ msgid "%s: option `%s' is ambiguous\n" +#~ msgstr "%s: l'option \xAB %s \xBB est ambigu\xEB\n" -#: lib/regcomp.c:146 -msgid "Trailing backslash" -msgstr "" +#~ msgid "%s: option `--%s' doesn't allow an argument\n" +#~ msgstr "%s: l'option \xAB --%s \xBB ne requiert pas un argument.\n" -#: lib/regcomp.c:149 -#, fuzzy -msgid "Invalid back reference" -msgstr "bornes de pages invalides %s" +#~ msgid "%s: option `%c%s' doesn't allow an argument\n" +#~ msgstr "%s: l'option \xAB %c%s \xBB ne requiert pas un argument.\n" -#: lib/regcomp.c:152 -msgid "Unmatched [ or [^" -msgstr "" +#~ msgid "%s: option `%s' requires an argument\n" +#~ msgstr "%s: l'option \xAB %s \xBB requiert un argument.\n" -#: lib/regcomp.c:155 -msgid "Unmatched ( or \\(" -msgstr "" +#~ msgid "%s: unrecognized option `--%s'\n" +#~ msgstr "%s: option non reconnue \xAB --%s \xBB\n" -#: lib/regcomp.c:158 -msgid "Unmatched \\{" -msgstr "" +#~ msgid "%s: unrecognized option `%c%s'\n" +#~ msgstr "%s: option non reconnue \xAB %c%s \xBB\n" -#: lib/regcomp.c:161 -msgid "Invalid content of \\{\\}" -msgstr "" +#~ msgid "%s: illegal option -- %c\n" +#~ msgstr "%s: option ill\xE9gale --%c\n" -#: lib/regcomp.c:164 +#~ msgid "%s: invalid option -- %c\n" +#~ msgstr "%s: option invalide --%c\n" + +#~ msgid "%s: option requires an argument -- %c\n" +#~ msgstr "%s: l'option requiert un argument --%c\n" + +#~ msgid "%s: option `-W %s' is ambiguous\n" +#~ msgstr "%s: l'option \xAB -W %s \xBB est ambigu\xEB\n" + +#~ msgid "%s: option `-W %s' doesn't allow an argument\n" +#~ msgstr "%s: l'option \xAB -W %s \xBB ne permet pas un argument.\n" + +#~ msgid "block size" +#~ msgstr "taille de bloc" + +#~ msgid "cannot change permissions of %s" +#~ msgstr "Ne peut changer les permissions de %s" + +#~ msgid "cannot create directory %s" +#~ msgstr "ne peut cr\xE9er le r\xE9pertoire %s" + +#~ msgid "memory exhausted" +#~ msgstr "M\xE9moire \xE9puis\xE9e" + +#~ msgid "unable to record current working directory" +#~ msgstr "incapable d'enregistrer le r\xE9pertoire de travail courant" + +#~ msgid "failed to return to initial working directory" +#~ msgstr "\xE9chec de retour au r\xE9pertoire initial de travail" + +#~ msgid "`" +#~ msgstr "`" + +#~ msgid "'" +#~ msgstr "'" + #, fuzzy -msgid "Invalid range end" -msgstr "bornes de pages invalides %s" +#~ msgid "%s: end of file" +#~ msgstr "%s: \xE9chec de rep\xE9rage (seek)" -#: lib/regcomp.c:167 -msgid "Memory exhausted" -msgstr "M\xE9moire \xE9puis\xE9e" +#, fuzzy +#~ msgid "Invalid regular expression" +#~ msgstr "%s: expression r\xE9guli\xE8re invalide: %s" -#: lib/regcomp.c:170 #, fuzzy -msgid "Invalid preceding regular expression" -msgstr "%s: expression r\xE9guli\xE8re invalide: %s" +#~ msgid "Invalid collation character" +#~ msgstr "caract\xE8re de classe invalide %s" -#: lib/regcomp.c:173 #, fuzzy -msgid "Premature end of regular expression" -msgstr "Erreur dans l'expression r\xE9guli\xE8re recherch\xE9e." +#~ msgid "Invalid character class name" +#~ msgstr "caract\xE8re de classe invalide %s" -#: lib/regcomp.c:176 #, fuzzy -msgid "Regular expression too big" -msgstr "erreur dans l'expression r\xE9guli\xE8re recherch\xE9e." +#~ msgid "Invalid back reference" +#~ msgstr "bornes de pages invalides %s" -#: lib/regcomp.c:179 -msgid "Unmatched ) or \\)" -msgstr "" +#, fuzzy +#~ msgid "Invalid range end" +#~ msgstr "bornes de pages invalides %s" -#: lib/regcomp.c:684 +#~ msgid "Memory exhausted" +#~ msgstr "M\xE9moire \xE9puis\xE9e" + #, fuzzy -msgid "No previous regular expression" -msgstr "Erreur dans l'expression r\xE9guli\xE8re recherch\xE9e." +#~ msgid "Invalid preceding regular expression" +#~ msgstr "%s: expression r\xE9guli\xE8re invalide: %s" -#: lib/root-dev-ino.h:40 -#, c-format -msgid "it is dangerous to operate recursively on %s" -msgstr "il est dangereux d'op\xE9rer r\xE9cursivement sur %s" +#, fuzzy +#~ msgid "Premature end of regular expression" +#~ msgstr "Erreur dans l'expression r\xE9guli\xE8re recherch\xE9e." -#: lib/root-dev-ino.h:44 -#, c-format -msgid "it is dangerous to operate recursively on %s (same as %s)" -msgstr "il est dangereux d'op\xE9rer r\xE9cursivement sur %s (identique \xE0 %s)" +#, fuzzy +#~ msgid "Regular expression too big" +#~ msgstr "erreur dans l'expression r\xE9guli\xE8re recherch\xE9e." -#: lib/root-dev-ino.h:46 -#, c-format -msgid "use --no-preserve-root to override this failsafe" -msgstr "utiliser --no-preserve-root pour \xE9craser cette mesure de s\xFBret\xE9" +#, fuzzy +#~ msgid "No previous regular expression" +#~ msgstr "Erreur dans l'expression r\xE9guli\xE8re recherch\xE9e." -#: lib/rpmatch.c:70 -msgid "^[yY]" -msgstr "^[yY]" +#~ msgid "it is dangerous to operate recursively on %s" +#~ msgstr "il est dangereux d'op\xE9rer r\xE9cursivement sur %s" -#: lib/rpmatch.c:73 -msgid "^[nN]" -msgstr "^[nN]" +#~ msgid "it is dangerous to operate recursively on %s (same as %s)" +#~ msgstr "il est dangereux d'op\xE9rer r\xE9cursivement sur %s (identique \xE0 %s)" -#: lib/unicodeio.c:151 -msgid "iconv function not usable" -msgstr "fonction iconv n'est pas utilisable" +#~ msgid "use --no-preserve-root to override this failsafe" +#~ msgstr "utiliser --no-preserve-root pour \xE9craser cette mesure de s\xFBret\xE9" -#: lib/unicodeio.c:153 -msgid "iconv function not available" -msgstr "fonction iconv n'est pas disponible" +#~ msgid "^[yY]" +#~ msgstr "^[yY]" -#: lib/unicodeio.c:160 -msgid "character out of range" -msgstr "caract\xE8re hors limites" +#~ msgid "^[nN]" +#~ msgstr "^[nN]" -#: lib/unicodeio.c:224 -#, c-format -msgid "cannot convert U+%04X to local character set" -msgstr "ne peut convertir U+%04X \xE0 un jeu local de caract\xE8res" +#~ msgid "iconv function not usable" +#~ msgstr "fonction iconv n'est pas utilisable" -#: lib/unicodeio.c:226 -#, c-format -msgid "cannot convert U+%04X to local character set: %s" -msgstr "ne peut convertir U+%04X au jeu local de caract\xE8res: %s" +#~ msgid "iconv function not available" +#~ msgstr "fonction iconv n'est pas disponible" -#: lib/userspec.c:108 -msgid "invalid user" -msgstr "usager invalide" +#~ msgid "character out of range" +#~ msgstr "caract\xE8re hors limites" -#: lib/userspec.c:109 -msgid "invalid group" -msgstr "groupe invalide" +#~ msgid "cannot convert U+%04X to local character set" +#~ msgstr "ne peut convertir U+%04X \xE0 un jeu local de caract\xE8res" -#: lib/userspec.c:110 -#, fuzzy -msgid "invalid spec" -msgstr "usager invalide" +#~ msgid "cannot convert U+%04X to local character set: %s" +#~ msgstr "ne peut convertir U+%04X au jeu local de caract\xE8res: %s" -#. TRANSLATORS: Translate "(C)" to the copyright symbol -#. (C-in-a-circle), if this symbol is available in the user's -#. locale. Otherwise, do not translate "(C)"; leave it as-is. -#: lib/version-etc.c:66 -msgid "(C)" -msgstr "\xA9" +#~ msgid "invalid user" +#~ msgstr "usager invalide" -#: lib/version-etc.c:68 -msgid "" -"\n" -"This is free software. You may redistribute copies of it under the terms " -"of\n" -"the GNU General Public License <http://www.gnu.org/licenses/gpl.html>.\n" -"There is NO WARRANTY, to the extent permitted by law.\n" -"\n" -msgstr "" -"\n" -"Ce programme est un logiciel libre. Vous pouvez en redistribuer des copies\n" -"selon les termes de la License Publique G\xE9n\xE9rale de GNU, \n" -"<http://www.gnu.org/licenses/gpl.html>.\n" -"AUCUNE GARANTIE n'est fournie tel que permis selon la loi.\n" -"\n" +#~ msgid "invalid group" +#~ msgstr "groupe invalide" -#. TRANSLATORS: %s denotes an author name. -#: lib/version-etc.c:84 -#, c-format -msgid "Written by %s.\n" -msgstr "\xC9crit par %s.\n" +#, fuzzy +#~ msgid "invalid spec" +#~ msgstr "usager invalide" -#. TRANSLATORS: Each %s denotes an author name. -#: lib/version-etc.c:88 -#, c-format -msgid "Written by %s and %s.\n" -msgstr "\xC9crit par %s et %s.\n" +#~ msgid "(C)" +#~ msgstr "\xA9" -#. TRANSLATORS: Each %s denotes an author name. -#: lib/version-etc.c:92 -#, c-format -msgid "Written by %s, %s, and %s.\n" -msgstr "\xC9crit par %s, %s et %s.\n" +#~ msgid "" +#~ "\n" +#~ "This is free software. You may redistribute copies of it under the terms " +#~ "of\n" +#~ "the GNU General Public License <http://www.gnu.org/licenses/gpl.html>.\n" +#~ "There is NO WARRANTY, to the extent permitted by law.\n" +#~ "\n" +#~ msgstr "" +#~ "\n" +#~ "Ce programme est un logiciel libre. Vous pouvez en redistribuer des " +#~ "copies\n" +#~ "selon les termes de la License Publique G\xE9n\xE9rale de GNU, \n" +#~ "<http://www.gnu.org/licenses/gpl.html>.\n" +#~ "AUCUNE GARANTIE n'est fournie tel que permis selon la loi.\n" +#~ "\n" -#. TRANSLATORS: Each %s denotes an author name. -#. You can use line breaks, estimating that each author name occupies -#. ca. 16 screen columns and that a screen line has ca. 80 columns. -#: lib/version-etc.c:98 -#, c-format -msgid "" -"Written by %s, %s, %s,\n" -"and %s.\n" -msgstr "" -"\xC9crit par %s, %s, %s,\n" -"et %s.\n" +#~ msgid "Written by %s.\n" +#~ msgstr "\xC9crit par %s.\n" -#. TRANSLATORS: Each %s denotes an author name. -#. You can use line breaks, estimating that each author name occupies -#. ca. 16 screen columns and that a screen line has ca. 80 columns. -#: lib/version-etc.c:104 -#, c-format -msgid "" -"Written by %s, %s, %s,\n" -"%s, and %s.\n" -msgstr "" -"\xC9crit par %s, %s, %s,\n" -"%s et %s.\n" +#~ msgid "Written by %s and %s.\n" +#~ msgstr "\xC9crit par %s et %s.\n" -#. TRANSLATORS: Each %s denotes an author name. -#. You can use line breaks, estimating that each author name occupies -#. ca. 16 screen columns and that a screen line has ca. 80 columns. -#: lib/version-etc.c:110 -#, c-format -msgid "" -"Written by %s, %s, %s,\n" -"%s, %s, and %s.\n" -msgstr "" -"\xC9crit par %s, %s, %s,\n" -"%s, %s, and %s.\n" +#~ msgid "Written by %s, %s, and %s.\n" +#~ msgstr "\xC9crit par %s, %s et %s.\n" -#. TRANSLATORS: Each %s denotes an author name. -#. You can use line breaks, estimating that each author name occupies -#. ca. 16 screen columns and that a screen line has ca. 80 columns. -#: lib/version-etc.c:117 -#, c-format -msgid "" -"Written by %s, %s, %s,\n" -"%s, %s, %s, and %s.\n" -msgstr "" -"\xC9crit par %s, %s, %s,\n" -"%s, %s, %s, and %s.\n" +#~ msgid "" +#~ "Written by %s, %s, %s,\n" +#~ "and %s.\n" +#~ msgstr "" +#~ "\xC9crit par %s, %s, %s,\n" +#~ "et %s.\n" -#. TRANSLATORS: Each %s denotes an author name. -#. You can use line breaks, estimating that each author name occupies -#. ca. 16 screen columns and that a screen line has ca. 80 columns. -#: lib/version-etc.c:124 -#, c-format -msgid "" -"Written by %s, %s, %s,\n" -"%s, %s, %s, %s,\n" -"and %s.\n" -msgstr "" -"\xC9crit par %s, %s, %s,\n" -"%s, %s, %s, %s,\n" -"et %s.\n" +#~ msgid "" +#~ "Written by %s, %s, %s,\n" +#~ "%s, and %s.\n" +#~ msgstr "" +#~ "\xC9crit par %s, %s, %s,\n" +#~ "%s et %s.\n" -#. TRANSLATORS: Each %s denotes an author name. -#. You can use line breaks, estimating that each author name occupies -#. ca. 16 screen columns and that a screen line has ca. 80 columns. -#: lib/version-etc.c:132 -#, c-format -msgid "" -"Written by %s, %s, %s,\n" -"%s, %s, %s, %s,\n" -"%s, and %s.\n" -msgstr "" -"\xC9crit par %s, %s, %s,\n" -"%s, %s, %s, %s,\n" -"%s et %s.\n" +#~ msgid "" +#~ "Written by %s, %s, %s,\n" +#~ "%s, %s, and %s.\n" +#~ msgstr "" +#~ "\xC9crit par %s, %s, %s,\n" +#~ "%s, %s, and %s.\n" -#. TRANSLATORS: Each %s denotes an author name. -#. You can use line breaks, estimating that each author name occupies -#. ca. 16 screen columns and that a screen line has ca. 80 columns. -#: lib/version-etc.c:142 -#, c-format -msgid "" -"Written by %s, %s, %s,\n" -"%s, %s, %s, %s,\n" -"%s, %s, and others.\n" -msgstr "" -"\xC9crit par %s, %s, %s,\n" -"%s, %s, %s, %s,\n" -"%s, %s et d'autres.\n" +#~ msgid "" +#~ "Written by %s, %s, %s,\n" +#~ "%s, %s, %s, and %s.\n" +#~ msgstr "" +#~ "\xC9crit par %s, %s, %s,\n" +#~ "%s, %s, %s, and %s.\n" -#: lib/xfts.c:58 -#, c-format -msgid "invalid argument: %s" -msgstr "argument invalide: %s" +#~ msgid "" +#~ "Written by %s, %s, %s,\n" +#~ "%s, %s, %s, %s,\n" +#~ "and %s.\n" +#~ msgstr "" +#~ "\xC9crit par %s, %s, %s,\n" +#~ "%s, %s, %s, %s,\n" +#~ "et %s.\n" -#: lib/xmemcoll.c:49 src/expr.c:772 -#, c-format -msgid "string comparison failed" -msgstr "\xE9chec de comparaison de cha\xEEne" +#~ msgid "" +#~ "Written by %s, %s, %s,\n" +#~ "%s, %s, %s, %s,\n" +#~ "%s, and %s.\n" +#~ msgstr "" +#~ "\xC9crit par %s, %s, %s,\n" +#~ "%s, %s, %s, %s,\n" +#~ "%s et %s.\n" -#: lib/xmemcoll.c:50 lib/xmemxfrm.c:56 src/expr.c:773 -#, c-format -msgid "Set LC_ALL='C' to work around the problem." -msgstr "D\xE9finir LC_ALL=\xAB C \xBB pour contourner le probl\xE8me." +#~ msgid "" +#~ "Written by %s, %s, %s,\n" +#~ "%s, %s, %s, %s,\n" +#~ "%s, %s, and others.\n" +#~ msgstr "" +#~ "\xC9crit par %s, %s, %s,\n" +#~ "%s, %s, %s, %s,\n" +#~ "%s, %s et d'autres.\n" -#: lib/xmemcoll.c:52 src/expr.c:775 -#, c-format -msgid "The strings compared were %s and %s." -msgstr "Les cha\xEEnes compar\xE9es \xE9taient %s et %s." +#~ msgid "invalid argument: %s" +#~ msgstr "argument invalide: %s" -#: lib/xmemxfrm.c:55 -#, fuzzy, c-format -msgid "string transformation failed" -msgstr "\xE9chec de comparaison de cha\xEEne" +#~ msgid "string comparison failed" +#~ msgstr "\xE9chec de comparaison de cha\xEEne" -#: lib/xmemxfrm.c:58 -#, c-format -msgid "The untransformed string was %s." -msgstr "" +#~ msgid "Set LC_ALL='C' to work around the problem." +#~ msgstr "D\xE9finir LC_ALL=\xAB C \xBB pour contourner le probl\xE8me." -#: lib/xstrtol.h:62 -#, fuzzy, c-format -msgid "invalid %s `%s'" -msgstr "usager invalide %s" +#~ msgid "The strings compared were %s and %s." +#~ msgstr "Les cha\xEEnes compar\xE9es \xE9taient %s et %s." -#: lib/xstrtol.h:69 -#, fuzzy, c-format -msgid "invalid character following %s in `%s'" -msgstr "caract\xE8re de classe invalide %s" +#, fuzzy +#~ msgid "string transformation failed" +#~ msgstr "\xE9chec de comparaison de cha\xEEne" -#: lib/xstrtol.h:74 -#, fuzzy, c-format -msgid "%s `%s' too large" -msgstr "%s est trop grand" +#, fuzzy +#~ msgid "invalid %s `%s'" +#~ msgstr "usager invalide %s" -#: src/base64.c:61 src/basename.c:50 src/cat.c:91 src/chgrp.c:108 -#: src/chmod.c:337 src/chown.c:89 src/chroot.c:42 src/cksum.c:261 -#: src/comm.c:69 src/cp.c:153 src/csplit.c:1451 src/cut.c:184 src/date.c:128 -#: src/dd.c:400 src/df.c:736 src/dircolors.c:98 src/dirname.c:44 src/du.c:275 -#: src/echo.c:60 src/env.c:114 src/expand.c:107 src/expr.c:98 src/factor.c:70 -#: src/fmt.c:269 src/fold.c:66 src/head.c:105 src/hostid.c:44 -#: src/hostname.c:61 src/id.c:74 src/install.c:648 src/join.c:130 -#: src/kill.c:86 src/link.c:46 src/ln.c:320 src/logname.c:40 src/ls.c:4218 -#: src/md5sum.c:146 src/mkdir.c:55 src/mkfifo.c:50 src/mknod.c:51 src/mv.c:280 -#: src/nice.c:72 src/nl.c:173 src/nohup.c:53 src/od.c:303 src/paste.c:413 -#: src/pathchk.c:95 src/pinky.c:506 src/pr.c:2764 src/printenv.c:57 -#: src/printf.c:89 src/ptx.c:1879 src/pwd.c:50 src/readlink.c:63 src/rm.c:156 -#: src/rmdir.c:136 src/seq.c:70 src/setuidgid.c:47 src/shred.c:161 -#: src/shuf.c:47 src/sleep.c:43 src/sort.c:281 src/split.c:102 src/stat.c:827 -#: src/stty.c:507 src/su.c:381 src/sum.c:55 src/sync.c:41 src/tac.c:129 -#: src/tail.c:212 src/tee.c:58 src/test.c:690 src/touch.c:229 src/tr.c:286 -#: src/tsort.c:82 src/tty.c:65 src/uname.c:113 src/unexpand.c:117 -#: src/uniq.c:131 src/unlink.c:46 src/uptime.c:193 src/users.c:104 -#: src/wc.c:104 src/who.c:629 src/whoami.c:46 src/yes.c:42 -#, c-format -msgid "Try `%s --help' for more information.\n" -msgstr "Pour en savoir davantage, faites: \xAB %s --help \xBB.\n" +#, fuzzy +#~ msgid "invalid character following %s in `%s'" +#~ msgstr "caract\xE8re de classe invalide %s" -#: src/base64.c:65 -#, fuzzy, c-format -msgid "" -"Usage: %s [OPTION] [FILE]\n" -"Base64 encode or decode FILE, or standard input, to standard output.\n" -"\n" -msgstr "" -"Usage: %s [OPTION] [FICHIER]...\n" -"Afficher ou v\xE9rifier les sommes de contr\xF4le %s (%d-bits).\n" -"Sans FICHIER, ou quand FICHIER est -, lire de l'entr\xE9e standard.\n" +#, fuzzy +#~ msgid "%s `%s' too large" +#~ msgstr "%s est trop grand" -#: src/base64.c:69 -msgid "" -" -w, --wrap=COLS Wrap encoded lines after COLS character (default " -"76).\n" -" Use 0 to disable line wrapping.\n" -"\n" -" -d, --decode Decode data.\n" -" -i, --ignore-garbage When decoding, ignore non-alphabet characters.\n" -"\n" -msgstr "" +#~ msgid "Try `%s --help' for more information.\n" +#~ msgstr "Pour en savoir davantage, faites: \xAB %s --help \xBB.\n" -#: src/base64.c:77 #, fuzzy -msgid "" -" --help Display this help and exit.\n" -" --version Output version information and exit.\n" -msgstr "" -"Afficher la somme de contr\xF4le CRC et le d\xE9compte d'octets de chaque " -"FICHIER.\n" -"\n" -" --help afficher l'aide-m\xE9moire\n" -" --version afficher le nom et la version du logiciel\n" +#~ msgid "" +#~ "Usage: %s [OPTION] [FILE]\n" +#~ "Base64 encode or decode FILE, or standard input, to standard output.\n" +#~ "\n" +#~ msgstr "" +#~ "Usage: %s [OPTION] [FICHIER]...\n" +#~ "Afficher ou v\xE9rifier les sommes de contr\xF4le %s (%d-bits).\n" +#~ "Sans FICHIER, ou quand FICHIER est -, lire de l'entr\xE9e standard.\n" -#: src/base64.c:80 src/cat.c:117 src/fmt.c:296 src/shuf.c:74 src/sum.c:71 -msgid "" -"\n" -"With no FILE, or when FILE is -, read standard input.\n" -msgstr "" -"\n" -"Sans FICHIER, ou quand le FICHIER est -, lire de l'entr\xE9e standard.\n" +#, fuzzy +#~ msgid "" +#~ " --help Display this help and exit.\n" +#~ " --version Output version information and exit.\n" +#~ msgstr "" +#~ "Afficher la somme de contr\xF4le CRC et le d\xE9compte d'octets de chaque " +#~ "FICHIER.\n" +#~ "\n" +#~ " --help afficher l'aide-m\xE9moire\n" +#~ " --version afficher le nom et la version du logiciel\n" -#: src/base64.c:83 -msgid "" -"\n" -"The data are encoded as described for the base64 alphabet in RFC 3548.\n" -"Decoding require compliant input by default, use --ignore-garbage to\n" -"attempt to recover from non-alphabet characters (such as newlines) in\n" -"the encoded stream.\n" -msgstr "" +#~ msgid "" +#~ "\n" +#~ "With no FILE, or when FILE is -, read standard input.\n" +#~ msgstr "" +#~ "\n" +#~ "Sans FICHIER, ou quand le FICHIER est -, lire de l'entr\xE9e standard.\n" -#: src/base64.c:89 src/basename.c:73 src/cat.c:128 src/chgrp.c:163 -#: src/chmod.c:368 src/chown.c:158 src/chroot.c:60 src/cksum.c:276 -#: src/comm.c:94 src/cp.c:252 src/csplit.c:1493 src/cut.c:237 src/date.c:243 -#: src/dd.c:510 src/df.c:775 src/dircolors.c:119 src/dirname.c:67 src/du.c:347 -#: src/echo.c:98 src/env.c:133 src/expand.c:132 src/expr.c:166 src/factor.c:90 -#: src/fmt.c:300 src/fold.c:89 src/head.c:140 src/hostid.c:57 -#: src/hostname.c:74 src/id.c:95 src/install.c:706 src/join.c:172 -#: src/kill.c:117 src/link.c:58 src/ln.c:378 src/logname.c:51 src/ls.c:4373 -#: src/md5sum.c:194 src/mkdir.c:74 src/mkfifo.c:67 src/mknod.c:82 src/mv.c:331 -#: src/nice.c:88 src/nl.c:229 src/nohup.c:70 src/od.c:395 src/paste.c:437 -#: src/pathchk.c:109 src/pinky.c:533 src/pr.c:2876 src/printenv.c:71 -#: src/printf.c:138 src/ptx.c:1925 src/pwd.c:62 src/readlink.c:89 src/rm.c:207 -#: src/rmdir.c:155 src/seq.c:101 src/setuidgid.c:67 src/shred.c:239 -#: src/shuf.c:78 src/sleep.c:60 src/sort.c:357 src/split.c:136 src/stat.c:906 -#: src/stty.c:724 src/su.c:402 src/sum.c:75 src/sync.c:52 src/tac.c:152 -#: src/tail.c:283 src/tee.c:75 src/test.c:777 src/touch.c:263 src/tr.c:359 -#: src/true.c:54 src/tsort.c:94 src/tty.c:77 src/uname.c:136 -#: src/unexpand.c:141 src/uniq.c:170 src/unlink.c:57 src/uptime.c:208 -#: src/users.c:117 src/wc.c:129 src/who.c:668 src/whoami.c:58 src/yes.c:58 -#, c-format -msgid "" -"\n" -"Report bugs to <%s>.\n" -msgstr "" -"\n" -"Rapporter toutes anomalies \xE0 <%s>.\n" +#~ msgid "" +#~ "\n" +#~ "Report bugs to <%s>.\n" +#~ msgstr "" +#~ "\n" +#~ "Rapporter toutes anomalies \xE0 <%s>.\n" -#: src/base64.c:177 src/base64.c:210 src/csplit.c:282 src/csplit.c:1440 -#: src/join.c:243 src/shuf.c:402 src/tac-pipe.c:75 src/tee.c:204 src/tr.c:1585 -#, c-format -msgid "read error" -msgstr "Erreur de lecture." +#~ msgid "read error" +#~ msgstr "Erreur de lecture." -#: src/base64.c:221 -#, fuzzy, c-format -msgid "invalid input" -msgstr "fanion d'entr\xE9e invalide: %s" +#, fuzzy +#~ msgid "invalid input" +#~ msgstr "fanion d'entr\xE9e invalide: %s" -#: src/base64.c:257 -#, fuzzy, c-format -msgid "invalid wrap size: %s" -msgstr "taille de tabulation invalide: %s" +#, fuzzy +#~ msgid "invalid wrap size: %s" +#~ msgstr "taille de tabulation invalide: %s" -#: src/base64.c:276 src/basename.c:123 src/comm.c:278 src/cp.c:572 -#: src/date.c:430 src/dircolors.c:452 src/dirname.c:100 src/du.c:947 -#: src/hostid.c:82 src/hostname.c:120 src/id.c:160 src/install.c:352 -#: src/join.c:741 src/link.c:90 src/ln.c:493 src/logname.c:76 src/mknod.c:152 -#: src/mv.c:444 src/od.c:1842 src/ptx.c:2154 src/readlink.c:156 src/seq.c:333 -#: src/shuf.c:382 src/split.c:532 src/tr.c:1738 src/tsort.c:552 src/tty.c:117 -#: src/uname.c:222 src/uniq.c:435 src/uniq.c:452 src/unlink.c:86 -#: src/uptime.c:240 src/users.c:149 src/wc.c:643 src/who.c:822 src/whoami.c:84 -#, c-format -msgid "extra operand %s" -msgstr "op\xE9rande surnum\xE9raire %s" +#~ msgid "extra operand %s" +#~ msgstr "op\xE9rande surnum\xE9raire %s" -#: src/base64.c:302 src/cat.c:785 -#, c-format -msgid "closing standard input" -msgstr "fermeture de l'entr\xE9e standard" +#~ msgid "closing standard input" +#~ msgstr "fermeture de l'entr\xE9e standard" -#: src/basename.c:54 -#, c-format -msgid "" -"Usage: %s NAME [SUFFIX]\n" -" or: %s OPTION\n" -msgstr "" -"Usage: %s NOM [SUFFIXE]...\n" -" ou: %s [OPTION]\n" +#~ msgid "" +#~ "Usage: %s NAME [SUFFIX]\n" +#~ " or: %s OPTION\n" +#~ msgstr "" +#~ "Usage: %s NOM [SUFFIXE]...\n" +#~ " ou: %s [OPTION]\n" -#: src/basename.c:59 -msgid "" -"Print NAME with any leading directory components removed.\n" -"If specified, also remove a trailing SUFFIX.\n" -"\n" -msgstr "" -"Afficher le NOM sans \xEAtre pr\xE9c\xE9d\xE9 des composants des noms de r\xE9pertoires\n" -"Si sp\xE9cifi\xE9 enlever aussi le SUFFIXE.\n" -"\n" +#~ msgid "" +#~ "Print NAME with any leading directory components removed.\n" +#~ "If specified, also remove a trailing SUFFIX.\n" +#~ "\n" +#~ msgstr "" +#~ "Afficher le NOM sans \xEAtre pr\xE9c\xE9d\xE9 des composants des noms de r\xE9pertoires\n" +#~ "Si sp\xE9cifi\xE9 enlever aussi le SUFFIXE.\n" +#~ "\n" -#: src/basename.c:66 -#, c-format -msgid "" -"\n" -"Examples:\n" -" %s /usr/bin/sort Output \"sort\".\n" -" %s include/stdio.h .h Output \"stdio\".\n" -msgstr "" -"\n" -"Exemples:\n" -" %s /usr/bin/sort sortie \"sort\".\n" -" %s include/stdio.h .h sortie \"stdio\".\n" +#~ msgid "" +#~ "\n" +#~ "Examples:\n" +#~ " %s /usr/bin/sort Output \"sort\".\n" +#~ " %s include/stdio.h .h Output \"stdio\".\n" +#~ msgstr "" +#~ "\n" +#~ "Exemples:\n" +#~ " %s /usr/bin/sort sortie \"sort\".\n" +#~ " %s include/stdio.h .h sortie \"stdio\".\n" -#: src/basename.c:117 src/chgrp.c:281 src/chmod.c:488 src/chown.c:294 -#: src/chroot.c:84 src/comm.c:270 src/csplit.c:1388 src/dirname.c:94 -#: src/expr.c:211 src/join.c:907 src/link.c:82 src/mkdir.c:179 -#: src/mkfifo.c:104 src/mknod.c:141 src/nohup.c:101 src/pathchk.c:158 -#: src/printf.c:665 src/readlink.c:148 src/rm.c:344 src/rmdir.c:198 -#: src/seq.c:327 src/setuidgid.c:95 src/sleep.c:122 src/stat.c:969 -#: src/tr.c:1723 src/unlink.c:80 -#, c-format -msgid "missing operand" -msgstr "op\xE9rande manquante" +#~ msgid "missing operand" +#~ msgstr "op\xE9rande manquante" -#: src/cat.c:95 -#, c-format -msgid "Usage: %s [OPTION] [FILE]...\n" -msgstr "Usage: %s [OPTION] [FICHIER]...\n" +#~ msgid "Usage: %s [OPTION] [FILE]...\n" +#~ msgstr "Usage: %s [OPTION] [FICHIER]...\n" -#: src/cat.c:99 -msgid "" -"Concatenate FILE(s), or standard input, to standard output.\n" -"\n" -" -A, --show-all equivalent to -vET\n" -" -b, --number-nonblank number nonblank output lines\n" -" -e equivalent to -vE\n" -" -E, --show-ends display $ at end of each line\n" -" -n, --number number all output lines\n" -" -s, --squeeze-blank never more than one single blank line\n" -msgstr "" -"Concat\xE9ner le(s) FICHIER(s), ou de l'ENTR\xC9E standard, vers la sortie " -"standard.\n" -"\n" -" -A, --show-all \xE9quivalent \xE0 -vET\n" -" -b, --number-nonblank num\xE9roter que les lignes non vides\n" -" -e \xE9quivalent \xE0 -vE\n" -" -E, --show-ends afficher $ \xE0 la fin de chaque ligne\n" -" -n, --number num\xE9roter toutes les lignes\n" -" -s, --squeeze-blank afficher jamais plus qu'une seule ligne vide\n" +#~ msgid "" +#~ "Concatenate FILE(s), or standard input, to standard output.\n" +#~ "\n" +#~ " -A, --show-all equivalent to -vET\n" +#~ " -b, --number-nonblank number nonblank output lines\n" +#~ " -e equivalent to -vE\n" +#~ " -E, --show-ends display $ at end of each line\n" +#~ " -n, --number number all output lines\n" +#~ " -s, --squeeze-blank never more than one single blank line\n" +#~ msgstr "" +#~ "Concat\xE9ner le(s) FICHIER(s), ou de l'ENTR\xC9E standard, vers la sortie " +#~ "standard.\n" +#~ "\n" +#~ " -A, --show-all \xE9quivalent \xE0 -vET\n" +#~ " -b, --number-nonblank num\xE9roter que les lignes non vides\n" +#~ " -e \xE9quivalent \xE0 -vE\n" +#~ " -E, --show-ends afficher $ \xE0 la fin de chaque ligne\n" +#~ " -n, --number num\xE9roter toutes les lignes\n" +#~ " -s, --squeeze-blank afficher jamais plus qu'une seule ligne vide\n" -#: src/cat.c:109 -msgid "" -" -t equivalent to -vT\n" -" -T, --show-tabs display TAB characters as ^I\n" -" -u (ignored)\n" -" -v, --show-nonprinting use ^ and M- notation, except for LFD and TAB\n" -msgstr "" -" -t \xE9quivalent \xE0 -vT\n" -" -T, --show-tabs afficher les caract\xE8res TAB comme ^I\n" -" -u (ignor\xE9)\n" -" -v, --show-nonprinting utiliser la notation ^ et M- ,\n" -" except\xE9 pour LFD et TAB\n" +#~ msgid "" +#~ " -t equivalent to -vT\n" +#~ " -T, --show-tabs display TAB characters as ^I\n" +#~ " -u (ignored)\n" +#~ " -v, --show-nonprinting use ^ and M- notation, except for LFD and TAB\n" +#~ msgstr "" +#~ " -t \xE9quivalent \xE0 -vT\n" +#~ " -T, --show-tabs afficher les caract\xE8res TAB comme ^I\n" +#~ " -u (ignor\xE9)\n" +#~ " -v, --show-nonprinting utiliser la notation ^ et M- ,\n" +#~ " except\xE9 pour LFD et TAB\n" -#: src/cat.c:121 -#, c-format -msgid "" -"\n" -"Examples:\n" -" %s f - g Output f's contents, then standard input, then g's contents.\n" -" %s Copy standard input to standard output.\n" -msgstr "" -"\n" -"Exemples:\n" -" %s f - g sortie du contenu de f, ensuite sur l'entr\xE9e standard, ensuite " -"le contenu de g.\n" -" %s copier l'entr\xE9e standard var la sortie standard.\n" +#~ msgid "" +#~ "\n" +#~ "Examples:\n" +#~ " %s f - g Output f's contents, then standard input, then g's contents.\n" +#~ " %s Copy standard input to standard output.\n" +#~ msgstr "" +#~ "\n" +#~ "Exemples:\n" +#~ " %s f - g sortie du contenu de f, ensuite sur l'entr\xE9e standard, " +#~ "ensuite le contenu de g.\n" +#~ " %s copier l'entr\xE9e standard var la sortie standard.\n" -#: src/cat.c:333 -#, c-format -msgid "cannot do ioctl on %s" -msgstr "ne peut ex\xE9cuter ioctl sur %s" +#~ msgid "cannot do ioctl on %s" +#~ msgstr "ne peut ex\xE9cuter ioctl sur %s" -#: src/cat.c:643 src/dd.c:1676 src/sort.c:273 src/tee.c:163 src/yes.c:92 -#, c-format -msgid "standard output" -msgstr "sortie standard" +#~ msgid "standard output" +#~ msgstr "sortie standard" -#: src/cat.c:720 -#, c-format -msgid "%s: input file is output file" -msgstr "%s: le fichier \xE0 l'entr\xE9e est le m\xEAme qu'\xE0 la sortie." +#~ msgid "%s: input file is output file" +#~ msgstr "%s: le fichier \xE0 l'entr\xE9e est le m\xEAme qu'\xE0 la sortie." -#: src/chgrp.c:95 src/install.c:612 -#, c-format -msgid "invalid group %s" -msgstr "groupe invalide %s" +#~ msgid "invalid group %s" +#~ msgstr "groupe invalide %s" -#: src/chgrp.c:112 -#, c-format -msgid "" -"Usage: %s [OPTION]... GROUP FILE...\n" -" or: %s [OPTION]... --reference=RFILE FILE...\n" -msgstr "" -"Usage: %s [OPTION]... GROUPE FICHIER...\n" -" ou: %s [OPTION]... --reference=FICHIER-R FICHIER...\n" +#~ msgid "" +#~ "Usage: %s [OPTION]... GROUP FILE...\n" +#~ " or: %s [OPTION]... --reference=RFILE FILE...\n" +#~ msgstr "" +#~ "Usage: %s [OPTION]... GROUPE FICHIER...\n" +#~ " ou: %s [OPTION]... --reference=FICHIER-R FICHIER...\n" -#: src/chgrp.c:117 #, fuzzy -msgid "" -"Change the group of each FILE to GROUP.\n" -"With --reference, change the group of each FILE to that of RFILE.\n" -"\n" -" -c, --changes like verbose but report only when a change is made\n" -" --dereference affect the referent of each symbolic link (this is\n" -" the default), rather than the symbolic link itself\n" -msgstr "" -"Changer le groupe d'appartenance de chaque FICHIER au GROUPE.\n" -"Avec l'option --reference, modifier le groupe de chaque fichier pour celui " -"de FICHIER-R.\n" -"\n" -" -c, --changes utiliser le mode bavard mais rapporter " -"seulement\n" -" les modifications lorsqu'elles surviennent\n" -" --dereference affecter le r\xE9f\xE9rent de chaque lien symbolique,\n" -" plut\xF4t que le lien symbolique lui-m\xEAme\n" +#~ msgid "" +#~ "Change the group of each FILE to GROUP.\n" +#~ "With --reference, change the group of each FILE to that of RFILE.\n" +#~ "\n" +#~ " -c, --changes like verbose but report only when a change is " +#~ "made\n" +#~ " --dereference affect the referent of each symbolic link (this " +#~ "is\n" +#~ " the default), rather than the symbolic link " +#~ "itself\n" +#~ msgstr "" +#~ "Changer le groupe d'appartenance de chaque FICHIER au GROUPE.\n" +#~ "Avec l'option --reference, modifier le groupe de chaque fichier pour " +#~ "celui de FICHIER-R.\n" +#~ "\n" +#~ " -c, --changes utiliser le mode bavard mais rapporter " +#~ "seulement\n" +#~ " les modifications lorsqu'elles surviennent\n" +#~ " --dereference affecter le r\xE9f\xE9rent de chaque lien " +#~ "symbolique,\n" +#~ " plut\xF4t que le lien symbolique lui-m\xEAme\n" -#: src/chgrp.c:125 src/chown.c:106 -msgid "" -" -h, --no-dereference affect each symbolic link instead of any " -"referenced\n" -" file (useful only on systems that can change the\n" -" ownership of a symlink)\n" -msgstr "" -" -h, --no-dereference modifier les liens symboliques au lieu des\n" -" fichiers r\xE9f\xE9renc\xE9s (utile seulement\n" -" sur les syst\xE8mes permettant de changer le " -"propri\xE9taire\n" -" d'un lien symbolique)\n" +#~ msgid "" +#~ " -h, --no-dereference affect each symbolic link instead of any " +#~ "referenced\n" +#~ " file (useful only on systems that can change " +#~ "the\n" +#~ " ownership of a symlink)\n" +#~ msgstr "" +#~ " -h, --no-dereference modifier les liens symboliques au lieu des\n" +#~ " fichiers r\xE9f\xE9renc\xE9s (utile seulement\n" +#~ " sur les syst\xE8mes permettant de changer le " +#~ "propri\xE9taire\n" +#~ " d'un lien symbolique)\n" -#: src/chgrp.c:130 src/chown.c:118 #, fuzzy -msgid "" -" --no-preserve-root do not treat `/' specially (the default)\n" -" --preserve-root fail to operate recursively on `/'\n" -msgstr "" -" --no-preserve-root ne pas traiter `/' de mani\xE8re sp\xE9ciale (par " -"d\xE9faut)\n" -" --preserve-root bloquer le traitement r\xE9cursif sur `/'\n" +#~ msgid "" +#~ " --no-preserve-root do not treat `/' specially (the default)\n" +#~ " --preserve-root fail to operate recursively on `/'\n" +#~ msgstr "" +#~ " --no-preserve-root ne pas traiter `/' de mani\xE8re sp\xE9ciale (par " +#~ "d\xE9faut)\n" +#~ " --preserve-root bloquer le traitement r\xE9cursif sur `/'\n" -#: src/chgrp.c:134 #, fuzzy -msgid "" -" -f, --silent, --quiet suppress most error messages\n" -" --reference=RFILE use RFILE's group rather than specifying a\n" -" GROUP value\n" -" -R, --recursive operate on files and directories recursively\n" -" -v, --verbose output a diagnostic for every file processed\n" -"\n" -msgstr "" -" -f, --silent, --quiet supprimer la plupart des messages d'erreur\n" -" --reference=FICHIER utiliser le groupe de r\xE9f\xE9rence du FICHIER\n" -" au lieu d'une valeur de groupe\n" -" -R, --recursive modifier r\xE9cursivement fichiers et r\xE9pertoires\n" -" -v, --verbose produire un diagnostic pour chaque fichier " -"trait\xE9\n" +#~ msgid "" +#~ " -f, --silent, --quiet suppress most error messages\n" +#~ " --reference=RFILE use RFILE's group rather than specifying a\n" +#~ " GROUP value\n" +#~ " -R, --recursive operate on files and directories recursively\n" +#~ " -v, --verbose output a diagnostic for every file processed\n" +#~ "\n" +#~ msgstr "" +#~ " -f, --silent, --quiet supprimer la plupart des messages d'erreur\n" +#~ " --reference=FICHIER utiliser le groupe de r\xE9f\xE9rence du FICHIER\n" +#~ " au lieu d'une valeur de groupe\n" +#~ " -R, --recursive modifier r\xE9cursivement fichiers et " +#~ "r\xE9pertoires\n" +#~ " -v, --verbose produire un diagnostic pour chaque fichier " +#~ "trait\xE9\n" -#: src/chgrp.c:142 src/chown.c:130 -msgid "" -"The following options modify how a hierarchy is traversed when the -R\n" -"option is also specified. If more than one is specified, only the final\n" -"one takes effect.\n" -"\n" -" -H if a command line argument is a symbolic link\n" -" to a directory, traverse it\n" -" -L traverse every symbolic link to a directory\n" -" encountered\n" -" -P do not traverse any symbolic links (default)\n" -"\n" -msgstr "" -"Les options suivantes modifient comment la hi\xE9rarchie est travers\xE9e lors " -"que\n" -"l'option -R est aussi sp\xE9cifi\xE9. Si plus d'une option est sp\xE9cifi\xE9e, seule " -"la derni\xE8re\n" -"prend effet.\n" -"\n" -" -H si l'argument de la ligne de commande est un lien " -"symbolique\n" -" vers un r\xE9pertoire alors le parcourir\n" -" -L parcourir chaque lien symbolique menant \xE0 un " -"r\xE9pertoire\n" -" rencontr\xE9\n" -" -P ne pas parcourir aucun lien symbolique (par " -"d\xE9faut)\n" -"\n" +#~ msgid "" +#~ "The following options modify how a hierarchy is traversed when the -R\n" +#~ "option is also specified. If more than one is specified, only the final\n" +#~ "one takes effect.\n" +#~ "\n" +#~ " -H if a command line argument is a symbolic link\n" +#~ " to a directory, traverse it\n" +#~ " -L traverse every symbolic link ... [truncated message content] |
From: <den...@us...> - 2009-03-05 02:36:59
|
Revision: 168 http://rmol.svn.sourceforge.net/rmol/?rev=168&view=rev Author: denis_arnaud Date: 2009-03-05 02:36:56 +0000 (Thu, 05 Mar 2009) Log Message: ----------- [Build-RPM] Updated the RPM specification file, so as to allow building on some configurations. Modified Paths: -------------- trunk/rmol/rmol.spec.in Modified: trunk/rmol/rmol.spec.in =================================================================== --- trunk/rmol/rmol.spec.in 2009-03-05 00:54:32 UTC (rev 167) +++ trunk/rmol/rmol.spec.in 2009-03-05 02:36:56 UTC (rev 168) @@ -50,14 +50,14 @@ %build -%configure --enable-static --with-docdir=%{_docdir}/%{name}-%{version}-html-doc +%configure --enable-static --with-docdir=%{_docdir}/%{name}-%{version} make %{?_smp_mflags} %install rm -rf $RPM_BUILD_ROOT make install DESTDIR=$RPM_BUILD_ROOT -#%find_lang %{name} +%find_lang %{name} # remove unpackaged files from the buildroot rm -f $RPM_BUILD_ROOT%{_infodir}/dir @@ -76,8 +76,7 @@ /sbin/install-info --delete %{_infodir}/%{name}-ref.info.gz %{_infodir}/dir fi -%files -#-f %{name}.lang +%files -f %{name}.lang %defattr(-,root,root,-) %doc AUTHORS ChangeLog COPYING INSTALL NEWS README %{_bindir}/* @@ -99,7 +98,7 @@ %{_datadir}/man/man1/%{name}-config.1.gz %files html-doc -%doc %{_docdir}/%{name}-%{version}-html-doc +%doc %{_docdir}/%{name}-%{version} %changelog * Wed Mar 4 2009 Denis Arnaud <den...@m4...> %{version}.dev.1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2009-03-05 00:54:46
|
Revision: 167 http://rmol.svn.sourceforge.net/rmol/?rev=167&view=rev Author: denis_arnaud Date: 2009-03-05 00:54:32 +0000 (Thu, 05 Mar 2009) Log Message: ----------- New current version (0.18.0) after release. Modified Paths: -------------- trunk/rmol/configure.ac Modified: trunk/rmol/configure.ac =================================================================== --- trunk/rmol/configure.ac 2009-03-05 00:50:26 UTC (rev 166) +++ trunk/rmol/configure.ac 2009-03-05 00:54:32 UTC (rev 167) @@ -2,7 +2,7 @@ #------------------------------------------------------------------- AC_PREREQ(2.59) AC_COPYRIGHT([Copyright (C) 2007-2009 Denis Arnaud <den...@us...>]) -AC_INIT([RMOL],[0.17.0],[den...@us...],[rmol]) +AC_INIT([RMOL],[0.18.0],[den...@us...],[rmol]) AC_CONFIG_HEADER([rmol/config.h]) AC_CONFIG_SRCDIR([rmol/basic/BasConst.cpp]) AC_CONFIG_AUX_DIR([config]) @@ -13,7 +13,7 @@ AC_SUBST(RPM_RELEASE) # Shared library versioning -GENERIC_LIBRARY_VERSION="0:17:0" +GENERIC_LIBRARY_VERSION="0:18:0" # | | | # +------+ | +---+ # | | | This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2009-03-05 00:50:38
|
Revision: 166 http://rmol.svn.sourceforge.net/rmol/?rev=166&view=rev Author: denis_arnaud Date: 2009-03-05 00:50:26 +0000 (Thu, 05 Mar 2009) Log Message: ----------- [Release 0.17.0] Fixed a few warnings, and re-wrote the RPM specification file, so that it can be delivered (at least) on Fedora Linux distributions. Modified Paths: -------------- trunk/rmol/configure.ac trunk/rmol/po/fr.po trunk/rmol/rmol/bom/DPOptimiser.cpp trunk/rmol/rmol/bom/Demand.cpp trunk/rmol/rmol/bom/Emsr.cpp trunk/rmol/rmol.spec.in Property Changed: ---------------- trunk/rmol/ Property changes on: trunk/rmol ___________________________________________________________________ Modified: svn:ignore - autom4te.cache INSTALL Makefile Makefile.in aclocal.m4 config.log config.status configure libtool rmol-config rmol-html-doc-0.12.0.tar.bz2 rmol-html-doc-0.12.0.tar.gz rmol.pc rmol.m4 rmol.spec config.guess config.h config.h.in config.sub configure.log rmol-0.12.0.tar.bz2 rmol-0.12.0.tar.gz stamp-h1 + autom4te.cache INSTALL Makefile Makefile.in aclocal.m4 config.log config.status configure libtool rmol-config rmol-html-doc-0.*.0.tar.bz2 rmol-html-doc-0.*.0.tar.gz rmol.pc rmol.m4 rmol.spec config.guess config.h config.h.in config.sub configure.log rmol-0.*.0.tar.bz2 rmol-0.*.0.tar.gz stamp-h1 Modified: trunk/rmol/configure.ac =================================================================== --- trunk/rmol/configure.ac 2009-02-15 11:33:58 UTC (rev 165) +++ trunk/rmol/configure.ac 2009-03-05 00:50:26 UTC (rev 166) @@ -1,7 +1,7 @@ # Process this file with autoconf to produce a configure script #------------------------------------------------------------------- AC_PREREQ(2.59) -AC_COPYRIGHT([Copyright (C) 2007-2008 Denis Arnaud <den...@us...>]) +AC_COPYRIGHT([Copyright (C) 2007-2009 Denis Arnaud <den...@us...>]) AC_INIT([RMOL],[0.17.0],[den...@us...],[rmol]) AC_CONFIG_HEADER([rmol/config.h]) AC_CONFIG_SRCDIR([rmol/basic/BasConst.cpp]) Modified: trunk/rmol/po/fr.po =================================================================== --- trunk/rmol/po/fr.po 2009-02-15 11:33:58 UTC (rev 165) +++ trunk/rmol/po/fr.po 2009-03-05 00:50:26 UTC (rev 166) @@ -1261,8 +1261,8 @@ "\n" "Le propri\xE9taire n'est pas modifi\xE9 si manquant. Le groupe n'est pas modifi\xE9 " "si manquant,\n" -"mais modifi\xE9 au groupe de login implicite si \xAB : \xBB en suivant le " -"PROPRI\xC9TAIRE symbolique.\n" +"mais modifi\xE9 au groupe de login implicite si \xAB : \xBB en suivant le PROPRI\xC9TAIRE " +"symbolique.\n" "Le PROPRI\xC9TAIRE et le GROUPE peuvent \xEAtre num\xE9rique ou symbolique.\n" #: src/chown.c:150 @@ -2038,8 +2038,8 @@ "\n" msgstr "" "Produire des morceaux du FICHIER s\xE9par\xE9s par MOD\xC8LE(s) vers les fichiers\n" -"\xAB xx01 \xBB, \xAB xx02 \xBB, ... et le nombre d'octets de chaque morceau sur la " -"sortie standard.\n" +"\xAB xx01 \xBB, \xAB xx02 \xBB, ... et le nombre d'octets de chaque morceau sur la sortie " +"standard.\n" "\n" #: src/csplit.c:1467 @@ -4930,8 +4930,8 @@ "s'applique aux\n" " fichiers non r\xE9cents et FORMAT2 aux fichiers " "r\xE9cents;\n" -" si le STYLE est pr\xE9fix\xE9 par \xAB posix- \xBB, " -"STYLE prend effet\n" +" si le STYLE est pr\xE9fix\xE9 par \xAB posix- \xBB, STYLE " +"prend effet\n" " seulement en dehors de la locale POSIX\n" " -t trier selon la date de modification:\n" " -T, --tabsize=TAILLE utiliser la tabulation selon la TAILLE\n" @@ -6556,8 +6556,7 @@ " -C, --copyright afficher les Droits d'auteur et les " "conditions\n" " de recopie\n" -" -G, --traditional faire fonctionner \xAB ptx \xBB comme en System " -"V\n" +" -G, --traditional faire fonctionner \xAB ptx \xBB comme en System V\n" " -F, --flag-truncation=CHA\xCENE utiliser la CHA\xCENE pour indiquer la " "troncation\n" " des lignes\n" @@ -7471,8 +7470,7 @@ " ou: %s OPTION\n" "Effectuer une pause de NOMBRE de secondes. Le SUFFIXE peut \xEAtre \xAB s \xBB pour " "des\n" -"secondes (par d\xE9faut), \xAB m \xBB pour des minutes, \xAB h \xBB pour des heures ou \xAB d " -"\xBB\n" +"secondes (par d\xE9faut), \xAB m \xBB pour des minutes, \xAB h \xBB pour des heures ou \xAB d \xBB\n" "pour des jours. Contrairement \xE0 la plupart des implantations qui requierent " "un\n" "nombre entier, ici le NOMBRE peut \xEAtre un nombre arbitraire en virgule " @@ -8812,8 +8810,7 @@ "\n" msgstr "" "\n" -"Si le premier caract\xE8re de N (le nombre d'octets ou de lignes) est un \xAB + " -"\xBB,\n" +"Si le premier caract\xE8re de N (le nombre d'octets ou de lignes) est un \xAB + \xBB,\n" "afficher \xE0 partir du Ni\xE8me items depuis le d\xE9but de chaque fichier,\n" "autrement, afficher les derniers N items du fichier.\n" "N peut avoir un suffixe multiplicateur:\n" @@ -10119,8 +10116,7 @@ #~ "warning: unportable BRE: %s: using `^' as the first character\n" #~ "of the basic regular expression is not portable; it is being ignored" #~ msgstr "" -#~ "AVERTISSEMENT: BRE non portable: %s: l'utilisation de \xAB ^ \xBB comme " -#~ "premier\n" +#~ "AVERTISSEMENT: BRE non portable: %s: l'utilisation de \xAB ^ \xBB comme premier\n" #~ "caract\xE8re d'une expression r\xE9guli\xE8re de base n'est pas portable; cela a " #~ "\xE9t\xE9 ignor\xE9." @@ -10689,8 +10685,8 @@ #~ msgid "starting page number larger than total number of pages: `%d'" #~ msgstr "" -#~ "Le num\xE9ro de page de d\xE9part est plus grand que le nombre total de pages: " -#~ "\xAB %d \xBB" +#~ "Le num\xE9ro de page de d\xE9part est plus grand que le nombre total de pages: \xAB " +#~ "%d \xBB" #~ msgid "Page %d" #~ msgstr "Page %d" @@ -12932,8 +12928,7 @@ #~ " -S FICHIER FICHIER existe et est de type \xAB socket \xBB\n" #~ " -t [DF] descripteur de fichier DF (sortie standard par d\xE9faut)\n" #~ " est ouvert sur le terminal\n" -#~ " -u FICHIER FICHIER existe et le bit \xAB set-user-ID \xBB, est " -#~ "initialis\xE9\n" +#~ " -u FICHIER FICHIER existe et le bit \xAB set-user-ID \xBB, est initialis\xE9\n" #~ " -w FICHIER FICHIER existe et l'\xE9criture y est permise\n" #~ " -x FICHIER FICHIER existe et ex\xE9cutable\n" Modified: trunk/rmol/rmol/bom/DPOptimiser.cpp =================================================================== --- trunk/rmol/rmol/bom/DPOptimiser.cpp 2009-02-15 11:33:58 UTC (rev 165) +++ trunk/rmol/rmol/bom/DPOptimiser.cpp 2009-03-05 00:50:26 UTC (rev 166) @@ -48,7 +48,7 @@ bool protectionChanged = false; double nextProtection = 0.0; std::vector<double> currentMERVector; - double testGradient = 10000; + // double testGradient = 10000; Bucket& currentBucket = ioBucketHolder.getCurrentBucket(); const double meanDemand = currentBucket.getMean(); Modified: trunk/rmol/rmol/bom/Demand.cpp =================================================================== --- trunk/rmol/rmol/bom/Demand.cpp 2009-02-15 11:33:58 UTC (rev 165) +++ trunk/rmol/rmol/bom/Demand.cpp 2009-03-05 00:50:26 UTC (rev 166) @@ -7,27 +7,26 @@ // ////////////////////////////////////////////////////////////////////// Demand::Demand () : - _distributionParameters (FldDistributionParameters()), - _yieldRange (FldYieldRange()) { + _yieldRange (FldYieldRange()), + _distributionParameters (FldDistributionParameters()) { } // ////////////////////////////////////////////////////////////////////// Demand::Demand (const Demand& iDemand) : - _distributionParameters (iDemand.getDistributionParameters()), - _yieldRange (iDemand.getYieldRange()) { + _yieldRange (iDemand.getYieldRange()), + _distributionParameters (iDemand.getDistributionParameters()) { } // ////////////////////////////////////////////////////////////////////// Demand::Demand (const FldDistributionParameters& iDistributionParameters, const FldYieldRange& iYieldRange) : - _distributionParameters (iDistributionParameters), - _yieldRange (iYieldRange) { + _yieldRange (iYieldRange), + _distributionParameters (iDistributionParameters) { } // ////////////////////////////////////////////////////////////////////// Demand::~Demand() { } - // ////////////////////////////////////////////////////////////////////// double Demand::getUpperYield() const { Modified: trunk/rmol/rmol/bom/Emsr.cpp =================================================================== --- trunk/rmol/rmol/bom/Emsr.cpp 2009-02-15 11:33:58 UTC (rev 165) +++ trunk/rmol/rmol/bom/Emsr.cpp 2009-03-05 00:50:26 UTC (rev 166) @@ -49,7 +49,9 @@ lEmsrValueList.sort(); lEmsrValueList.reverse(); - assert (lEmsrValueList.size() >= lCabinCapacity); + // Sanity check + const int lEmsrValueListSize = lEmsrValueList.size(); + assert (lEmsrValueListSize >= lCabinCapacity); // Copy the EMSR sorted values to the BPV. EmsrValueList_T::iterator currentValue = lEmsrValueList.begin(); Modified: trunk/rmol/rmol.spec.in =================================================================== --- trunk/rmol/rmol.spec.in 2009-02-15 11:33:58 UTC (rev 165) +++ trunk/rmol/rmol.spec.in 2009-03-05 00:50:26 UTC (rev 166) @@ -1,30 +1,21 @@ -Name: @PACKAGE@ -Summary: @PACKAGE_NAME@ is a C++ library of Revenue Management and Optimisation classes and functions. Typically, the service providers (like, e.g., airlines, hotels or car rental companies) may use that library to help them optimise their revenues from their seat capacities. -Packager: Denis Arnaud <den...@us...> -%define version @VERSION@ -%define release @RPM_RELEASE@ -Version: %{version} -Release: %{release} -License: LGPL -Vendor: The RMOL Team -Distribution: Research Software -Source: http://download.sourceforge.net/%{name}/%{name}-%{version}.tar.gz -Group: System Environment/Libraries -URL: http://%{name}.sourceforge.net/ -Requires: gsl-devel >= 1.8 -#Requires: gsl >= 1.8 +Name: @PACKAGE@ +Version: 0.17.0 +Release: 0.dev.1 +Summary: @PACKAGE_NAME@ is a C++ library of Revenue Management and Optimisation classes and functions. Typically, the service providers (like, e.g., airlines, hotels or car rental companies) may use that library to help them optimise their revenues from their seat capacities. -Prefix: %{_prefix} +Group: System Environment/Libraries +License: LGPL +URL: http://%{name}.sourceforge.net +Source0: http://download.sourceforge.net/%{name}/%{name}-%{version}.tar.gz +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) -BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot -BuildRequires: gsl-devel >= 1.8 -BuildRequires: gettext, autoconf >= 2.58, automake >= 1.8 +BuildRequires: gsl-devel >= 1.8 +BuildRequires: boost-devel >= 1.34 +#Requires: -Prereq: /sbin/install-info - -%description -RMOL is a C++ library of Revenue Management and Optimisation classes and -functions. Typically, that library may be used by service providers +%description +@PACKAGE_NAME@ is a C++ library of Revenue Management and Optimisation classes +and functions. Typically, that library may be used by service providers (e.g., airlines offering flight seats, hotels offering rooms, rental car companies offering rental days, broadcasting company offering advertisement slots, theaters offering seats, etc.). @@ -33,60 +24,46 @@ The Theory and practice of Revenue Management, by Kalyan T. Talluri and Garrett J. van Ryzin, Kluwer Academic Publishers, 2004, ISBN 1-4020-7701-7 -Install the rmol package if you need a library for high-level +Install the @PACKAGE@ package if you need a library for high-level revenue management functionality. -%package devel -Summary: Static libraries and header files for RMOL development. -Group: Development/Libraries -Requires: %{name} = %{version} +%package devel +Summary: Headers and libraries for building apps that use @PACKAGE_NAME@ +Group: Development/Libraries +Requires: %{name} = %{version}-%{release} -%description devel +%description devel +This package contains headers and libraries required to build applications that +use @PACKAGE_NAME@. -The rmol-devel package contains the header files and static libraries -necessary for developing programs using the GSL (GNU Scientific -Library). - %package html-doc Summary: HTML documentation for the @PACKAGE_NAME@ library Group: System Environment/Libraries %description html-doc -This package contains the documentation in the HTML format of the RMOL -library. The documentation is the same as at the RMOL web page. +This package contains the documentation in the HTML format of the @PACKAGE_NAME@ +library. The documentation is the same as at the @PACKAGE_NAME@ web page. + %prep %setup -q + %build -%configure --enable-static --with-gsl-prefix=/nastools/gsl --with-docdir=%{_docdir}/%{name}-html-doc -make +%configure --enable-static --with-docdir=%{_docdir}/%{name}-%{version}-html-doc +make %{?_smp_mflags} -%install -[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT -make DESTDIR=$RPM_BUILD_ROOT install -%find_lang %{name} +%install +rm -rf $RPM_BUILD_ROOT +make install DESTDIR=$RPM_BUILD_ROOT +#%find_lang %{name} # remove unpackaged files from the buildroot rm -f $RPM_BUILD_ROOT%{_infodir}/dir -rm -rf $RPM_BUILD_ROOT%{_mandir} -rm -rf $RPM_BUILD_ROOT%{_sysconfdir} -rm -rf $RPM_BUILD_ROOT%{_libdir}/pkgconfig -rmolcsuffix=`echo "%{_libdir}" | sed s,/usr/,,` -mv $RPM_BUILD_ROOT%{_bindir}/%{name}-config $RPM_BUILD_ROOT%{_bindir}/%{name}-config-$rmolcsuffix -cat > $RPM_BUILD_ROOT%{_bindir}/%{name}-config << EOF -#!/bin/sh -if [ -e %{_bindir}/%{name}-config-lib64 ]; then - exec %{_bindir}/%{name}-config-lib64 "\$@" -elif [ -e %{_bindir}/%{name}-config-* ]; then - rmolcfile="\`ls %{_bindir}/%{name}-config-* | head -n1\`" - exec \$rmolcfile "\$@" -fi -EOF -chmod 755 $RPM_BUILD_ROOT%{_bindir}/%{name}-config +%clean +rm -rf $RPM_BUILD_ROOT - %post -p /sbin/ldconfig %postun -p /sbin/ldconfig @@ -96,37 +73,35 @@ %preun devel if [ "$1" = 0 ]; then - /sbin/install-info --delete %{_infodir}/%{name}-ref.info.gz %{_infodir}/dir + /sbin/install-info --delete %{_infodir}/%{name}-ref.info.gz %{_infodir}/dir fi -%clean -rm -rf $RPM_BUILD_ROOT +%files +#-f %{name}.lang +%defattr(-,root,root,-) +%doc AUTHORS ChangeLog COPYING INSTALL NEWS README +%{_bindir}/* +%{_libdir}/lib*.so.* +#%{_docdir}/%{name}-%{version}/html +#%{_datadir}/info/dir +%{_datadir}/man/man3/%{name}.3.gz -%files -f %{name}.lang -%defattr(-,root,root) -%doc ABOUT-NLS AUTHORS COPYING ChangeLog INSTALL NEWS README TODO -%{_libdir}/*so.* -#%{_datadir}/locale/*/LC_*/*.mo - %files devel -%defattr(-,root,root) -%doc AUTHORS COPYING -%{_libdir}/*.la -%{_libdir}/*.a -%{_libdir}/*.so -%{_bindir}/%{name}-config* -%{_datadir}/aclocal/* +%defattr(-,root,root,-) +%doc %{_includedir}/%{name} -%{_infodir}/*info* -# The pkgconfig file cannot be installed. I don't understand why. Help needed! -#%{_libdir}/pkgconfig/%{name}.pc -# If you find a way to install the man pages from within rpmbuild, don't -# hesitate! -#%{_mandir}/man*/* +%{_libdir}/lib*.a +%{_libdir}/lib*.la +%{_libdir}/lib*.so +%{_libdir}/pkgconfig/%{name}.pc +%{_datadir}/aclocal/%{name}.m4 +%{_datadir}/info/%{name}-ref.info.gz +%{_datadir}/man/man1/%{name}-config.1.gz %files html-doc -%doc %{_docdir}/%{name}-html-doc +%doc %{_docdir}/%{name}-%{version}-html-doc %changelog -* Sat Jan 27 2007 Denis Arnaud <den...@us...> -- Initial spec file prepared + * Wed Mar 4 2009 Denis Arnaud <den...@m4...> %{version}.dev.1 + - Second RPM release + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2009-02-15 12:01:08
|
Revision: 165 http://rmol.svn.sourceforge.net/rmol/?rev=165&view=rev Author: denis_arnaud Date: 2009-02-15 11:33:58 +0000 (Sun, 15 Feb 2009) Log Message: ----------- [Release] The version 0.16.0 has been released. The current version has thus become 0.17.0. Modified Paths: -------------- trunk/rmol/configure.ac Modified: trunk/rmol/configure.ac =================================================================== --- trunk/rmol/configure.ac 2009-02-10 14:46:08 UTC (rev 164) +++ trunk/rmol/configure.ac 2009-02-15 11:33:58 UTC (rev 165) @@ -2,7 +2,7 @@ #------------------------------------------------------------------- AC_PREREQ(2.59) AC_COPYRIGHT([Copyright (C) 2007-2008 Denis Arnaud <den...@us...>]) -AC_INIT([RMOL],[0.15.0],[den...@us...],[rmol]) +AC_INIT([RMOL],[0.17.0],[den...@us...],[rmol]) AC_CONFIG_HEADER([rmol/config.h]) AC_CONFIG_SRCDIR([rmol/basic/BasConst.cpp]) AC_CONFIG_AUX_DIR([config]) @@ -13,7 +13,7 @@ AC_SUBST(RPM_RELEASE) # Shared library versioning -GENERIC_LIBRARY_VERSION="0:15:0" +GENERIC_LIBRARY_VERSION="0:17:0" # | | | # +------+ | +---+ # | | | This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <qua...@us...> - 2009-02-10 14:46:13
|
Revision: 164 http://rmol.svn.sourceforge.net/rmol/?rev=164&view=rev Author: quannaus Date: 2009-02-10 14:46:08 +0000 (Tue, 10 Feb 2009) Log Message: ----------- Small change in the call for EMSR method. Modified Paths: -------------- trunk/rmol/rmol/RMOL_Service.cpp trunk/rmol/rmol/command/Optimiser.cpp trunk/rmol/rmol/command/Optimiser.hpp Modified: trunk/rmol/rmol/RMOL_Service.cpp =================================================================== --- trunk/rmol/rmol/RMOL_Service.cpp 2009-01-13 16:48:12 UTC (rev 163) +++ trunk/rmol/rmol/RMOL_Service.cpp 2009-02-10 14:46:08 UTC (rev 164) @@ -3,6 +3,8 @@ // ////////////////////////////////////////////////////////////////////// // C #include <assert.h> +// STL +#include <iomanip> // RMOL #include <rmol/basic/BasConst_RMOL_Service.hpp> #include <rmol/field/FldYieldRange.hpp> @@ -125,25 +127,35 @@ const double iCapacity = _context->getCapacity(); BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); assert (ioBucketHolder_ptr != NULL); + BidPriceVector_T lBidPriceVector; - Optimiser::heuristicOptimisationByEmsr (iCapacity, *ioBucketHolder_ptr); + Optimiser::heuristicOptimisationByEmsr (iCapacity, *ioBucketHolder_ptr, + lBidPriceVector); // Display ioBucketHolder_ptr->display(); + + std::cout << "BVP: "; + unsigned int size = lBidPriceVector.size(); + + for (unsigned int i = 0; i < size; ++i) { + const double bidPrice = lBidPriceVector.at(i); + std::cout << std::fixed << std::setprecision (2) << bidPrice << " "; + } + std::cout << std::endl; + } // ////////////////////////////////////////////////////////////////////// void RMOL_Service:: - heuristicOptimisationByEmsr (BookingLimitVector_T& ioBookingLimitVector) { + heuristicOptimisationByEmsr (BidPriceVector_T& ioBidPriceVector) { assert (_context != NULL); const double iCapacity = _context->getCapacity(); BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); assert (ioBucketHolder_ptr != NULL); - Optimiser::heuristicOptimisationByEmsr (iCapacity, *ioBucketHolder_ptr); - - // Fill up booking vector - ioBucketHolder_ptr->fillup(ioBookingLimitVector); + Optimiser::heuristicOptimisationByEmsr (iCapacity, *ioBucketHolder_ptr, + ioBidPriceVector); } // ////////////////////////////////////////////////////////////////////// Modified: trunk/rmol/rmol/command/Optimiser.cpp =================================================================== --- trunk/rmol/rmol/command/Optimiser.cpp 2009-01-13 16:48:12 UTC (rev 163) +++ trunk/rmol/rmol/command/Optimiser.cpp 2009-02-10 14:46:08 UTC (rev 164) @@ -79,19 +79,11 @@ // ////////////////////////////////////////////////////////////////////// void Optimiser:: heuristicOptimisationByEmsr (const ResourceCapacity_T iCabinCapacity, - BucketHolder& ioBucketHolder) { - BidPriceVector_T lBidPriceVector; + BucketHolder& ioBucketHolder, + BidPriceVector_T& ioBidPriceVector) { Emsr::heuristicOptimisationByEmsr (iCabinCapacity, ioBucketHolder, - lBidPriceVector); - std::cout << "BVP: "; - unsigned int size = lBidPriceVector.size(); - - for (unsigned int i = 0; i < size; ++i) { - const double bidPrice = lBidPriceVector.at(i); - std::cout << std::fixed << std::setprecision (2) << bidPrice << " "; - } - std::cout << std::endl; + ioBidPriceVector); } // ////////////////////////////////////////////////////////////////////// Modified: trunk/rmol/rmol/command/Optimiser.hpp =================================================================== --- trunk/rmol/rmol/command/Optimiser.hpp 2009-01-13 16:48:12 UTC (rev 163) +++ trunk/rmol/rmol/command/Optimiser.hpp 2009-02-10 14:46:08 UTC (rev 164) @@ -47,7 +47,8 @@ overbooking. */ static void heuristicOptimisationByEmsr (const ResourceCapacity_T, - BucketHolder&); + BucketHolder&, + BidPriceVector_T&); /** EMRS-a algorithm. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2009-01-13 16:48:16
|
Revision: 163 http://rmol.svn.sourceforge.net/rmol/?rev=163&view=rev Author: denis_arnaud Date: 2009-01-13 16:48:12 +0000 (Tue, 13 Jan 2009) Log Message: ----------- [Release 0-15] A typo has been fixed in the delivered rmol.m4, so that other projects may integrate the new version. Modified Paths: -------------- trunk/rmol/rmol.m4.in Modified: trunk/rmol/rmol.m4.in =================================================================== --- trunk/rmol/rmol.m4.in 2009-01-13 15:28:28 UTC (rev 162) +++ trunk/rmol/rmol.m4.in 2009-01-13 16:48:12 UTC (rev 163) @@ -102,7 +102,7 @@ AC_COMPILE_IFELSE( AC_LANG_PROGRAM([[ - #include <@PACKAGE@/@PACKAGE_NAME@.hpp> + #include <@PACKAGE@/@PACKAGE_NAME@_Service.hpp> ]], [[int i=0;]] ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2009-01-13 15:28:35
|
Revision: 162 http://rmol.svn.sourceforge.net/rmol/?rev=162&view=rev Author: denis_arnaud Date: 2009-01-13 15:28:28 +0000 (Tue, 13 Jan 2009) Log Message: ----------- [Release 0-15] The RMOL class has been renamed into RMOL_Service. Modified Paths: -------------- trunk/rmol/test/optimise.cpp Modified: trunk/rmol/test/optimise.cpp =================================================================== --- trunk/rmol/test/optimise.cpp 2009-01-13 15:17:29 UTC (rev 161) +++ trunk/rmol/test/optimise.cpp 2009-01-13 15:28:28 UTC (rev 162) @@ -2,7 +2,7 @@ #include <iostream> #include <sstream> // RMOL -#include <rmol/RMOL.hpp> +#include <rmol/RMOL_Service.hpp> // M A I N @@ -45,7 +45,7 @@ } // Initialise the list of classes/buckets - RMOL::RMOL rmolService (cabinCapacity); + RMOL::RMOL_Service rmolService (cabinCapacity); if (hasInputFile) { // Read the input file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2009-01-13 15:17:39
|
Revision: 161 http://rmol.svn.sourceforge.net/rmol/?rev=161&view=rev Author: denis_arnaud Date: 2009-01-13 15:17:29 +0000 (Tue, 13 Jan 2009) Log Message: ----------- [Release 0-15] The RMOL class has been renamed into RMOL_Service. Modified Paths: -------------- trunk/rmol/README trunk/rmol/configure.ac trunk/rmol/rmol/basic/BasConst.cpp trunk/rmol/rmol/bom/DPOptimiser.cpp trunk/rmol/rmol/service/ServiceContext.hpp trunk/rmol/rmol/sources.mk trunk/rmol/rmol.m4.in Added Paths: ----------- trunk/rmol/rmol/RMOL_Service.cpp trunk/rmol/rmol/RMOL_Service.hpp Removed Paths: ------------- trunk/rmol/rmol/RMOL.cpp trunk/rmol/rmol/RMOL.hpp Modified: trunk/rmol/README =================================================================== --- trunk/rmol/README 2008-12-02 17:21:37 UTC (rev 160) +++ trunk/rmol/README 2009-01-13 15:17:29 UTC (rev 161) @@ -21,7 +21,7 @@ http://sourceforge.net/project/showfiles.php?group_id=177703 Then, as usual, you can just type the following sequence: -"./configure --prefix=~/dev/deliveries/rmol-0.14.0 && make && make check && cd test && ./testLibsh" +"./configure --prefix=~/dev/deliveries/rmol-0.15 && make && make check && cd test && ./testLibsh" Of course, if you want to install the library (librmol*.so*), just type: "make install". Modified: trunk/rmol/configure.ac =================================================================== --- trunk/rmol/configure.ac 2008-12-02 17:21:37 UTC (rev 160) +++ trunk/rmol/configure.ac 2009-01-13 15:17:29 UTC (rev 161) @@ -2,7 +2,7 @@ #------------------------------------------------------------------- AC_PREREQ(2.59) AC_COPYRIGHT([Copyright (C) 2007-2008 Denis Arnaud <den...@us...>]) -AC_INIT([RMOL],[0.14.0],[den...@us...],[rmol]) +AC_INIT([RMOL],[0.15.0],[den...@us...],[rmol]) AC_CONFIG_HEADER([rmol/config.h]) AC_CONFIG_SRCDIR([rmol/basic/BasConst.cpp]) AC_CONFIG_AUX_DIR([config]) @@ -13,7 +13,7 @@ AC_SUBST(RPM_RELEASE) # Shared library versioning -GENERIC_LIBRARY_VERSION="0:14:0" +GENERIC_LIBRARY_VERSION="0:15:0" # | | | # +------+ | +---+ # | | | Deleted: trunk/rmol/rmol/RMOL.cpp =================================================================== --- trunk/rmol/rmol/RMOL.cpp 2008-12-02 17:21:37 UTC (rev 160) +++ trunk/rmol/rmol/RMOL.cpp 2009-01-13 15:17:29 UTC (rev 161) @@ -1,200 +0,0 @@ -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// C -#include <assert.h> -// RMOL -#include <rmol/basic/BasConst_RMOL_Service.hpp> -#include <rmol/field/FldYieldRange.hpp> -#include <rmol/field/FldDistributionParameters.hpp> -#include <rmol/bom/Demand.hpp> -#include <rmol/bom/Bucket.hpp> -#include <rmol/bom/BucketHolder.hpp> -#include <rmol/factory/FacServiceContext.hpp> -#include <rmol/command/Optimiser.hpp> -#include <rmol/service/ServiceContext.hpp> -#include <rmol/RMOL.hpp> - -namespace RMOL { - - // ////////////////////////////////////////////////////////////////////// - RMOL::RMOL () : - _context (NULL) { - } - - // ////////////////////////////////////////////////////////////////////// - RMOL::RMOL (const RMOL& iService) : - _context (NULL) { - } - - // ////////////////////////////////////////////////////////////////////// - RMOL::RMOL (const ResourceCapacity_T iResourceCapacity) { - // Initialise the context - initContext (iResourceCapacity); - } - - // ////////////////////////////////////////////////////////////////////// - RMOL::~RMOL () { - } - - // ////////////////////////////////////////////////////////////////////// - void RMOL::initContext (const ResourceCapacity_T iResourceCapacity) { - _context = &FacServiceContext::instance().create (iResourceCapacity); - } - - // ////////////////////////////////////////////////////////////////////// - void RMOL::addBucket (const double iYieldRange, - const double iDemandMean, - const double iDemandStandardDev) { - assert (_context != NULL); - _context->addBucket (iYieldRange, iDemandMean, iDemandStandardDev); - } - - // ////////////////////////////////////////////////////////////////////// - void RMOL::readFromInputFile (const std::string& iInputFileName) { - assert (_context != NULL); - _context->readFromInputFile (iInputFileName); - } - - // ////////////////////////////////////////////////////////////////////// - void RMOL:: - optimalOptimisationByMCIntegration (const int K) { - - assert (_context != NULL); - const double iCapacity = _context->getCapacity(); - BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); - assert (ioBucketHolder_ptr != NULL); - - Optimiser::optimalOptimisationByMCIntegration (K, iCapacity, - *ioBucketHolder_ptr); - - // Display - ioBucketHolder_ptr->display(); - } - - // ////////////////////////////////////////////////////////////////////// - void RMOL:: - optimalOptimisationByMCIntegration (const int K, - BookingLimitVector_T& ioBookingLimitVector) { - - assert (_context != NULL); - const double iCapacity = _context->getCapacity(); - BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); - assert (ioBucketHolder_ptr != NULL); - - Optimiser::optimalOptimisationByMCIntegration (K, iCapacity, - *ioBucketHolder_ptr); - - // Fill up booking vector - ioBucketHolder_ptr->fillup(ioBookingLimitVector); - } - - // ////////////////////////////////////////////////////////////////////// - void RMOL:: - optimalOptimisationByDP () { - - assert (_context != NULL); - const double iCapacity = _context->getCapacity(); - BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); - assert (ioBucketHolder_ptr != NULL); - - Optimiser::optimalOptimisationByDP (iCapacity, *ioBucketHolder_ptr); - - // Display - ioBucketHolder_ptr->display(); - } - - // ////////////////////////////////////////////////////////////////////// - void RMOL:: - optimalOptimisationByDP (BookingLimitVector_T& ioBookingLimitVector) { - - assert (_context != NULL); - const double iCapacity = _context->getCapacity(); - BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); - assert (ioBucketHolder_ptr != NULL); - - Optimiser::optimalOptimisationByDP (iCapacity, *ioBucketHolder_ptr); - - // Fill up booking vector - ioBucketHolder_ptr->fillup(ioBookingLimitVector); - } - - // ////////////////////////////////////////////////////////////////////// - void RMOL::heuristicOptimisationByEmsr () { - assert (_context != NULL); - const double iCapacity = _context->getCapacity(); - BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); - assert (ioBucketHolder_ptr != NULL); - - Optimiser::heuristicOptimisationByEmsr (iCapacity, *ioBucketHolder_ptr); - - // Display - ioBucketHolder_ptr->display(); - } - - // ////////////////////////////////////////////////////////////////////// - void RMOL::heuristicOptimisationByEmsr (BookingLimitVector_T& ioBookingLimitVector) { - assert (_context != NULL); - const double iCapacity = _context->getCapacity(); - BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); - assert (ioBucketHolder_ptr != NULL); - - Optimiser::heuristicOptimisationByEmsr (iCapacity, *ioBucketHolder_ptr); - - // Fill up booking vector - ioBucketHolder_ptr->fillup(ioBookingLimitVector); - } - - // ////////////////////////////////////////////////////////////////////// - void RMOL::heuristicOptimisationByEmsrA () { - assert (_context != NULL); - const double iCapacity = _context->getCapacity(); - BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); - assert (ioBucketHolder_ptr != NULL); - - Optimiser::heuristicOptimisationByEmsrA (iCapacity, *ioBucketHolder_ptr); - - // Display - ioBucketHolder_ptr->display(); - } - - // ////////////////////////////////////////////////////////////////////// - void RMOL::heuristicOptimisationByEmsrA (BookingLimitVector_T& ioBookingLimitVector) { - assert (_context != NULL); - const double iCapacity = _context->getCapacity(); - BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); - assert (ioBucketHolder_ptr != NULL); - - Optimiser::heuristicOptimisationByEmsrA (iCapacity, *ioBucketHolder_ptr); - - // Fill up booking vector - ioBucketHolder_ptr->fillup(ioBookingLimitVector); - } - - // ////////////////////////////////////////////////////////////////////// - void RMOL::heuristicOptimisationByEmsrB () { - assert (_context != NULL); - const double iCapacity = _context->getCapacity(); - BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); - assert (ioBucketHolder_ptr != NULL); - - Optimiser::heuristicOptimisationByEmsrB (iCapacity, *ioBucketHolder_ptr); - - // Display - ioBucketHolder_ptr->display(); - } - - // ////////////////////////////////////////////////////////////////////// - void RMOL::heuristicOptimisationByEmsrB (BookingLimitVector_T& ioBookingLimitVector) { - assert (_context != NULL); - const double iCapacity = _context->getCapacity(); - BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); - assert (ioBucketHolder_ptr != NULL); - - Optimiser::heuristicOptimisationByEmsrB (iCapacity, *ioBucketHolder_ptr); - - // Fill up booking vector - ioBucketHolder_ptr->fillup(ioBookingLimitVector); - } - -} Deleted: trunk/rmol/rmol/RMOL.hpp =================================================================== --- trunk/rmol/rmol/RMOL.hpp 2008-12-02 17:21:37 UTC (rev 160) +++ trunk/rmol/rmol/RMOL.hpp 2009-01-13 15:17:29 UTC (rev 161) @@ -1,80 +0,0 @@ -#ifndef __RMOL_SVC_RMOL_SERVICE_HPP -#define __RMOL_SVC_RMOL_SERVICE_HPP - -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// STL -#include <string> -// RMOL -#include <rmol/RmolTypes.hpp> - -namespace RMOL { - - /** Forward declaration. */ - class ServiceContext; - - /** Interface for the RMOL Services. */ - class RMOL { - public: - /** Constructor. */ - RMOL (const ResourceCapacity_T iResourceCapacity); - /** Destructor. */ - ~RMOL(); - - /** Add a bucket to the context. */ - void addBucket (const double iYieldRange, const double iDemandMean, - const double iDemandStandardDev); - - /** Read the input data from a file. */ - void readFromInputFile (const std::string& iInputFileName); - - /** Single resource optimization using the Monte Carlo algorithm. */ - void optimalOptimisationByMCIntegration (const int K); - - /** Single resource optimization that uses Monte-Carlo algorithm and - returns a vector of cumulated booking limits. */ - void optimalOptimisationByMCIntegration (const int K, - BookingLimitVector_T&); - - /** Single resource optimization using dynamic programming. */ - void optimalOptimisationByDP (); - - /** Single resource optimization that uses dynamic programming and - returns a vector of cumulated booking limits. */ - void optimalOptimisationByDP (BookingLimitVector_T&); - - /** Single resource optimization using EMSR heuristic. */ - void heuristicOptimisationByEmsr (); - - /** Single resource optimization that uses EMSR heuristic and - returns a vector of cumulated booking limits. */ - void heuristicOptimisationByEmsr (BookingLimitVector_T&); - - /** Single resource optimization using EMSR-a heuristic. */ - void heuristicOptimisationByEmsrA (); - - /** Single resource optimization that uses EMSR-a heuristic and - returns a vector of cumulated booking limits. */ - void heuristicOptimisationByEmsrA (BookingLimitVector_T&); - - /** Single resource optimization using EMSR-b heuristic. */ - void heuristicOptimisationByEmsrB (); - - /** Single resource optimization that uses EMSR-b heuristic and - returns a vector of cumulated booking limits. */ - void heuristicOptimisationByEmsrB (BookingLimitVector_T&); - - private: - /** Default Constructors. */ - RMOL (); - RMOL (const RMOL&); - - /** Initialiser. */ - void initContext (const ResourceCapacity_T iResourceCapacity); - - /** Service Context. */ - ServiceContext* _context; - }; -} -#endif // __RMOL_SVC_RMOL_SERVICE_HPP Copied: trunk/rmol/rmol/RMOL_Service.cpp (from rev 160, trunk/rmol/rmol/RMOL.cpp) =================================================================== --- trunk/rmol/rmol/RMOL_Service.cpp (rev 0) +++ trunk/rmol/rmol/RMOL_Service.cpp 2009-01-13 15:17:29 UTC (rev 161) @@ -0,0 +1,203 @@ +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// C +#include <assert.h> +// RMOL +#include <rmol/basic/BasConst_RMOL_Service.hpp> +#include <rmol/field/FldYieldRange.hpp> +#include <rmol/field/FldDistributionParameters.hpp> +#include <rmol/bom/Demand.hpp> +#include <rmol/bom/Bucket.hpp> +#include <rmol/bom/BucketHolder.hpp> +#include <rmol/factory/FacServiceContext.hpp> +#include <rmol/command/Optimiser.hpp> +#include <rmol/service/ServiceContext.hpp> +#include <rmol/RMOL_Service.hpp> + +namespace RMOL { + + // ////////////////////////////////////////////////////////////////////// + RMOL_Service::RMOL_Service () : + _context (NULL) { + } + + // ////////////////////////////////////////////////////////////////////// + RMOL_Service::RMOL_Service (const RMOL_Service& iService) : + _context (NULL) { + } + + // ////////////////////////////////////////////////////////////////////// + RMOL_Service::RMOL_Service (const ResourceCapacity_T iResourceCapacity) { + // Initialise the context + initContext (iResourceCapacity); + } + + // ////////////////////////////////////////////////////////////////////// + RMOL_Service::~RMOL_Service () { + } + + // ////////////////////////////////////////////////////////////////////// + void RMOL_Service::initContext (const ResourceCapacity_T iResourceCapacity) { + _context = &FacServiceContext::instance().create (iResourceCapacity); + } + + // ////////////////////////////////////////////////////////////////////// + void RMOL_Service::addBucket (const double iYieldRange, + const double iDemandMean, + const double iDemandStandardDev) { + assert (_context != NULL); + _context->addBucket (iYieldRange, iDemandMean, iDemandStandardDev); + } + + // ////////////////////////////////////////////////////////////////////// + void RMOL_Service::readFromInputFile (const std::string& iInputFileName) { + assert (_context != NULL); + _context->readFromInputFile (iInputFileName); + } + + // ////////////////////////////////////////////////////////////////////// + void RMOL_Service:: + optimalOptimisationByMCIntegration (const int K) { + + assert (_context != NULL); + const double iCapacity = _context->getCapacity(); + BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); + assert (ioBucketHolder_ptr != NULL); + + Optimiser::optimalOptimisationByMCIntegration (K, iCapacity, + *ioBucketHolder_ptr); + + // Display + ioBucketHolder_ptr->display(); + } + + // ////////////////////////////////////////////////////////////////////// + void RMOL_Service:: + optimalOptimisationByMCIntegration (const int K, + BookingLimitVector_T& ioBookingLimitVector) { + + assert (_context != NULL); + const double iCapacity = _context->getCapacity(); + BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); + assert (ioBucketHolder_ptr != NULL); + + Optimiser::optimalOptimisationByMCIntegration (K, iCapacity, + *ioBucketHolder_ptr); + + // Fill up booking vector + ioBucketHolder_ptr->fillup(ioBookingLimitVector); + } + + // ////////////////////////////////////////////////////////////////////// + void RMOL_Service:: + optimalOptimisationByDP () { + + assert (_context != NULL); + const double iCapacity = _context->getCapacity(); + BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); + assert (ioBucketHolder_ptr != NULL); + + Optimiser::optimalOptimisationByDP (iCapacity, *ioBucketHolder_ptr); + + // Display + ioBucketHolder_ptr->display(); + } + + // ////////////////////////////////////////////////////////////////////// + void RMOL_Service:: + optimalOptimisationByDP (BookingLimitVector_T& ioBookingLimitVector) { + + assert (_context != NULL); + const double iCapacity = _context->getCapacity(); + BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); + assert (ioBucketHolder_ptr != NULL); + + Optimiser::optimalOptimisationByDP (iCapacity, *ioBucketHolder_ptr); + + // Fill up booking vector + ioBucketHolder_ptr->fillup(ioBookingLimitVector); + } + + // ////////////////////////////////////////////////////////////////////// + void RMOL_Service::heuristicOptimisationByEmsr () { + assert (_context != NULL); + const double iCapacity = _context->getCapacity(); + BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); + assert (ioBucketHolder_ptr != NULL); + + Optimiser::heuristicOptimisationByEmsr (iCapacity, *ioBucketHolder_ptr); + + // Display + ioBucketHolder_ptr->display(); + } + + // ////////////////////////////////////////////////////////////////////// + void RMOL_Service:: + heuristicOptimisationByEmsr (BookingLimitVector_T& ioBookingLimitVector) { + assert (_context != NULL); + const double iCapacity = _context->getCapacity(); + BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); + assert (ioBucketHolder_ptr != NULL); + + Optimiser::heuristicOptimisationByEmsr (iCapacity, *ioBucketHolder_ptr); + + // Fill up booking vector + ioBucketHolder_ptr->fillup(ioBookingLimitVector); + } + + // ////////////////////////////////////////////////////////////////////// + void RMOL_Service::heuristicOptimisationByEmsrA () { + assert (_context != NULL); + const double iCapacity = _context->getCapacity(); + BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); + assert (ioBucketHolder_ptr != NULL); + + Optimiser::heuristicOptimisationByEmsrA (iCapacity, *ioBucketHolder_ptr); + + // Display + ioBucketHolder_ptr->display(); + } + + // ////////////////////////////////////////////////////////////////////// + void RMOL_Service:: + heuristicOptimisationByEmsrA (BookingLimitVector_T& ioBookingLimitVector) { + assert (_context != NULL); + const double iCapacity = _context->getCapacity(); + BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); + assert (ioBucketHolder_ptr != NULL); + + Optimiser::heuristicOptimisationByEmsrA (iCapacity, *ioBucketHolder_ptr); + + // Fill up booking vector + ioBucketHolder_ptr->fillup(ioBookingLimitVector); + } + + // ////////////////////////////////////////////////////////////////////// + void RMOL_Service::heuristicOptimisationByEmsrB () { + assert (_context != NULL); + const double iCapacity = _context->getCapacity(); + BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); + assert (ioBucketHolder_ptr != NULL); + + Optimiser::heuristicOptimisationByEmsrB (iCapacity, *ioBucketHolder_ptr); + + // Display + ioBucketHolder_ptr->display(); + } + + // ////////////////////////////////////////////////////////////////////// + void RMOL_Service:: + heuristicOptimisationByEmsrB (BookingLimitVector_T& ioBookingLimitVector) { + assert (_context != NULL); + const double iCapacity = _context->getCapacity(); + BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); + assert (ioBucketHolder_ptr != NULL); + + Optimiser::heuristicOptimisationByEmsrB (iCapacity, *ioBucketHolder_ptr); + + // Fill up booking vector + ioBucketHolder_ptr->fillup(ioBookingLimitVector); + } + +} Property changes on: trunk/rmol/rmol/RMOL_Service.cpp ___________________________________________________________________ Added: svn:mergeinfo + Copied: trunk/rmol/rmol/RMOL_Service.hpp (from rev 160, trunk/rmol/rmol/RMOL.hpp) =================================================================== --- trunk/rmol/rmol/RMOL_Service.hpp (rev 0) +++ trunk/rmol/rmol/RMOL_Service.hpp 2009-01-13 15:17:29 UTC (rev 161) @@ -0,0 +1,80 @@ +#ifndef __RMOL_SVC_RMOL_SERVICE_HPP +#define __RMOL_SVC_RMOL_SERVICE_HPP + +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// STL +#include <string> +// RMOL +#include <rmol/RmolTypes.hpp> + +namespace RMOL { + + /** Forward declaration. */ + class ServiceContext; + + /** Interface for the RMOL Services. */ + class RMOL_Service { + public: + /** Constructor. */ + RMOL_Service (const ResourceCapacity_T iResourceCapacity); + /** Destructor. */ + ~RMOL_Service(); + + /** Add a bucket to the context. */ + void addBucket (const double iYieldRange, const double iDemandMean, + const double iDemandStandardDev); + + /** Read the input data from a file. */ + void readFromInputFile (const std::string& iInputFileName); + + /** Single resource optimization using the Monte Carlo algorithm. */ + void optimalOptimisationByMCIntegration (const int K); + + /** Single resource optimization that uses Monte-Carlo algorithm and + returns a vector of cumulated booking limits. */ + void optimalOptimisationByMCIntegration (const int K, + BookingLimitVector_T&); + + /** Single resource optimization using dynamic programming. */ + void optimalOptimisationByDP (); + + /** Single resource optimization that uses dynamic programming and + returns a vector of cumulated booking limits. */ + void optimalOptimisationByDP (BookingLimitVector_T&); + + /** Single resource optimization using EMSR heuristic. */ + void heuristicOptimisationByEmsr (); + + /** Single resource optimization that uses EMSR heuristic and + returns a vector of cumulated booking limits. */ + void heuristicOptimisationByEmsr (BookingLimitVector_T&); + + /** Single resource optimization using EMSR-a heuristic. */ + void heuristicOptimisationByEmsrA (); + + /** Single resource optimization that uses EMSR-a heuristic and + returns a vector of cumulated booking limits. */ + void heuristicOptimisationByEmsrA (BookingLimitVector_T&); + + /** Single resource optimization using EMSR-b heuristic. */ + void heuristicOptimisationByEmsrB (); + + /** Single resource optimization that uses EMSR-b heuristic and + returns a vector of cumulated booking limits. */ + void heuristicOptimisationByEmsrB (BookingLimitVector_T&); + + private: + /** Default Constructors. */ + RMOL_Service (); + RMOL_Service (const RMOL_Service&); + + /** Initialiser. */ + void initContext (const ResourceCapacity_T iResourceCapacity); + + /** Service Context. */ + ServiceContext* _context; + }; +} +#endif // __RMOL_SVC_RMOL_SERVICE_HPP Property changes on: trunk/rmol/rmol/RMOL_Service.hpp ___________________________________________________________________ Added: svn:mergeinfo + Modified: trunk/rmol/rmol/basic/BasConst.cpp =================================================================== --- trunk/rmol/rmol/basic/BasConst.cpp 2008-12-02 17:21:37 UTC (rev 160) +++ trunk/rmol/rmol/basic/BasConst.cpp 2009-01-13 15:17:29 UTC (rev 161) @@ -14,7 +14,7 @@ /** Default value for the precision of the integral computation in the Dynamic Programming algorithm (100 means that the precision will be 0.01). */ - const int DEFAULT_PRECISION = 100; + const int DEFAULT_PRECISION = 10; /** Default value for the load factor used for overbooking calculation. */ const double DEFAULT_OVERBOOKING_LOAD_FACTOR = 0.0; Modified: trunk/rmol/rmol/bom/DPOptimiser.cpp =================================================================== --- trunk/rmol/rmol/bom/DPOptimiser.cpp 2008-12-02 17:21:37 UTC (rev 160) +++ trunk/rmol/rmol/bom/DPOptimiser.cpp 2009-01-13 15:17:29 UTC (rev 161) @@ -188,7 +188,7 @@ currentBucket.setCumulatedProtection (realProtection); nextBucket.setCumulatedBookingLimit (bookingLimit); - currentProtection = nextProtection; + currentProtection = static_cast<int> (std::floor (nextProtection)); ioBucketHolder.iterate(); ++currentBucketIndex; Modified: trunk/rmol/rmol/service/ServiceContext.hpp =================================================================== --- trunk/rmol/rmol/service/ServiceContext.hpp 2008-12-02 17:21:37 UTC (rev 160) +++ trunk/rmol/rmol/service/ServiceContext.hpp 2009-01-13 15:17:29 UTC (rev 161) @@ -20,7 +20,7 @@ /** The RMOL_Service class should be the sole class to get access to ServiceContext content: general users do not want to bother with a context interface. */ - friend class RMOL; + friend class RMOL_Service; friend class FacServiceContext; private: Modified: trunk/rmol/rmol/sources.mk =================================================================== --- trunk/rmol/rmol/sources.mk 2008-12-02 17:21:37 UTC (rev 160) +++ trunk/rmol/rmol/sources.mk 2009-01-13 15:17:29 UTC (rev 161) @@ -1,3 +1,3 @@ service_h_sources = $(top_srcdir)/rmol/RmolTypes.hpp \ - $(top_srcdir)/rmol/RMOL.hpp -service_cc_sources = $(top_srcdir)/rmol/RMOL.cpp + $(top_srcdir)/rmol/RMOL_Service.hpp +service_cc_sources = $(top_srcdir)/rmol/RMOL_Service.cpp Modified: trunk/rmol/rmol.m4.in =================================================================== --- trunk/rmol/rmol.m4.in 2008-12-02 17:21:37 UTC (rev 160) +++ trunk/rmol/rmol.m4.in 2009-01-13 15:17:29 UTC (rev 161) @@ -50,6 +50,7 @@ # AC_MSG_RESULT([ok (set to ${BOOST_CFLAGS})]) # fi +# AC_MSG_CHECKING(for BOOST_DATE_TIME_LIB environment variable) # if test x"${BOOST_DATE_TIME_LIB}" = x; then # AC_MSG_RESULT([Warning: @PACKAGE_NAME@ needs Boost Date-Time library, and the BOOST_DATE_TIME_LIB environment variable does not appears to be set. The @PACKAGE_NAME@ may fail to link.]) # else This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ben...@us...> - 2008-12-02 17:21:41
|
Revision: 160 http://rmol.svn.sourceforge.net/rmol/?rev=160&view=rev Author: benlardeux Date: 2008-12-02 17:21:37 +0000 (Tue, 02 Dec 2008) Log Message: ----------- [Test] Fixed a typo in the Boost CFLAGS for the simulate.cpp test program. Modified Paths: -------------- trunk/rmol/test/Makefile.am Modified: trunk/rmol/test/Makefile.am =================================================================== --- trunk/rmol/test/Makefile.am 2008-08-28 13:14:55 UTC (rev 159) +++ trunk/rmol/test/Makefile.am 2008-12-02 17:21:37 UTC (rev 160) @@ -8,7 +8,7 @@ optimise_LDADD = $(top_builddir)/@PACKAGE@/librmol.la simulate_SOURCES = simulate.cpp -simulate_CXXFLAGS = $(BOOST_CPPFLAGS) $(GSL_CFLAGS) +simulate_CXXFLAGS = $(BOOST_CFLAGS) $(GSL_CFLAGS) simulate_LDADD = $(BOOST_LIBS) $(GSL_LIBS) EXTRA_DIST = sample1.csv sample2.csv sample3.csv sample4.csv testLib.sh This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <qua...@us...> - 2008-08-28 13:14:59
|
Revision: 159 http://rmol.svn.sourceforge.net/rmol/?rev=159&view=rev Author: quannaus Date: 2008-08-28 13:14:55 +0000 (Thu, 28 Aug 2008) Log Message: ----------- Added Monte-Carlo method for SIM. Modified Paths: -------------- trunk/rmol/rmol/RMOL.hpp trunk/rmol/rmol/bom/Emsr.cpp trunk/rmol/test/sample4.csv Modified: trunk/rmol/rmol/RMOL.hpp =================================================================== --- trunk/rmol/rmol/RMOL.hpp 2008-08-27 08:40:35 UTC (rev 158) +++ trunk/rmol/rmol/RMOL.hpp 2008-08-28 13:14:55 UTC (rev 159) @@ -35,7 +35,7 @@ /** Single resource optimization that uses Monte-Carlo algorithm and returns a vector of cumulated booking limits. */ void optimalOptimisationByMCIntegration (const int K, - BookingLimitVector_T&); + BookingLimitVector_T&); /** Single resource optimization using dynamic programming. */ void optimalOptimisationByDP (); Modified: trunk/rmol/rmol/bom/Emsr.cpp =================================================================== --- trunk/rmol/rmol/bom/Emsr.cpp 2008-08-27 08:40:35 UTC (rev 158) +++ trunk/rmol/rmol/bom/Emsr.cpp 2008-08-28 13:14:55 UTC (rev 159) @@ -90,6 +90,8 @@ i.e., n corresponds to the number of classes/buckets. */ ioBucketHolder.begin(); + Bucket& firstBucket = ioBucketHolder.getCurrentBucket(); + firstBucket.setCumulatedBookingLimit (iCabinCapacity); for (short j = 1; j <= nbOfClasses - 1; j++, ioBucketHolder.iterate()) { Bucket& nextBucket = ioBucketHolder.getNextBucket(); @@ -160,6 +162,8 @@ i.e., n corresponds to the number of classes/buckets. */ ioBucketHolder.begin(); + Bucket& firstBucket = ioBucketHolder.getCurrentBucket(); + firstBucket.setCumulatedBookingLimit (iCabinCapacity); for (short j = 1; j <= nbOfClasses - 1; j++, ioBucketHolder.iterate()) { Bucket& currentBucket = ioBucketHolder.getCurrentBucket(); Bucket& nextBucket = ioBucketHolder.getNextBucket(); Modified: trunk/rmol/test/sample4.csv =================================================================== --- trunk/rmol/test/sample4.csv 2008-08-27 08:40:35 UTC (rev 158) +++ trunk/rmol/test/sample4.csv 2008-08-28 13:14:55 UTC (rev 159) @@ -1,5 +1,4 @@ price; mean; standard deviation; -1050; 17.3; 5.8; -567; 45.1; 15.0; -527; 73.6; 17.4; -350; 19.8; 6.6; +1295; 0; 1; +1250; 8; 2.82843; +1205; 4; 2.82843; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ben...@us...> - 2008-08-27 08:51:06
|
Revision: 158 http://rmol.svn.sourceforge.net/rmol/?rev=158&view=rev Author: benlardeux Date: 2008-08-27 08:40:35 +0000 (Wed, 27 Aug 2008) Log Message: ----------- Add services that trigger optimization algorithms. Modified Paths: -------------- trunk/rmol/rmol/RMOL.cpp trunk/rmol/rmol/RMOL.hpp Modified: trunk/rmol/rmol/RMOL.cpp =================================================================== --- trunk/rmol/rmol/RMOL.cpp 2008-08-25 12:08:51 UTC (rev 157) +++ trunk/rmol/rmol/RMOL.cpp 2008-08-27 08:40:35 UTC (rev 158) @@ -74,6 +74,23 @@ // ////////////////////////////////////////////////////////////////////// void RMOL:: + optimalOptimisationByMCIntegration (const int K, + BookingLimitVector_T& ioBookingLimitVector) { + + assert (_context != NULL); + const double iCapacity = _context->getCapacity(); + BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); + assert (ioBucketHolder_ptr != NULL); + + Optimiser::optimalOptimisationByMCIntegration (K, iCapacity, + *ioBucketHolder_ptr); + + // Fill up booking vector + ioBucketHolder_ptr->fillup(ioBookingLimitVector); + } + + // ////////////////////////////////////////////////////////////////////// + void RMOL:: optimalOptimisationByDP () { assert (_context != NULL); @@ -86,6 +103,21 @@ // Display ioBucketHolder_ptr->display(); } + + // ////////////////////////////////////////////////////////////////////// + void RMOL:: + optimalOptimisationByDP (BookingLimitVector_T& ioBookingLimitVector) { + + assert (_context != NULL); + const double iCapacity = _context->getCapacity(); + BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); + assert (ioBucketHolder_ptr != NULL); + + Optimiser::optimalOptimisationByDP (iCapacity, *ioBucketHolder_ptr); + + // Fill up booking vector + ioBucketHolder_ptr->fillup(ioBookingLimitVector); + } // ////////////////////////////////////////////////////////////////////// void RMOL::heuristicOptimisationByEmsr () { @@ -101,6 +133,19 @@ } // ////////////////////////////////////////////////////////////////////// + void RMOL::heuristicOptimisationByEmsr (BookingLimitVector_T& ioBookingLimitVector) { + assert (_context != NULL); + const double iCapacity = _context->getCapacity(); + BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); + assert (ioBucketHolder_ptr != NULL); + + Optimiser::heuristicOptimisationByEmsr (iCapacity, *ioBucketHolder_ptr); + + // Fill up booking vector + ioBucketHolder_ptr->fillup(ioBookingLimitVector); + } + + // ////////////////////////////////////////////////////////////////////// void RMOL::heuristicOptimisationByEmsrA () { assert (_context != NULL); const double iCapacity = _context->getCapacity(); @@ -112,6 +157,19 @@ // Display ioBucketHolder_ptr->display(); } + + // ////////////////////////////////////////////////////////////////////// + void RMOL::heuristicOptimisationByEmsrA (BookingLimitVector_T& ioBookingLimitVector) { + assert (_context != NULL); + const double iCapacity = _context->getCapacity(); + BucketHolder* ioBucketHolder_ptr = _context->getBucketHolder(); + assert (ioBucketHolder_ptr != NULL); + + Optimiser::heuristicOptimisationByEmsrA (iCapacity, *ioBucketHolder_ptr); + + // Fill up booking vector + ioBucketHolder_ptr->fillup(ioBookingLimitVector); + } // ////////////////////////////////////////////////////////////////////// void RMOL::heuristicOptimisationByEmsrB () { Modified: trunk/rmol/rmol/RMOL.hpp =================================================================== --- trunk/rmol/rmol/RMOL.hpp 2008-08-25 12:08:51 UTC (rev 157) +++ trunk/rmol/rmol/RMOL.hpp 2008-08-27 08:40:35 UTC (rev 158) @@ -29,22 +29,40 @@ /** Read the input data from a file. */ void readFromInputFile (const std::string& iInputFileName); - /** */ + /** Single resource optimization using the Monte Carlo algorithm. */ void optimalOptimisationByMCIntegration (const int K); - /** */ + /** Single resource optimization that uses Monte-Carlo algorithm and + returns a vector of cumulated booking limits. */ + void optimalOptimisationByMCIntegration (const int K, + BookingLimitVector_T&); + + /** Single resource optimization using dynamic programming. */ void optimalOptimisationByDP (); - /** */ + /** Single resource optimization that uses dynamic programming and + returns a vector of cumulated booking limits. */ + void optimalOptimisationByDP (BookingLimitVector_T&); + + /** Single resource optimization using EMSR heuristic. */ void heuristicOptimisationByEmsr (); + + /** Single resource optimization that uses EMSR heuristic and + returns a vector of cumulated booking limits. */ + void heuristicOptimisationByEmsr (BookingLimitVector_T&); - /** */ + /** Single resource optimization using EMSR-a heuristic. */ void heuristicOptimisationByEmsrA (); + + /** Single resource optimization that uses EMSR-a heuristic and + returns a vector of cumulated booking limits. */ + void heuristicOptimisationByEmsrA (BookingLimitVector_T&); - /** */ + /** Single resource optimization using EMSR-b heuristic. */ void heuristicOptimisationByEmsrB (); - /** */ + /** Single resource optimization that uses EMSR-b heuristic and + returns a vector of cumulated booking limits. */ void heuristicOptimisationByEmsrB (BookingLimitVector_T&); private: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <qua...@us...> - 2008-08-25 12:12:21
|
Revision: 157 http://rmol.svn.sourceforge.net/rmol/?rev=157&view=rev Author: quannaus Date: 2008-08-25 12:08:51 +0000 (Mon, 25 Aug 2008) Log Message: ----------- Made some changes to make EMSR methods more consistent. Modified Paths: -------------- trunk/rmol/rmol/bom/EmsrUtils.cpp Modified: trunk/rmol/rmol/bom/EmsrUtils.cpp =================================================================== --- trunk/rmol/rmol/bom/EmsrUtils.cpp 2008-07-23 07:12:04 UTC (rev 156) +++ trunk/rmol/rmol/bom/EmsrUtils.cpp 2008-08-25 12:08:51 UTC (rev 157) @@ -5,6 +5,7 @@ #include <gsl/gsl_cdf.h> // C #include <math.h> +#include <assert.h> // RMOL #include <rmol/bom/EmsrUtils.hpp> #include <rmol/bom/Bucket.hpp> @@ -27,9 +28,11 @@ const double lNewMean = lAggregatedMean + lCurrentMean; const double lNewSD = sqrt(lAggregatedSD*lAggregatedSD + lCurrentSD*lCurrentSD); - const double lNewAverageYield = (lAggregatedAverageYield*lAggregatedMean + - lCurrentAverageYield*lCurrentMean)/lNewMean; - + double lNewAverageYield = lCurrentAverageYield; + if (lNewMean > 0) { + lNewAverageYield = (lAggregatedAverageYield*lAggregatedMean + + lCurrentAverageYield*lCurrentMean)/lNewMean; + } // Set the new yield range for the new aggregated class/bucket. ioAggregatedBucket.setYieldRange(lNewAverageYield); @@ -47,11 +50,12 @@ const double lSD = ioAggregatedBucket.getStandardDeviation(); const double lAggreatedYield = ioAggregatedBucket.getAverageYield(); const double lNextYield = ioNextBucket.getAverageYield(); + assert (lAggreatedYield != 0); // Compute the protection for the aggregated class/bucket const double lProtection = lMean + gsl_cdf_gaussian_Qinv (lNextYield/lAggreatedYield, lSD); - + return lProtection; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |