Added some files, compiled some stuff in VC++, and finished eoOpSelMason
This commit is contained in:
parent
044acb151b
commit
11be20aefa
14 changed files with 353 additions and 74 deletions
|
|
@ -17,6 +17,7 @@
|
||||||
* based on STL's bit_vector (vector<bool>). *
|
* based on STL's bit_vector (vector<bool>). *
|
||||||
*****************************************************************************/
|
*****************************************************************************/
|
||||||
|
|
||||||
|
|
||||||
template <class F> class eoBin: public eoVector<bool, F>
|
template <class F> class eoBin: public eoVector<bool, F>
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
@ -37,14 +38,9 @@ template <class F> class eoBin: public eoVector<bool, F>
|
||||||
generate(begin(), end(), rnd);
|
generate(begin(), end(), rnd);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/// Constructor from istream.
|
||||||
* Constructor from istream.
|
/// @param is The istream to read from.
|
||||||
* @param is The istream to read from.
|
eoBin(istream& _is):eoVector<bool,F>(_is){};
|
||||||
*/
|
|
||||||
eoBin(istrstream& is)
|
|
||||||
{
|
|
||||||
readFrom(is);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// My class name.
|
/// My class name.
|
||||||
string className() const
|
string className() const
|
||||||
|
|
|
||||||
|
|
@ -10,16 +10,23 @@
|
||||||
#include <eoBin.h> // eoBin
|
#include <eoBin.h> // eoBin
|
||||||
#include <eoOp.h> // eoMonOp
|
#include <eoOp.h> // eoMonOp
|
||||||
|
|
||||||
#ifdef _MSC_VER
|
|
||||||
#define min _MIN
|
|
||||||
#define max _MAX
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
/** @name BitWise Genetic operators
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
Even as these operators might seem general, they are particular versions of genetic
|
||||||
// eoBinRandom --> mofify a chromosome in a random way
|
operators useful only for binary operators. As any set of genetic operators, it must
|
||||||
//-----------------------------------------------------------------------------
|
have a factory that knows how to build them from a description
|
||||||
|
@author GeNeura Team
|
||||||
|
@version 0.1
|
||||||
|
@see eoBin
|
||||||
|
@see eoBitOpFactory
|
||||||
|
*/
|
||||||
|
|
||||||
|
//@{
|
||||||
|
|
||||||
|
/**
|
||||||
|
eoBinRandom --> mofify a chromosome in a random way
|
||||||
|
*/
|
||||||
template<class Chrom> class eoBinRandom: public eoMonOp<Chrom>
|
template<class Chrom> class eoBinRandom: public eoMonOp<Chrom>
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
@ -345,5 +352,5 @@ template<class Chrom> class eoBinUxOver: public eoBinOp<Chrom>
|
||||||
};
|
};
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
//@}
|
||||||
#endif eoBitOp_h
|
#endif eoBitOp_h
|
||||||
|
|
|
||||||
41
eo/src/eoData.h
Normal file
41
eo/src/eoData.h
Normal file
|
|
@ -0,0 +1,41 @@
|
||||||
|
//-----------------------------------------------------------------------------
|
||||||
|
// eoData.h
|
||||||
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#ifndef EODATA_H
|
||||||
|
#define EODATA_H
|
||||||
|
|
||||||
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#include <vector> // vector
|
||||||
|
#include <set> // set
|
||||||
|
#include <string> // string
|
||||||
|
|
||||||
|
using namespace std;
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef _MSC_VER
|
||||||
|
#include <limits> // MAXDOUBLE
|
||||||
|
#define MAXFLOAT numeric_limits<float>::max()
|
||||||
|
#define MINFLOAT numeric_limits<float>::min()
|
||||||
|
#define MAXDOUBLE numeric_limits<double>::max()
|
||||||
|
#define MAXINT numeric_limits<int>::max()
|
||||||
|
#define min _MIN
|
||||||
|
#define max _MAX
|
||||||
|
#else
|
||||||
|
#include <limits.h>
|
||||||
|
#ifndef MAXFLOAT
|
||||||
|
#define MAXFLOAT (float)1e127
|
||||||
|
#define MAXDOUBLE (double)1.79769313486231570e+308
|
||||||
|
#define MAXINT 2147483647
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef _MSC_VER
|
||||||
|
#include <math.h>
|
||||||
|
#define _isnan isnan
|
||||||
|
#endif
|
||||||
|
|
||||||
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#endif npi_DATATYPES_H
|
||||||
|
|
@ -11,45 +11,40 @@
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
* eoInsertion: A replacement algorithm.
|
* eoInsertion: A replacement algorithm.
|
||||||
* Creates a new population with all the breeders and the best individuals
|
* Takes two populations: breeders and original populations. At the en of the
|
||||||
* from the original population.
|
* process, the original population has chenge in the followin way:
|
||||||
|
* (1) the worst individuals haa been erased
|
||||||
|
* (2) the best individuals from the breeders has been added
|
||||||
*****************************************************************************/
|
*****************************************************************************/
|
||||||
|
|
||||||
template<class Chrom> class eoInsertion: public eoMerge<Chrom>
|
template<class Chrom> class eoInsertion: public eoMerge<Chrom>
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
/// (Default) Constructor.
|
/// (Default) Constructor.
|
||||||
eoInsertion(const float& _rate = 1.0): eoMerge(_rate) {}
|
eoInsertion(const float& _rate = 1.0): eoMerge<Chrom>(_rate) {}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a new population based on breeders and original populations.
|
* Creates a new population based on breeders and original population
|
||||||
* @param breeders The population of breeders.
|
* @param breeders The population of breeders.
|
||||||
* @param pop The original population.
|
* @param pop The original population.
|
||||||
*/
|
*/
|
||||||
void operator()(const eoPop<Chrom>& breeders, eoPop<Chrom>& pop)
|
void operator()(const eoPop<Chrom>& breeders, eoPop<Chrom>& pop)
|
||||||
{
|
{
|
||||||
int new_size = static_cast<int>(pop.size() * rate());
|
|
||||||
cout << "new_size = " << new_size << endl;
|
|
||||||
|
|
||||||
if (new_size == breeders.size())
|
|
||||||
{
|
|
||||||
pop = breeders;
|
|
||||||
}
|
|
||||||
else if (new_size < breeders.size())
|
|
||||||
{
|
|
||||||
pop = breeders;
|
|
||||||
sort(pop.begin(), pop.end());
|
sort(pop.begin(), pop.end());
|
||||||
pop.erase(pop.begin(), pop.begin() - new_size + pop.size());
|
|
||||||
}
|
if (rated() > 1)
|
||||||
|
pop.erase(pop.end() +
|
||||||
|
(int)(pop.size() * (rate() - 1) - breeders.size()),
|
||||||
|
pop.end());
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
sort(pop.begin(), pop.end());
|
cout << "eoInsertion no funciona con rate < 1"
|
||||||
pop.erase(pop.begin(),
|
exit(1);
|
||||||
pop.begin() + breeders.size() + pop.size() - new_size);
|
}
|
||||||
|
|
||||||
copy(breeders.begin(), breeders.end(),
|
copy(breeders.begin(), breeders.end(),
|
||||||
back_insert_iterator<eoPop<Chrom> >(pop));
|
back_insert_iterator<eoPop<Chrom> >(pop));
|
||||||
}
|
}
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,6 @@
|
||||||
|
|
||||||
#include <functional>
|
#include <functional>
|
||||||
|
|
||||||
#include <values.h> // MINFLOAT
|
|
||||||
#include <numeric> // accumulate
|
#include <numeric> // accumulate
|
||||||
#include <eo> // eoPop eoSelect
|
#include <eo> // eoPop eoSelect
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,7 @@
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#include <eoData.h> // For limits definition
|
||||||
#include <iostream> // istream, ostream
|
#include <iostream> // istream, ostream
|
||||||
#include <string> // para string
|
#include <string> // para string
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -16,9 +16,13 @@
|
||||||
|
|
||||||
What is a genetic algorithm without genetic operators? There is a genetic operator hierarchy, with
|
What is a genetic algorithm without genetic operators? There is a genetic operator hierarchy, with
|
||||||
eoOp as father and eoMonOp (monary or unary operator) and eoBinOp (binary operator) as siblings. Nobody
|
eoOp as father and eoMonOp (monary or unary operator) and eoBinOp (binary operator) as siblings. Nobody
|
||||||
should subclass eoOp, you should subclass eoBinOp or eoMonOp, those are the ones actually used here.
|
should subclass eoOp, you should subclass eoBinOp or eoMonOp, those are the ones actually used here.\\
|
||||||
|
#eoOp#s are only printable objects, so if you want to build them from a file, it has to
|
||||||
|
be done in another class, namely factories. Each hierarchy of #eoOp#s should have its own
|
||||||
|
factory, which know how to build them from a description in a file.
|
||||||
@author GeNeura Team
|
@author GeNeura Team
|
||||||
@version 0.0
|
@version 0.1
|
||||||
|
@see eoOpFactory
|
||||||
*/
|
*/
|
||||||
//@{
|
//@{
|
||||||
|
|
||||||
|
|
@ -57,7 +61,7 @@ public:
|
||||||
*/
|
*/
|
||||||
virtual void printOn(ostream& _os) const {
|
virtual void printOn(ostream& _os) const {
|
||||||
_os << className();
|
_os << className();
|
||||||
_os << arity;
|
// _os << arity;
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Inherited from eoObject
|
/** Inherited from eoObject
|
||||||
|
|
|
||||||
|
|
@ -60,7 +60,7 @@ public:
|
||||||
throw objectTypeStr;
|
throw objectTypeStr;
|
||||||
}
|
}
|
||||||
return opPtr;
|
return opPtr;
|
||||||
}
|
};
|
||||||
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,10 @@
|
||||||
#define _EOOPSELMASON_H
|
#define _EOOPSELMASON_H
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
#include <eoOpSelector.h>
|
#include <eoProportionalOpSel.h>
|
||||||
|
#include <eoOpFactory.h> // for eoFactory and eoOpFactory
|
||||||
|
|
||||||
|
#include <map>
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
@ -19,14 +22,16 @@ template<class eoClass>
|
||||||
class eoOpSelMason: public eoFactory<eoOpSelector<eoClass> > {
|
class eoOpSelMason: public eoFactory<eoOpSelector<eoClass> > {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
typedef vector<eoOp<eoClass>* > vOpP;
|
||||||
|
typedef map<eoOpSelector<eoClass>*, vOpP > MEV;
|
||||||
|
|
||||||
/// @name ctors and dtors
|
/// @name ctors and dtors
|
||||||
//{@
|
//{@
|
||||||
/// constructor
|
/// constructor
|
||||||
eoOpSelMason( ) {}
|
eoOpSelMason( eoOpFactory<eoClass>& _opFact): operatorFactory( _opFact ) {};
|
||||||
|
|
||||||
/// destructor
|
/// destructor
|
||||||
virtual ~eoOpSelMason() {}
|
virtual ~eoOpSelMason() {};
|
||||||
//@}
|
//@}
|
||||||
|
|
||||||
/** Factory methods: creates an object from an istream, reading from
|
/** Factory methods: creates an object from an istream, reading from
|
||||||
|
|
@ -41,33 +46,47 @@ public:
|
||||||
from outside, using the #destroy# method
|
from outside, using the #destroy# method
|
||||||
*/
|
*/
|
||||||
virtual eoOpSelector<eoClass>* make(istream& _is) {
|
virtual eoOpSelector<eoClass>* make(istream& _is) {
|
||||||
|
|
||||||
string opSelName;
|
string opSelName;
|
||||||
_is >> opSelName;
|
_is >> opSelName;
|
||||||
eoMonOpFactory<eoClass> selMaker;
|
eoOpSelector<eoClass>* opSelectorP;
|
||||||
|
// Build the operator selector
|
||||||
|
if ( opSelName == "eoProportionalOpSel" ) {
|
||||||
|
opSelectorP = new eoProportionalOpSel<eoClass>();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Temp vector for storing pointers
|
||||||
|
vOpP tmpPVec;
|
||||||
// read operator rate and name
|
// read operator rate and name
|
||||||
while ( _is ) {
|
while ( _is ) {
|
||||||
float rate;
|
float rate;
|
||||||
_is >> rate;
|
_is >> rate;
|
||||||
|
if ( _is ) {
|
||||||
|
eoOp<eoClass>* op = operatorFactory.make( _is ); // This reads the rest of the line
|
||||||
|
// Add the operators to the selector, don´t pay attention to the IDs
|
||||||
|
opSelectorP->addOp( *op, rate );
|
||||||
|
// Keep it in the store, to destroy later
|
||||||
|
tmpPVec.push_back( op );
|
||||||
|
} // if
|
||||||
|
} // while
|
||||||
|
|
||||||
|
// Put it in the map
|
||||||
|
allocMap.insert( MEV::value_type( opSelectorP, tmpPVec ) );
|
||||||
|
|
||||||
// Create an stream
|
return opSelectorP;
|
||||||
strstream s0;
|
};
|
||||||
eoMonOp<IEO>* op0 = selMaker.make( s0 );
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
///@name eoObject methods
|
///@name eoObject methods
|
||||||
//@{
|
//@{
|
||||||
/** Return the class id */
|
/** Return the class id */
|
||||||
virtual string className() const { return "eoFactory"; }
|
virtual string className() const { return "eoOpSelMason"; }
|
||||||
|
|
||||||
/** Read and print are left without implementation */
|
|
||||||
//@}
|
//@}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
map<eoOpSelector<eoClass>*,vector<eoOp<eoClass>* > > allocMap;
|
map<eoOpSelector<eoClass>*,vector<eoOp<eoClass>* > > allocMap;
|
||||||
|
eoOpFactory<eoClass>& operatorFactory;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
#endif _EOFACTORY_H
|
#endif _EOOPSELMASON_H
|
||||||
|
|
|
||||||
|
|
@ -15,18 +15,6 @@ Package=<4>
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
Project: "prueba"=.\prueba\prueba.dsp - Package Owner=<4>
|
|
||||||
|
|
||||||
Package=<5>
|
|
||||||
{{{
|
|
||||||
}}}
|
|
||||||
|
|
||||||
Package=<4>
|
|
||||||
{{{
|
|
||||||
}}}
|
|
||||||
|
|
||||||
###############################################################################
|
|
||||||
|
|
||||||
Project: "t_eoaged"=.\t_eoaged.dsp - Package Owner=<4>
|
Project: "t_eoaged"=.\t_eoaged.dsp - Package Owner=<4>
|
||||||
|
|
||||||
Package=<5>
|
Package=<5>
|
||||||
|
|
@ -75,6 +63,18 @@ Package=<4>
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
|
Project: "t_eoinsertion"=.\t_eoinsertion.dsp - Package Owner=<4>
|
||||||
|
|
||||||
|
Package=<5>
|
||||||
|
{{{
|
||||||
|
}}}
|
||||||
|
|
||||||
|
Package=<4>
|
||||||
|
{{{
|
||||||
|
}}}
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
Project: "t_eornd"=.\t_eornd.dsp - Package Owner=<4>
|
Project: "t_eornd"=.\t_eornd.dsp - Package Owner=<4>
|
||||||
|
|
||||||
Package=<5>
|
Package=<5>
|
||||||
|
|
@ -195,6 +195,18 @@ Package=<4>
|
||||||
|
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
|
Project: "t_opselmason"=.\t_opselmason.dsp - Package Owner=<4>
|
||||||
|
|
||||||
|
Package=<5>
|
||||||
|
{{{
|
||||||
|
}}}
|
||||||
|
|
||||||
|
Package=<4>
|
||||||
|
{{{
|
||||||
|
}}}
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
Project: "t_pop"=.\t_pop.dsp - Package Owner=<4>
|
Project: "t_pop"=.\t_pop.dsp - Package Owner=<4>
|
||||||
|
|
||||||
Package=<5>
|
Package=<5>
|
||||||
|
|
|
||||||
100
eo/win/t_eoinsertion.dsp
Normal file
100
eo/win/t_eoinsertion.dsp
Normal file
|
|
@ -0,0 +1,100 @@
|
||||||
|
# Microsoft Developer Studio Project File - Name="t_eoinsertion" - Package Owner=<4>
|
||||||
|
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||||
|
# ** DO NOT EDIT **
|
||||||
|
|
||||||
|
# TARGTYPE "Win32 (x86) Console Application" 0x0103
|
||||||
|
|
||||||
|
CFG=t_eoinsertion - Win32 Debug
|
||||||
|
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||||
|
!MESSAGE use the Export Makefile command and run
|
||||||
|
!MESSAGE
|
||||||
|
!MESSAGE NMAKE /f "t_eoinsertion.mak".
|
||||||
|
!MESSAGE
|
||||||
|
!MESSAGE You can specify a configuration when running NMAKE
|
||||||
|
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||||
|
!MESSAGE
|
||||||
|
!MESSAGE NMAKE /f "t_eoinsertion.mak" CFG="t_eoinsertion - Win32 Debug"
|
||||||
|
!MESSAGE
|
||||||
|
!MESSAGE Possible choices for configuration are:
|
||||||
|
!MESSAGE
|
||||||
|
!MESSAGE "t_eoinsertion - Win32 Release" (based on "Win32 (x86) Console Application")
|
||||||
|
!MESSAGE "t_eoinsertion - Win32 Debug" (based on "Win32 (x86) Console Application")
|
||||||
|
!MESSAGE
|
||||||
|
|
||||||
|
# Begin Project
|
||||||
|
# PROP AllowPerConfigDependencies 0
|
||||||
|
# PROP Scc_ProjName ""
|
||||||
|
# PROP Scc_LocalPath ""
|
||||||
|
CPP=cl.exe
|
||||||
|
RSC=rc.exe
|
||||||
|
|
||||||
|
!IF "$(CFG)" == "t_eoinsertion - Win32 Release"
|
||||||
|
|
||||||
|
# PROP BASE Use_MFC 0
|
||||||
|
# PROP BASE Use_Debug_Libraries 0
|
||||||
|
# PROP BASE Output_Dir "Release"
|
||||||
|
# PROP BASE Intermediate_Dir "Release"
|
||||||
|
# PROP BASE Target_Dir ""
|
||||||
|
# PROP Use_MFC 0
|
||||||
|
# PROP Use_Debug_Libraries 0
|
||||||
|
# PROP Output_Dir "Release"
|
||||||
|
# PROP Intermediate_Dir "Release"
|
||||||
|
# PROP Target_Dir ""
|
||||||
|
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
|
||||||
|
# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
|
||||||
|
# ADD BASE RSC /l 0xc0a /d "NDEBUG"
|
||||||
|
# ADD RSC /l 0xc0a /d "NDEBUG"
|
||||||
|
BSC32=bscmake.exe
|
||||||
|
# ADD BASE BSC32 /nologo
|
||||||
|
# ADD BSC32 /nologo
|
||||||
|
LINK32=link.exe
|
||||||
|
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
|
||||||
|
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
|
||||||
|
|
||||||
|
!ELSEIF "$(CFG)" == "t_eoinsertion - Win32 Debug"
|
||||||
|
|
||||||
|
# PROP BASE Use_MFC 0
|
||||||
|
# PROP BASE Use_Debug_Libraries 1
|
||||||
|
# PROP BASE Output_Dir "t_eoinsertion___Win32_Debug"
|
||||||
|
# PROP BASE Intermediate_Dir "t_eoinsertion___Win32_Debug"
|
||||||
|
# PROP BASE Target_Dir ""
|
||||||
|
# PROP Use_MFC 0
|
||||||
|
# PROP Use_Debug_Libraries 1
|
||||||
|
# PROP Output_Dir "t_eoinsertion___Win32_Debug"
|
||||||
|
# PROP Intermediate_Dir "t_eoinsertion___Win32_Debug"
|
||||||
|
# PROP Target_Dir ""
|
||||||
|
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
|
||||||
|
# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
|
||||||
|
# ADD BASE RSC /l 0xc0a /d "_DEBUG"
|
||||||
|
# ADD RSC /l 0xc0a /d "_DEBUG"
|
||||||
|
BSC32=bscmake.exe
|
||||||
|
# ADD BASE BSC32 /nologo
|
||||||
|
# ADD BSC32 /nologo
|
||||||
|
LINK32=link.exe
|
||||||
|
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
|
||||||
|
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
|
||||||
|
|
||||||
|
!ENDIF
|
||||||
|
|
||||||
|
# Begin Target
|
||||||
|
|
||||||
|
# Name "t_eoinsertion - Win32 Release"
|
||||||
|
# Name "t_eoinsertion - Win32 Debug"
|
||||||
|
# Begin Group "Source Files"
|
||||||
|
|
||||||
|
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||||
|
# Begin Source File
|
||||||
|
|
||||||
|
SOURCE="..\test\t-eoinsertion.cpp"
|
||||||
|
# End Source File
|
||||||
|
# End Group
|
||||||
|
# Begin Group "Header Files"
|
||||||
|
|
||||||
|
# PROP Default_Filter "h;hpp;hxx;hm;inl"
|
||||||
|
# End Group
|
||||||
|
# Begin Group "Resource Files"
|
||||||
|
|
||||||
|
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
|
||||||
|
# End Group
|
||||||
|
# End Target
|
||||||
|
# End Project
|
||||||
|
|
@ -65,7 +65,7 @@ LINK32=link.exe
|
||||||
# PROP Ignore_Export_Lib 0
|
# PROP Ignore_Export_Lib 0
|
||||||
# PROP Target_Dir ""
|
# PROP Target_Dir ""
|
||||||
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
|
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
|
||||||
# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
|
# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FR /YX /FD /GZ /c
|
||||||
# ADD BASE RSC /l 0xc0a /d "_DEBUG"
|
# ADD BASE RSC /l 0xc0a /d "_DEBUG"
|
||||||
# ADD RSC /l 0xc0a /d "_DEBUG"
|
# ADD RSC /l 0xc0a /d "_DEBUG"
|
||||||
BSC32=bscmake.exe
|
BSC32=bscmake.exe
|
||||||
|
|
|
||||||
101
eo/win/t_opselmason.dsp
Normal file
101
eo/win/t_opselmason.dsp
Normal file
|
|
@ -0,0 +1,101 @@
|
||||||
|
# Microsoft Developer Studio Project File - Name="t_opselmason" - Package Owner=<4>
|
||||||
|
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||||
|
# ** DO NOT EDIT **
|
||||||
|
|
||||||
|
# TARGTYPE "Win32 (x86) Console Application" 0x0103
|
||||||
|
|
||||||
|
CFG=t_opselmason - Win32 Debug
|
||||||
|
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||||
|
!MESSAGE use the Export Makefile command and run
|
||||||
|
!MESSAGE
|
||||||
|
!MESSAGE NMAKE /f "t_opselmason.mak".
|
||||||
|
!MESSAGE
|
||||||
|
!MESSAGE You can specify a configuration when running NMAKE
|
||||||
|
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||||
|
!MESSAGE
|
||||||
|
!MESSAGE NMAKE /f "t_opselmason.mak" CFG="t_opselmason - Win32 Debug"
|
||||||
|
!MESSAGE
|
||||||
|
!MESSAGE Possible choices for configuration are:
|
||||||
|
!MESSAGE
|
||||||
|
!MESSAGE "t_opselmason - Win32 Release" (based on "Win32 (x86) Console Application")
|
||||||
|
!MESSAGE "t_opselmason - Win32 Debug" (based on "Win32 (x86) Console Application")
|
||||||
|
!MESSAGE
|
||||||
|
|
||||||
|
# Begin Project
|
||||||
|
# PROP AllowPerConfigDependencies 0
|
||||||
|
# PROP Scc_ProjName ""
|
||||||
|
# PROP Scc_LocalPath ""
|
||||||
|
CPP=cl.exe
|
||||||
|
RSC=rc.exe
|
||||||
|
|
||||||
|
!IF "$(CFG)" == "t_opselmason - Win32 Release"
|
||||||
|
|
||||||
|
# PROP BASE Use_MFC 0
|
||||||
|
# PROP BASE Use_Debug_Libraries 0
|
||||||
|
# PROP BASE Output_Dir "Release"
|
||||||
|
# PROP BASE Intermediate_Dir "Release"
|
||||||
|
# PROP BASE Target_Dir ""
|
||||||
|
# PROP Use_MFC 0
|
||||||
|
# PROP Use_Debug_Libraries 0
|
||||||
|
# PROP Output_Dir "Release"
|
||||||
|
# PROP Intermediate_Dir "Release"
|
||||||
|
# PROP Target_Dir ""
|
||||||
|
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
|
||||||
|
# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
|
||||||
|
# ADD BASE RSC /l 0xc0a /d "NDEBUG"
|
||||||
|
# ADD RSC /l 0xc0a /d "NDEBUG"
|
||||||
|
BSC32=bscmake.exe
|
||||||
|
# ADD BASE BSC32 /nologo
|
||||||
|
# ADD BSC32 /nologo
|
||||||
|
LINK32=link.exe
|
||||||
|
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
|
||||||
|
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
|
||||||
|
|
||||||
|
!ELSEIF "$(CFG)" == "t_opselmason - Win32 Debug"
|
||||||
|
|
||||||
|
# PROP BASE Use_MFC 0
|
||||||
|
# PROP BASE Use_Debug_Libraries 1
|
||||||
|
# PROP BASE Output_Dir "t_opselmason___Win32_Debug"
|
||||||
|
# PROP BASE Intermediate_Dir "t_opselmason___Win32_Debug"
|
||||||
|
# PROP BASE Target_Dir ""
|
||||||
|
# PROP Use_MFC 0
|
||||||
|
# PROP Use_Debug_Libraries 1
|
||||||
|
# PROP Output_Dir "t_opselmason___Win32_Debug"
|
||||||
|
# PROP Intermediate_Dir "t_opselmason___Win32_Debug"
|
||||||
|
# PROP Ignore_Export_Lib 0
|
||||||
|
# PROP Target_Dir ""
|
||||||
|
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
|
||||||
|
# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FR /YX /FD /GZ /c
|
||||||
|
# ADD BASE RSC /l 0xc0a /d "_DEBUG"
|
||||||
|
# ADD RSC /l 0xc0a /d "_DEBUG"
|
||||||
|
BSC32=bscmake.exe
|
||||||
|
# ADD BASE BSC32 /nologo
|
||||||
|
# ADD BSC32 /nologo
|
||||||
|
LINK32=link.exe
|
||||||
|
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
|
||||||
|
# ADD LINK32 eo.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
|
||||||
|
|
||||||
|
!ENDIF
|
||||||
|
|
||||||
|
# Begin Target
|
||||||
|
|
||||||
|
# Name "t_opselmason - Win32 Release"
|
||||||
|
# Name "t_opselmason - Win32 Debug"
|
||||||
|
# Begin Group "Source Files"
|
||||||
|
|
||||||
|
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||||
|
# Begin Source File
|
||||||
|
|
||||||
|
SOURCE=..\test\t_opselmason.cpp
|
||||||
|
# End Source File
|
||||||
|
# End Group
|
||||||
|
# Begin Group "Header Files"
|
||||||
|
|
||||||
|
# PROP Default_Filter "h;hpp;hxx;hm;inl"
|
||||||
|
# End Group
|
||||||
|
# Begin Group "Resource Files"
|
||||||
|
|
||||||
|
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
|
||||||
|
# End Group
|
||||||
|
# End Target
|
||||||
|
# End Project
|
||||||
|
|
@ -86,6 +86,10 @@ LINK32=link.exe
|
||||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
|
|
||||||
|
SOURCE=..\test\t_opselmason.cpp
|
||||||
|
# End Source File
|
||||||
|
# Begin Source File
|
||||||
|
|
||||||
SOURCE=..\test\t_pop.cpp
|
SOURCE=..\test\t_pop.cpp
|
||||||
# End Source File
|
# End Source File
|
||||||
# End Group
|
# End Group
|
||||||
|
|
|
||||||
Reference in a new issue