dummy merge

This commit is contained in:
nojhan 2011-07-26 17:53:20 +02:00
commit 4e0a6fdeff
4 changed files with 373 additions and 329 deletions

View file

@ -21,8 +21,8 @@
Contact: http://eodev.sourceforge.net Contact: http://eodev.sourceforge.net
Authors: Authors:
Johann Dréo <johann.dreo@thalesgroup.com> Johann Dréo <johann.dreo@thalesgroup.com>
Caner Candan <caner.candan@thalesgroup.com> Caner Candan <caner.candan@thalesgroup.com>
*/ */
@ -40,17 +40,7 @@ Authors:
#include "eoLogger.h" #include "eoLogger.h"
eoLogger::eoLogger() : void eoLogger::_init()
std::ostream(&_obuf),
_verbose("quiet", "verbose", "Set the verbose level", 'v'),
_printVerboseLevels(false, "print-verbose-levels", "Print verbose levels", 'l'),
_output("", "output", "Redirect a standard output to a file", 'o'),
_selectedLevel(eo::progress),
_contextLevel(eo::quiet),
_fd(2),
_obuf(_fd, _contextLevel, _selectedLevel)
{ {
_standard_io_streams[&std::cout] = 1; _standard_io_streams[&std::cout] = 1;
_standard_io_streams[&std::clog] = 2; _standard_io_streams[&std::clog] = 2;
@ -67,6 +57,37 @@ eoLogger::eoLogger() :
addLevel("xdebug", eo::xdebug); addLevel("xdebug", eo::xdebug);
} }
eoLogger::eoLogger() :
std::ostream(&_obuf),
_verbose("quiet", "verbose", "Set the verbose level", 'v'),
_printVerboseLevels(false, "print-verbose-levels", "Print verbose levels", 'l'),
_output("", "output", "Redirect a standard output to a file", 'o'),
_selectedLevel(eo::progress),
_contextLevel(eo::quiet),
_fd(2),
_obuf(_fd, _contextLevel, _selectedLevel)
{
_init();
}
eoLogger::eoLogger(eo::file file) :
std::ostream(&_obuf),
_verbose("quiet", "verbose", "Set the verbose level", 'v'),
_printVerboseLevels(false, "print-verbose-levels", "Print verbose levels", 'l'),
_output("", "output", "Redirect a standard output to a file", 'o'),
_selectedLevel(eo::progress),
_contextLevel(eo::quiet),
_fd(2),
_obuf(_fd, _contextLevel, _selectedLevel)
{
_init();
*this << file;
}
eoLogger::~eoLogger() eoLogger::~eoLogger()
{ {
if (_fd > 2) { ::close(_fd); } if (_fd > 2) { ::close(_fd); }
@ -99,7 +120,7 @@ void eoLogger::_createParameters( eoParser& parser )
//------------------------------------------------------------------ //------------------------------------------------------------------
// // we're gonna print the list of levels if -l parameter is used. // we're gonna print the list of levels if -l parameter is used.
//------------------------------------------------------------------ //------------------------------------------------------------------
if ( _printVerboseLevels.value() ) if ( _printVerboseLevels.value() )
@ -195,7 +216,6 @@ namespace eo
{} {}
} }
//! make_verbose gets level of verbose and sets it in eoLogger
void make_verbose(eoParser& parser) void make_verbose(eoParser& parser)
{ {
eo::log._createParameters( parser ); eo::log._createParameters( parser );

View file

@ -142,12 +142,20 @@ class eoLogger : public eoObject,
public std::ostream public std::ostream
{ {
public: public:
//! default ctor
eoLogger(); eoLogger();
//! overidded ctor in order to instanciate a logger with a file define in parameter
eoLogger(eo::file file);
//! dtor
~eoLogger(); ~eoLogger();
//! common function for all eo objects
virtual std::string className() const; virtual std::string className() const;
//! Print the available levels on the standard output //! Print the available levels on the standard output
//! enablable with the option -l
void printLevels() const; void printLevels() const;
/*! Returns the selected levels, that is the one asked by the user /*! Returns the selected levels, that is the one asked by the user
@ -163,11 +171,16 @@ public:
inline eo::Levels getLevelContext() const { return _contextLevel; } inline eo::Levels getLevelContext() const { return _contextLevel; }
protected: protected:
//! in order to add a level of verbosity
void addLevel(std::string name, eo::Levels level); void addLevel(std::string name, eo::Levels level);
private: private:
//! used by the function make_verbose in order to add options to specify the verbose level
void _createParameters( eoParser& ); void _createParameters( eoParser& );
//! used by the set of ctors to initiate some useful variables
void _init();
private: private:
/** /**
* outbuf * outbuf
@ -195,21 +208,26 @@ public:
/** /**
* operator<< used there to set a verbose mode. * operator<< used there to set a verbose mode.
*/ */
//! in order to use stream style to define the context verbose level where the following logs will be saved
friend eoLogger& operator<<(eoLogger&, const eo::Levels); friend eoLogger& operator<<(eoLogger&, const eo::Levels);
/** /**
* operator<< used there to set a filename through the class file. * operator<< used there to set a filename through the class file.
*/ */
//! in order to use stream style to define a file to dump instead the standart output
friend eoLogger& operator<<(eoLogger&, eo::file); friend eoLogger& operator<<(eoLogger&, eo::file);
/** /**
* operator<< used there to set a verbose level through the class setlevel. * operator<< used there to set a verbose level through the class setlevel.
*/ */
//! in order to use stream style to define manually the verbose level instead using options
friend eoLogger& operator<<(eoLogger&, eo::setlevel); friend eoLogger& operator<<(eoLogger&, eo::setlevel);
/** /**
* operator<< used there to be able to use std::cout to say that we wish to redirect back the buffer to a standard output. * operator<< used there to be able to use std::cout to say that we wish to redirect back the buffer to a standard output.
*/ */
//! in order to use stream style to go back to a standart output defined by STL
//! and to get retro-compatibility
friend eoLogger& operator<<(eoLogger&, std::ostream&); friend eoLogger& operator<<(eoLogger&, std::ostream&);
private: private:
@ -254,6 +272,7 @@ private:
/** @example t-eoLogger.cpp /** @example t-eoLogger.cpp
*/ */
//! make_verbose gets level of verbose and sets it in eoLogger
void make_verbose(eoParser&); void make_verbose(eoParser&);
namespace eo namespace eo

View file

@ -1,25 +1,36 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"> <html xmlns="http://www.w3.org/1999/xhtml">
<head> <head>
<meta http-equiv="Content-Type" content="text/HTML; charset=utf-8" /> <meta http-equiv="Content-Type" content="text/HTML; charset=utf-8" />
<meta name=" robot" content="follow, index, all" /> <meta name=" robot" content="follow, index, all" />
<meta name="author" content="EO development team"> <meta name="author" content="EO development team" />
<meta name="keywords" content="Class libraries, evolutionary computation, evolution strategies, genetic algorithms, genetic programming, simulated annealing, C++"> <meta name="keywords" content="Class libraries, evolutionary computation, evolution strategies, genetic algorithms, genetic programming, simulated annealing, C++" />
<meta name="resource-type" content="document"> <meta name="resource-type" content="document" />
<meta name="distribution" content="Global"> <meta name="distribution" content="Global" />
<link rel="icon" type="image/png" href="eo_ico.png" /> <link rel="icon" type="image/png" href="eo_ico.png" />
<link rel="stylesheet" type="text/css" href="lightblue.css" title="Default" /> <link rel="stylesheet" type="text/css" href="lightblue.css" title="Default" />
<title>Evolving Objects (EO): Evolutionary Computation Framework</title> <title>Evolving Objects (EO): Evolutionary Computation Framework</title>
</head>
<body> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<script type="text/javascript" src="https://static.jappix.com/php/get.php?l=fr&amp;t=js&amp;g=mini.xml"></script>
<div id="alt"> <script type="text/javascript">
jQuery(document).ready(function() {
MINI_GROUPCHATS = ["eo@chat.jabberfr.org"];
MINI_ANIMATE = true;
launchMini(false, true, "anonymous.jappix.com");
});
</script>
</head>
<body>
<div id="alt">
<img style="clear:left;" src="eo_logo.png" alt="Evolving Objects logo" /> <img style="clear:left;" src="eo_logo.png" alt="Evolving Objects logo" />
<div id="menu"> <div id="menu">
<p>C++ evolutionary computation components framework</p> <p>C++ evolutionary computation components framework</p>
@ -63,7 +74,7 @@
</li> </li>
<li> <li>
<ol> <ol>
<a href="#Development">Development</a></li> <lh><a href="#Development">Development</a></lh>
<li><a href="#Mailing-lists">Mailing-lists</a></li> <li><a href="#Mailing-lists">Mailing-lists</a></li>
<li><a href="#Get-involved">Get involved</a></li> <li><a href="#Get-involved">Get involved</a></li>
<li><a href="#Related-software">Related software</a></li> <li><a href="#Related-software">Related software</a></li>
@ -184,10 +195,7 @@
<br /> <br />
</p> </p>
<h1><a name="Features"></a>Features <a href="#Plan"></a></h1>
<h1><a name="Features"></a>Features <a href="#Plan"></a></h1>
<h2><a name="Component-based"></a>Component-based framework</h2> <h2><a name="Component-based"></a>Component-based framework</h2>
@ -245,9 +253,9 @@
</li> </li>
<li>Ready-to-use variations operators: <li>Ready-to-use variations operators:
<ul> <ul>
<li>uniform initializer, <li>uniform initializer,</li>
<li>gaussian mutation, <li>gaussian mutation,</li>
<li>subtree crossover, <li>subtree crossover,</li>
<li></li> <li></li>
</ul> </ul>
</li> </li>
@ -287,7 +295,7 @@
<li>Linux x86_64 with GCC 3.x and GCC 4.x</li> <li>Linux x86_64 with GCC 3.x and GCC 4.x</li>
<li>MacOS X/Darwin PowerPC with GCC 3.x</li> <li>MacOS X/Darwin PowerPC with GCC 3.x</li>
<li>MacOS X/Darwin x86 with GCC 4.x</li> <li>MacOS X/Darwin x86 with GCC 4.x</li>
<li>Microsoft Windows using Cygwin's GCC 3.x (cygming special). <li>Microsoft Windows using Cygwin's GCC 3.x (cygming special).</li>
<li>Microsoft Windows using Visual Studio 2003/2005; projects files <li>Microsoft Windows using Visual Studio 2003/2005; projects files
are provided.</li> are provided.</li>
<li>Solaris SPARC with GCC 3.x</li> <li>Solaris SPARC with GCC 3.x</li>
@ -296,8 +304,7 @@
<p>Recent versions of EO uses the <a href="http://www.cmake.org">CMake</a> portable build system, that permits to easily generate a build chain for your environment.</p> <p>Recent versions of EO uses the <a href="http://www.cmake.org">CMake</a> portable build system, that permits to easily generate a build chain for your environment.</p>
<p> If you have tested EO on a system not listed here, please <a <p> If you have tested EO on a system not listed here, please <a href="mailto:eodev-main@lists.sourceforge.net?subject=test-report">let
href="mailto:eodev-main@lists.sourceforge.net?subject=test-report">let
us know</a>. </p> us know</a>. </p>
<p> If you are working on a system with an older C++ compiler there <p> If you are working on a system with an older C++ compiler there
@ -307,14 +314,12 @@
<h2><a name="Presentations"></a>Presentations</h2> <h2><a name="Presentations"></a>Presentations</h2>
<p> A functional and "philosophical" overview of EO was presented at <a <p> A functional and "philosophical" overview of EO was presented at <a href="http://www.cmap.polytechnique.fr/%7Eea01/">EA'01 conference</a>.
href="http://www.cmap.polytechnique.fr/%7Eea01/">EA'01 conference</a>. You can download <a href="http://eodev.sourceforge.net/eo/doc/EO_EA2001.pdf">the paper</a>
You can download <a
href="http://eodev.sourceforge.net/eo/doc/EO_EA2001.pdf">the paper</a>
or <a href="http://eodev.sourceforge.net/eo/doc/LeCreusot.pdf">the or <a href="http://eodev.sourceforge.net/eo/doc/LeCreusot.pdf">the
slides</a>, or browse them right here:</p> slides</a>, or browse them right here:</p>
<div style="text-align:center;" id="__ss_4878872"><strong style="display:block;margin:12px 0 4px"><a href="http://www.slideshare.net/nojhan/evolving-objects-yet-another-evolutionary-computation-library" title="Evolving Objects: Yet Another Evolutionary Computation Library?">Evolving Objects: Yet Another Evolutionary Computation Library?</a></strong><object id="__sse4878872" width="425" height="355"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=lecreusot-100731121355-phpapp01&stripped_title=evolving-objects-yet-another-evolutionary-computation-library" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed name="__sse4878872" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=lecreusot-100731121355-phpapp01&stripped_title=evolving-objects-yet-another-evolutionary-computation-library" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object></div> <div style="text-align:center;" id="__ss_4878872"><strong style="display:block;margin:12px 0 4px"><a href="http://www.slideshare.net/nojhan/evolving-objects-yet-another-evolutionary-computation-library" title="Evolving Objects: Yet Another Evolutionary Computation Library?">Evolving Objects: Yet Another Evolutionary Computation Library?</a></strong><object id="__sse4878872" width="425" height="355"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=lecreusot-100731121355-phpapp01&stripped_title=evolving-objects-yet-another-evolutionary-computation-library" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed name="__sse4878872" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=lecreusot-100731121355-phpapp01&stripped_title=evolving-objects-yet-another-evolutionary-computation-library" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object></div>
<p>You can also read this <a href="http://geneura.ugr.es/~jmerelo/GAPPT/index.html"> <p>You can also read this <a href="http://geneura.ugr.es/~jmerelo/GAPPT/index.html">
@ -329,28 +334,28 @@
library",</a> <i>Artificial Evolution</i>, <b>2310</b>, 829--888 (2002).</blockquote> library",</a> <i>Artificial Evolution</i>, <b>2310</b>, 829--888 (2002).</blockquote>
</p> </p>
<p> <p>
<font face="monospace"> <font face="monospace">
@<font color="#0000ff">Article</font>{<font color="#ff00ff">Keijzer2001</font>,<br> @<font color="#0000ff">Article</font>{<font color="#ff00ff">Keijzer2001</font>,<br/>
&nbsp;&nbsp;<font color="#a52a2a">title</font>&nbsp;=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Evolving Objects: A General Purpose Evolutionary Computation Library &quot;,<br> &nbsp;&nbsp;<font color="#a52a2a">title</font>&nbsp;=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Evolving Objects: A General Purpose Evolutionary Computation Library &quot;,<br/>
&nbsp;&nbsp;<font color="#a52a2a">author</font>&nbsp;=&nbsp;&nbsp;&nbsp; &quot;Maarten Keijzer and J. J. Merelo and G. Romero and M. Schoenauer&quot;,<br> &nbsp;&nbsp;<font color="#a52a2a">author</font>&nbsp;=&nbsp;&nbsp;&nbsp; &quot;Maarten Keijzer and J. J. Merelo and G. Romero and M. Schoenauer&quot;,<br/>
&nbsp;&nbsp;<font color="#a52a2a">journal</font>&nbsp;=&nbsp;&nbsp;&nbsp;&quot;Artificial Evolution&quot;,<br> &nbsp;&nbsp;<font color="#a52a2a">journal</font>&nbsp;=&nbsp;&nbsp;&nbsp;&quot;Artificial Evolution&quot;,<br/>
&nbsp;&nbsp;<font color="#a52a2a">year</font>&nbsp;=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;2002&quot;,<br> &nbsp;&nbsp;<font color="#a52a2a">year</font>&nbsp;=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;2002&quot;,<br/>
&nbsp;&nbsp;<font color="#a52a2a">volume</font>&nbsp;=&nbsp;&nbsp;&nbsp; &quot;2310&quot;,<br> &nbsp;&nbsp;<font color="#a52a2a">volume</font>&nbsp;=&nbsp;&nbsp;&nbsp; &quot;2310&quot;,<br/>
&nbsp;&nbsp;<font color="#a52a2a">pages</font>&nbsp;=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;829--888&quot;,<br> &nbsp;&nbsp;<font color="#a52a2a">pages</font>&nbsp;=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;829--888&quot;,<br/>
&nbsp;&nbsp;<font color="#a020f0">keywords</font>&nbsp;=&nbsp; &quot;genetic algorithms, genetic programming, evolutionary computation, metaheuristic, computational intelligence, optimization&quot;,<br> &nbsp;&nbsp;<font color="#a020f0">keywords</font>&nbsp;=&nbsp; &quot;genetic algorithms, genetic programming, evolutionary computation, metaheuristic, computational intelligence, optimization&quot;,<br/>
&nbsp;&nbsp;<font color="#a020f0">URL</font>&nbsp;=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;<a href="http://www.lri.fr/~marc/EO/EO-EA01.ps.gz">http://www.lri.fr/~marc/EO/EO-EA01.ps.gz</a>&quot;,<br> &nbsp;&nbsp;<font color="#a020f0">URL</font>&nbsp;=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;<a href="http://www.lri.fr/~marc/EO/EO-EA01.ps.gz">http://www.lri.fr/~marc/EO/EO-EA01.ps.gz</a>&quot;,<br/>
&nbsp;&nbsp;<font color="#ff00ff">size</font>&nbsp;=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;12 pages&quot;,<br> &nbsp;&nbsp;<font color="#ff00ff">size</font>&nbsp;=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;12 pages&quot;,<br/>
&nbsp;&nbsp;<font color="#a020f0">abstract</font>&nbsp;=&nbsp; &quot;This paper presents the evolving objects library<br> &nbsp;&nbsp;<font color="#a020f0">abstract</font>&nbsp;=&nbsp; &quot;This paper presents the evolving objects library<br/>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (EOlib), an object-oriented framework for evolutionary<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (EOlib), an object-oriented framework for evolutionary<br/>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; computation (EC)&nbsp;that aims to provide a flexible set of<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; computation (EC)&nbsp;that aims to provide a flexible set of<br/>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; classes to build EC applications. EOlib design<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; classes to build EC applications. EOlib design<br/>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; objective is to be able to evolve any object in which<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; objective is to be able to evolve any object in which<br/>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fitness makes sense.&quot;,<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fitness makes sense.&quot;,<br/>
}<br> }<br/>
<br> <br/>
</font> </font>
</p> </p>
<p>Here is a list of some known publications that used EO:</p> <p>Here is a list of some known publications that used EO:</p>
<ul class="publications"> <ul class="publications">
@ -367,7 +372,7 @@
<h1><a name="Code"></a>Code <a href="#Plan"></a></h1> <h1><a name="Code"></a>Code <a href="#Plan"></a></h1>
<h2><a name="Download"></a>Download</h2> <h2><a name="Download"></a>Download</h2>
@ -443,7 +448,7 @@
detail.</p> detail.</p>
<h1><a name="Development"></a>Development <a href="#Plan"></a></h1> <h1><a name="Development"></a>Development <a href="#Plan"></a></h1>
<h2><a name="Mailing-lists"></a>Mailing-lists</h2> <h2><a name="Mailing-lists"></a>Mailing-lists</h2>
@ -461,10 +466,10 @@
<li> <a href="http://sourceforge.net/project/?group_id=9775">EO <li> <a href="http://sourceforge.net/project/?group_id=9775">EO
SourceForge Project Page</a></li> SourceForge Project Page</a></li>
<li><a href="http://eodev.sourceforge.net/eo/doc/html/index.html">EO <li><a href="http://eodev.sourceforge.net/eo/doc/html/index.html">EO
automatic documentation page at SF</a><br> automatic documentation page at SF</a><br/>
</li> </li>
<li><a href="http://eodev.sourceforge.net/eo/tutorial/html/eoTutorial.html">EO <li><a href="http://eodev.sourceforge.net/eo/tutorial/html/eoTutorial.html">EO
tutorial page at SF</a><br> tutorial page at SF</a><br/>
</li> </li>
<li> <a href="https://sourceforge.net/project/showfiles.php?group_id=9775">Releases</a></li> <li> <a href="https://sourceforge.net/project/showfiles.php?group_id=9775">Releases</a></li>
<li> <a href="http://sourceforge.net/mail/?group_id=9775">Mailing Lists</a></li> <li> <a href="http://sourceforge.net/mail/?group_id=9775">Mailing Lists</a></li>
@ -537,19 +542,19 @@
</div> <!-- id=main --> </div> <!-- id=main -->
<!-- Piwik --> <!-- Piwik -->
<script type="text/javascript"> <script type="text/javascript">
var pkBaseURL = (("https:" == document.location.protocol) ? "https://sourceforge.net/apps/piwik/eodev/" : "http://sourceforge.net/apps/piwik/eodev/"); var pkBaseURL = (("https:" == document.location.protocol) ? "https://sourceforge.net/apps/piwik/eodev/" : "http://sourceforge.net/apps/piwik/eodev/");
document.write(unescape("%3Cscript src='" + pkBaseURL + "piwik.js' type='text/javascript'%3E%3C/script%3E")); document.write(unescape("%3Cscript src='" + pkBaseURL + "piwik.js' type='text/javascript'%3E%3C/script%3E"));
</script><script type="text/javascript"> </script><script type="text/javascript">
try { try {
var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", 1); var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", 1);
piwikTracker.trackPageView(); piwikTracker.trackPageView();
piwikTracker.enableLinkTracking(); piwikTracker.enableLinkTracking();
} catch( err ) {} } catch( err ) {}
</script><noscript><p><img src="http://sourceforge.net/apps/piwik/eodev/piwik.php?idsite=1" style="border:0" alt=""/></p></noscript> </script><noscript><p><img src="http://sourceforge.net/apps/piwik/eodev/piwik.php?idsite=1" style="border:0" alt=""/></p></noscript>
<!-- End Piwik Tag --> <!-- End Piwik Tag -->
</body> </body>
</html> </html>

View file

@ -1,14 +1,14 @@
/*************************************************************************** /****************************************************************************
* * * *
* contented3 - An open source xhtml/css website template by Contented * * contented3 - An open source xhtml/css website template by Contented *
* Designs. You're free to modify it and use it for any purpose without * * Designs. You're free to modify it and use it for any purpose without *
* cost or obligation. We'd prefer that you leave the link to our website * * cost or obligation. We'd prefer that you leave the link to our website *
* in the footer but it's not required. * * in the footer but it's not required. *
* * * *
* If you have comments or questions, please contact us at * * If you have comments or questions, please contact us at *
* http://www.ContentedDesigns.com. Thanks! * * http://www.ContentedDesigns.com. Thanks! *
* * * *
***************************************************************************/ ***************************************************************************/
* { * {
padding:0px; padding:0px;
@ -170,7 +170,7 @@ ul#menu {
margin: 0; margin: 0;
padding: 0; padding: 0;
list-style: none; list-style: none;
/*width:650px;*/ /*width:650px;*/
} }
ul#menu li { ul#menu li {
@ -248,10 +248,10 @@ ul#menu a.selected:visited { background: #3366CC; color: #FFFFFF; }
font-weight:bold; font-weight:bold;
} }
.table_form_label { .table_form_label {
text-align:right; text-align:right;
padding-right:1em; padding-right:1em;
} }
.table_form_submit { .table_form_submit {
text-align:center; text-align:center;