Commits

Anonymous committed 50c2ea6

Merge from OOSimPy at revision 162

  • Participants
  • Parent commits 7035329

Comments (0)

Files changed (187)

File CHANGES_FROM_PREVIOUS_VERSION.html

-<?xml version="1.0" encoding="utf-8" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.4: http://docutils.sourceforge.net/" />
-<title>CHANGES FROM VERSION 1.9.1: SimPy</title>
-<meta name="authors" content="Tony Vignaux &lt;Vignaux&#64;users.sourceforge.net&gt;  Klaus Muller &lt;Muller&#64;users.sourceforge.net&gt;" />
-<meta name="date" content="2008-03-15" />
-<style type="text/css">
-
-/*
-:Author: David Goodger
-:Contact: goodger@users.sourceforge.net
-:Date: $Date: 2008/03/15 12:33:45 $
-:Revision: $Revision: 1.1.1.9 $
-:Copyright: This stylesheet has been placed in the public domain.
-
-Default cascading style sheet for the HTML output of Docutils.
-
-See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
-customize this style sheet.
-*/
-
-/* used to remove borders from tables and images */
-.borderless, table.borderless td, table.borderless th {
-  border: 0 }
-
-table.borderless td, table.borderless th {
-  /* Override padding for "table.docutils td" with "! important".
-     The right padding separates the table cells. */
-  padding: 0 0.5em 0 0 ! important }
-
-.first {
-  /* Override more specific margin styles with "! important". */
-  margin-top: 0 ! important }
-
-.last, .with-subtitle {
-  margin-bottom: 0 ! important }
-
-.hidden {
-  display: none }
-
-a.toc-backref {
-  text-decoration: none ;
-  color: black }
-
-blockquote.epigraph {
-  margin: 2em 5em ; }
-
-dl.docutils dd {
-  margin-bottom: 0.5em }
-
-/* Uncomment (and remove this text!) to get bold-faced definition list terms
-dl.docutils dt {
-  font-weight: bold }
-*/
-
-div.abstract {
-  margin: 2em 5em }
-
-div.abstract p.topic-title {
-  font-weight: bold ;
-  text-align: center }
-
-div.admonition, div.attention, div.caution, div.danger, div.error,
-div.hint, div.important, div.note, div.tip, div.warning {
-  margin: 2em ;
-  border: medium outset ;
-  padding: 1em }
-
-div.admonition p.admonition-title, div.hint p.admonition-title,
-div.important p.admonition-title, div.note p.admonition-title,
-div.tip p.admonition-title {
-  font-weight: bold ;
-  font-family: sans-serif }
-
-div.attention p.admonition-title, div.caution p.admonition-title,
-div.danger p.admonition-title, div.error p.admonition-title,
-div.warning p.admonition-title {
-  color: red ;
-  font-weight: bold ;
-  font-family: sans-serif }
-
-/* Uncomment (and remove this text!) to get reduced vertical space in
-   compound paragraphs.
-div.compound .compound-first, div.compound .compound-middle {
-  margin-bottom: 0.5em }
-
-div.compound .compound-last, div.compound .compound-middle {
-  margin-top: 0.5em }
-*/
-
-div.dedication {
-  margin: 2em 5em ;
-  text-align: center ;
-  font-style: italic }
-
-div.dedication p.topic-title {
-  font-weight: bold ;
-  font-style: normal }
-
-div.figure {
-  margin-left: 2em ;
-  margin-right: 2em }
-
-div.footer, div.header {
-  clear: both;
-  font-size: smaller }
-
-div.line-block {
-  display: block ;
-  margin-top: 1em ;
-  margin-bottom: 1em }
-
-div.line-block div.line-block {
-  margin-top: 0 ;
-  margin-bottom: 0 ;
-  margin-left: 1.5em }
-
-div.sidebar {
-  margin-left: 1em ;
-  border: medium outset ;
-  padding: 1em ;
-  background-color: #ffffee ;
-  width: 40% ;
-  float: right ;
-  clear: right }
-
-div.sidebar p.rubric {
-  font-family: sans-serif ;
-  font-size: medium }
-
-div.system-messages {
-  margin: 5em }
-
-div.system-messages h1 {
-  color: red }
-
-div.system-message {
-  border: medium outset ;
-  padding: 1em }
-
-div.system-message p.system-message-title {
-  color: red ;
-  font-weight: bold }
-
-div.topic {
-  margin: 2em }
-
-h1.section-subtitle, h2.section-subtitle, h3.section-subtitle,
-h4.section-subtitle, h5.section-subtitle, h6.section-subtitle {
-  margin-top: 0.4em }
-
-h1.title {
-  text-align: center }
-
-h2.subtitle {
-  text-align: center }
-
-hr.docutils {
-  width: 75% }
-
-img.align-left {
-  clear: left }
-
-img.align-right {
-  clear: right }
-
-ol.simple, ul.simple {
-  margin-bottom: 1em }
-
-ol.arabic {
-  list-style: decimal }
-
-ol.loweralpha {
-  list-style: lower-alpha }
-
-ol.upperalpha {
-  list-style: upper-alpha }
-
-ol.lowerroman {
-  list-style: lower-roman }
-
-ol.upperroman {
-  list-style: upper-roman }
-
-p.attribution {
-  text-align: right ;
-  margin-left: 50% }
-
-p.caption {
-  font-style: italic }
-
-p.credits {
-  font-style: italic ;
-  font-size: smaller }
-
-p.label {
-  white-space: nowrap }
-
-p.rubric {
-  font-weight: bold ;
-  font-size: larger ;
-  color: maroon ;
-  text-align: center }
-
-p.sidebar-title {
-  font-family: sans-serif ;
-  font-weight: bold ;
-  font-size: larger }
-
-p.sidebar-subtitle {
-  font-family: sans-serif ;
-  font-weight: bold }
-
-p.topic-title {
-  font-weight: bold }
-
-pre.address {
-  margin-bottom: 0 ;
-  margin-top: 0 ;
-  font-family: serif ;
-  font-size: 100% }
-
-pre.literal-block, pre.doctest-block {
-  margin-left: 2em ;
-  margin-right: 2em ;
-  background-color: #eeeeee }
-
-span.classifier {
-  font-family: sans-serif ;
-  font-style: oblique }
-
-span.classifier-delimiter {
-  font-family: sans-serif ;
-  font-weight: bold }
-
-span.interpreted {
-  font-family: sans-serif }
-
-span.option {
-  white-space: nowrap }
-
-span.pre {
-  white-space: pre }
-
-span.problematic {
-  color: red }
-
-span.section-subtitle {
-  /* font-size relative to parent (h1..h6 element) */
-  font-size: 80% }
-
-table.citation {
-  border-left: solid 1px gray;
-  margin-left: 1px }
-
-table.docinfo {
-  margin: 2em 4em }
-
-table.docutils {
-  margin-top: 0.5em ;
-  margin-bottom: 0.5em }
-
-table.footnote {
-  border-left: solid 1px black;
-  margin-left: 1px }
-
-table.docutils td, table.docutils th,
-table.docinfo td, table.docinfo th {
-  padding-left: 0.5em ;
-  padding-right: 0.5em ;
-  vertical-align: top }
-
-table.docutils th.field-name, table.docinfo th.docinfo-name {
-  font-weight: bold ;
-  text-align: left ;
-  white-space: nowrap ;
-  padding-left: 0 }
-
-h1 tt.docutils, h2 tt.docutils, h3 tt.docutils,
-h4 tt.docutils, h5 tt.docutils, h6 tt.docutils {
-  font-size: 100% }
-
-tt.docutils {
-  background-color: #eeeeee }
-
-ul.auto-toc {
-  list-style-type: none }
-
-</style>
-</head>
-<body>
-<div class="document" id="changes-from-version-1-9-1-simpy">
-<h1 class="title">CHANGES FROM VERSION 1.9.1: SimPy</h1>
-<table class="docinfo" frame="void" rules="none">
-<col class="docinfo-name" />
-<col class="docinfo-content" />
-<tbody valign="top">
-<tr><th class="docinfo-name">Authors:</th>
-<td>Tony Vignaux &lt;<a class="reference" href="mailto:Vignaux&#64;users.sourceforge.net">Vignaux&#64;users.sourceforge.net</a>&gt;
-<br />Klaus Muller &lt;<a class="reference" href="mailto:Muller&#64;users.sourceforge.net">Muller&#64;users.sourceforge.net</a>&gt;</td></tr>
-<tr class="field"><th class="docinfo-name">SimPy version:</th><td class="field-body">1.9.1</td>
-</tr>
-<tr class="field"><th class="docinfo-name">SimPy Web-site:</th><td class="field-body"><a class="reference" href="http://simpy.sourceforge.net/">http://simpy.sourceforge.net/</a></td>
-</tr>
-<tr class="field"><th class="docinfo-name">SimPy wiki:</th><td class="field-body"><a class="reference" href="http://www.mcs.vuw.ac.nz/cgi-bin/wiki/SimPy">http://www.mcs.vuw.ac.nz/cgi-bin/wiki/SimPy</a></td>
-</tr>
-<tr class="field"><th class="docinfo-name">Python-Version:</th><td class="field-body">2.3+</td>
-</tr>
-<tr><th class="docinfo-name">Revision:</th>
-<td>1.1.1.16</td></tr>
-<tr><th class="docinfo-name">Date:</th>
-<td>2008-03-15</td></tr>
-</tbody>
-</table>
-<p>This document addresses the difference between SimPy versions
-1.9 and version 1.9.1 in terms of changes and additions.</p>
-<div class="section">
-<h1><a id="repairs" name="repairs">Repairs</a></h1>
-<p>This bug-fix release cures the following bugs:</p>
-<ul class="simple">
-<li>Excessive production of circular garbage, due to a circular reference
-between Process instances and event notices. This led to large memory
-requirements.</li>
-<li>Runtime error for preempts of proceeses holding multiple Resource objects.</li>
-</ul>
-</div>
-<div class="section">
-<h1><a id="additions" name="additions">Additions</a></h1>
-<ul class="simple">
-<li>A Short Manual, describing only the basic facilities of SimPy.</li>
-</ul>
-</div>
-</div>
-</body>
-</html>

File CHANGES_FROM_PREVIOUS_VERSION.txt

-=================================
-CHANGES FROM VERSION 1.9.1: SimPy
-=================================
-
-:Authors: - Tony Vignaux <Vignaux@users.sourceforge.net>
-          - Klaus Muller <Muller@users.sourceforge.net>
-:SimPy version: 1.9.1
-:SimPy Web-site: http://simpy.sourceforge.net/
-:SimPy wiki: http://www.mcs.vuw.ac.nz/cgi-bin/wiki/SimPy
-:Python-Version: 2.3+
-:Revision: $Revision: 1.1.1.16 $
-:Date: $Date: 2008/03/15 12:25:49 $
-
-This document addresses the difference between SimPy versions
-1.9 and version 1.9.1 in terms of changes and additions.
-  
-Repairs
-========
-
-This bug-fix release cures the following bugs:
-
-- Excessive production of circular garbage, due to a circular reference
-  between Process instances and event notices. This led to large memory
-  requirements.
-  
-- Runtime error for preempts of proceeses holding multiple Resource objects.
-
-
-Additions
-============
-
-- A Short Manual, describing only the basic facilities of SimPy.
-  
-
-  

File COMPATIBILITY.html

-<?xml version="1.0" encoding="utf-8" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.4: http://docutils.sourceforge.net/" />
-<title>COMPATIBILITY: SimPy</title>
-<meta name="authors" content="Tony Vignaux &lt;Vignaux&#64;users.sourceforge.net&gt;  Klaus Muller &lt;Muller&#64;users.sourceforge.net&gt;" />
-<meta name="date" content="2007-12-15" />
-<style type="text/css">
-
-/*
-:Author: David Goodger
-:Contact: goodger@users.sourceforge.net
-:Date: $Date: 2007/12/15 05:50:38 $
-:Revision: $Revision: 1.1.1.7 $
-:Copyright: This stylesheet has been placed in the public domain.
-
-Default cascading style sheet for the HTML output of Docutils.
-
-See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
-customize this style sheet.
-*/
-
-/* used to remove borders from tables and images */
-.borderless, table.borderless td, table.borderless th {
-  border: 0 }
-
-table.borderless td, table.borderless th {
-  /* Override padding for "table.docutils td" with "! important".
-     The right padding separates the table cells. */
-  padding: 0 0.5em 0 0 ! important }
-
-.first {
-  /* Override more specific margin styles with "! important". */
-  margin-top: 0 ! important }
-
-.last, .with-subtitle {
-  margin-bottom: 0 ! important }
-
-.hidden {
-  display: none }
-
-a.toc-backref {
-  text-decoration: none ;
-  color: black }
-
-blockquote.epigraph {
-  margin: 2em 5em ; }
-
-dl.docutils dd {
-  margin-bottom: 0.5em }
-
-/* Uncomment (and remove this text!) to get bold-faced definition list terms
-dl.docutils dt {
-  font-weight: bold }
-*/
-
-div.abstract {
-  margin: 2em 5em }
-
-div.abstract p.topic-title {
-  font-weight: bold ;
-  text-align: center }
-
-div.admonition, div.attention, div.caution, div.danger, div.error,
-div.hint, div.important, div.note, div.tip, div.warning {
-  margin: 2em ;
-  border: medium outset ;
-  padding: 1em }
-
-div.admonition p.admonition-title, div.hint p.admonition-title,
-div.important p.admonition-title, div.note p.admonition-title,
-div.tip p.admonition-title {
-  font-weight: bold ;
-  font-family: sans-serif }
-
-div.attention p.admonition-title, div.caution p.admonition-title,
-div.danger p.admonition-title, div.error p.admonition-title,
-div.warning p.admonition-title {
-  color: red ;
-  font-weight: bold ;
-  font-family: sans-serif }
-
-/* Uncomment (and remove this text!) to get reduced vertical space in
-   compound paragraphs.
-div.compound .compound-first, div.compound .compound-middle {
-  margin-bottom: 0.5em }
-
-div.compound .compound-last, div.compound .compound-middle {
-  margin-top: 0.5em }
-*/
-
-div.dedication {
-  margin: 2em 5em ;
-  text-align: center ;
-  font-style: italic }
-
-div.dedication p.topic-title {
-  font-weight: bold ;
-  font-style: normal }
-
-div.figure {
-  margin-left: 2em ;
-  margin-right: 2em }
-
-div.footer, div.header {
-  clear: both;
-  font-size: smaller }
-
-div.line-block {
-  display: block ;
-  margin-top: 1em ;
-  margin-bottom: 1em }
-
-div.line-block div.line-block {
-  margin-top: 0 ;
-  margin-bottom: 0 ;
-  margin-left: 1.5em }
-
-div.sidebar {
-  margin-left: 1em ;
-  border: medium outset ;
-  padding: 1em ;
-  background-color: #ffffee ;
-  width: 40% ;
-  float: right ;
-  clear: right }
-
-div.sidebar p.rubric {
-  font-family: sans-serif ;
-  font-size: medium }
-
-div.system-messages {
-  margin: 5em }
-
-div.system-messages h1 {
-  color: red }
-
-div.system-message {
-  border: medium outset ;
-  padding: 1em }
-
-div.system-message p.system-message-title {
-  color: red ;
-  font-weight: bold }
-
-div.topic {
-  margin: 2em }
-
-h1.section-subtitle, h2.section-subtitle, h3.section-subtitle,
-h4.section-subtitle, h5.section-subtitle, h6.section-subtitle {
-  margin-top: 0.4em }
-
-h1.title {
-  text-align: center }
-
-h2.subtitle {
-  text-align: center }
-
-hr.docutils {
-  width: 75% }
-
-img.align-left {
-  clear: left }
-
-img.align-right {
-  clear: right }
-
-ol.simple, ul.simple {
-  margin-bottom: 1em }
-
-ol.arabic {
-  list-style: decimal }
-
-ol.loweralpha {
-  list-style: lower-alpha }
-
-ol.upperalpha {
-  list-style: upper-alpha }
-
-ol.lowerroman {
-  list-style: lower-roman }
-
-ol.upperroman {
-  list-style: upper-roman }
-
-p.attribution {
-  text-align: right ;
-  margin-left: 50% }
-
-p.caption {
-  font-style: italic }
-
-p.credits {
-  font-style: italic ;
-  font-size: smaller }
-
-p.label {
-  white-space: nowrap }
-
-p.rubric {
-  font-weight: bold ;
-  font-size: larger ;
-  color: maroon ;
-  text-align: center }
-
-p.sidebar-title {
-  font-family: sans-serif ;
-  font-weight: bold ;
-  font-size: larger }
-
-p.sidebar-subtitle {
-  font-family: sans-serif ;
-  font-weight: bold }
-
-p.topic-title {
-  font-weight: bold }
-
-pre.address {
-  margin-bottom: 0 ;
-  margin-top: 0 ;
-  font-family: serif ;
-  font-size: 100% }
-
-pre.literal-block, pre.doctest-block {
-  margin-left: 2em ;
-  margin-right: 2em ;
-  background-color: #eeeeee }
-
-span.classifier {
-  font-family: sans-serif ;
-  font-style: oblique }
-
-span.classifier-delimiter {
-  font-family: sans-serif ;
-  font-weight: bold }
-
-span.interpreted {
-  font-family: sans-serif }
-
-span.option {
-  white-space: nowrap }
-
-span.pre {
-  white-space: pre }
-
-span.problematic {
-  color: red }
-
-span.section-subtitle {
-  /* font-size relative to parent (h1..h6 element) */
-  font-size: 80% }
-
-table.citation {
-  border-left: solid 1px gray;
-  margin-left: 1px }
-
-table.docinfo {
-  margin: 2em 4em }
-
-table.docutils {
-  margin-top: 0.5em ;
-  margin-bottom: 0.5em }
-
-table.footnote {
-  border-left: solid 1px black;
-  margin-left: 1px }
-
-table.docutils td, table.docutils th,
-table.docinfo td, table.docinfo th {
-  padding-left: 0.5em ;
-  padding-right: 0.5em ;
-  vertical-align: top }
-
-table.docutils th.field-name, table.docinfo th.docinfo-name {
-  font-weight: bold ;
-  text-align: left ;
-  white-space: nowrap ;
-  padding-left: 0 }
-
-h1 tt.docutils, h2 tt.docutils, h3 tt.docutils,
-h4 tt.docutils, h5 tt.docutils, h6 tt.docutils {
-  font-size: 100% }
-
-tt.docutils {
-  background-color: #eeeeee }
-
-ul.auto-toc {
-  list-style-type: none }
-
-</style>
-</head>
-<body>
-<div class="document" id="compatibility-simpy">
-<h1 class="title">COMPATIBILITY: SimPy</h1>
-<table class="docinfo" frame="void" rules="none">
-<col class="docinfo-name" />
-<col class="docinfo-content" />
-<tbody valign="top">
-<tr><th class="docinfo-name">Authors:</th>
-<td>Tony Vignaux &lt;<a class="reference" href="mailto:Vignaux&#64;users.sourceforge.net">Vignaux&#64;users.sourceforge.net</a>&gt;
-<br />Klaus Muller &lt;<a class="reference" href="mailto:Muller&#64;users.sourceforge.net">Muller&#64;users.sourceforge.net</a>&gt;</td></tr>
-<tr class="field"><th class="docinfo-name">SimPy version:</th><td class="field-body">1.9</td>
-</tr>
-<tr class="field"><th class="docinfo-name">SimPy Web-site:</th><td class="field-body"><a class="reference" href="http://simpy.sourceforge.net/">http://simpy.sourceforge.net/</a></td>
-</tr>
-<tr class="field"><th class="docinfo-name">SimPy wiki:</th><td class="field-body"><a class="reference" href="http://www.mcs.vuw.ac.nz/cgi-bin/wiki/SimPy">http://www.mcs.vuw.ac.nz/cgi-bin/wiki/SimPy</a></td>
-</tr>
-<tr class="field"><th class="docinfo-name">Python-Version:</th><td class="field-body">2.3+</td>
-</tr>
-<tr><th class="docinfo-name">Revision:</th>
-<td>1.1.1.11</td></tr>
-<tr><th class="docinfo-name">Date:</th>
-<td>2007-12-15</td></tr>
-</tbody>
-</table>
-<p>SimPy has been used successfully with many packages and modules, such as
-Tk/Tkinter for GUIs and VPython and matplotlib for graphical output.</p>
-<p>The design of SimPy is such that no incompatibilities with Python 2.3 through
-2.5 modules or Python 2.3 through 2.5-accessible packages are expected.</p>
-<p>SimPy 1.8 has been tested with Python 2.3, 2.4 and 2.5.</p>
-<p>All SimPy scripts (with the exception of the ones depending on Tkinter) work
-under IronPython 1, after the removal of the shebang line.</p>
-<p>Should SimPy users discover any incompatibilities, the authors would
-be grateful for a report. Just send a message with the problem
-and its context to: <a class="reference" href="mailto:simpy-users&#64;lists.sourceforge.net">simpy-users&#64;lists.sourceforge.net</a>.</p>
-</div>
-</body>
-</html>

File COMPATIBILITY.txt

-====================
-COMPATIBILITY: SimPy
-====================
-
-:Authors: - Tony Vignaux <Vignaux@users.sourceforge.net>
-          - Klaus Muller <Muller@users.sourceforge.net>
-:SimPy version: 1.9
-:SimPy Web-site: http://simpy.sourceforge.net/
-:SimPy wiki: http://www.mcs.vuw.ac.nz/cgi-bin/wiki/SimPy
-:Python-Version: 2.3 and later
-:Revision: $Revision: 1.1.1.12 $
-:Date: $Date: 2007/12/18 05:15:52 $
-
-SimPy has been used successfully with many packages and modules, such as
-Tk/Tkinter for GUIs and VPython and matplotlib for graphical output.
-
-The design of SimPy is such that no incompatibilities with Python 2.3 through 
-2.5 modules or Python 2.3 through 2.5-accessible packages are expected.
-
-SimPy 1.9 has been tested with Python 2.3, 2.4 and 2.5.
-
-All SimPy scripts (with the exception of the ones depending on Tkinter) work
-under IronPython 1, after the removal of the shebang line.
-
-Should SimPy users discover any incompatibilities, the authors would
-be grateful for a report. Just send a message with the problem 
-and its context to: simpy-users@lists.sourceforge.net.
-
-
-
-

File HISTORY.html

-<?xml version="1.0" encoding="utf-8" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.4: http://docutils.sourceforge.net/" />
-<title></title>
-<style type="text/css">
-
-/*
-:Author: David Goodger
-:Contact: goodger@users.sourceforge.net
-:Date: $Date: 2008/03/15 12:33:45 $
-:Revision: $Revision: 1.1.1.9 $
-:Copyright: This stylesheet has been placed in the public domain.
-
-Default cascading style sheet for the HTML output of Docutils.
-
-See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
-customize this style sheet.
-*/
-
-/* used to remove borders from tables and images */
-.borderless, table.borderless td, table.borderless th {
-  border: 0 }
-
-table.borderless td, table.borderless th {
-  /* Override padding for "table.docutils td" with "! important".
-     The right padding separates the table cells. */
-  padding: 0 0.5em 0 0 ! important }
-
-.first {
-  /* Override more specific margin styles with "! important". */
-  margin-top: 0 ! important }
-
-.last, .with-subtitle {
-  margin-bottom: 0 ! important }
-
-.hidden {
-  display: none }
-
-a.toc-backref {
-  text-decoration: none ;
-  color: black }
-
-blockquote.epigraph {
-  margin: 2em 5em ; }
-
-dl.docutils dd {
-  margin-bottom: 0.5em }
-
-/* Uncomment (and remove this text!) to get bold-faced definition list terms
-dl.docutils dt {
-  font-weight: bold }
-*/
-
-div.abstract {
-  margin: 2em 5em }
-
-div.abstract p.topic-title {
-  font-weight: bold ;
-  text-align: center }
-
-div.admonition, div.attention, div.caution, div.danger, div.error,
-div.hint, div.important, div.note, div.tip, div.warning {
-  margin: 2em ;
-  border: medium outset ;
-  padding: 1em }
-
-div.admonition p.admonition-title, div.hint p.admonition-title,
-div.important p.admonition-title, div.note p.admonition-title,
-div.tip p.admonition-title {
-  font-weight: bold ;
-  font-family: sans-serif }
-
-div.attention p.admonition-title, div.caution p.admonition-title,
-div.danger p.admonition-title, div.error p.admonition-title,
-div.warning p.admonition-title {
-  color: red ;
-  font-weight: bold ;
-  font-family: sans-serif }
-
-/* Uncomment (and remove this text!) to get reduced vertical space in
-   compound paragraphs.
-div.compound .compound-first, div.compound .compound-middle {
-  margin-bottom: 0.5em }
-
-div.compound .compound-last, div.compound .compound-middle {
-  margin-top: 0.5em }
-*/
-
-div.dedication {
-  margin: 2em 5em ;
-  text-align: center ;
-  font-style: italic }
-
-div.dedication p.topic-title {
-  font-weight: bold ;
-  font-style: normal }
-
-div.figure {
-  margin-left: 2em ;
-  margin-right: 2em }
-
-div.footer, div.header {
-  clear: both;
-  font-size: smaller }
-
-div.line-block {
-  display: block ;
-  margin-top: 1em ;
-  margin-bottom: 1em }
-
-div.line-block div.line-block {
-  margin-top: 0 ;
-  margin-bottom: 0 ;
-  margin-left: 1.5em }
-
-div.sidebar {
-  margin-left: 1em ;
-  border: medium outset ;
-  padding: 1em ;
-  background-color: #ffffee ;
-  width: 40% ;
-  float: right ;
-  clear: right }
-
-div.sidebar p.rubric {
-  font-family: sans-serif ;
-  font-size: medium }
-
-div.system-messages {
-  margin: 5em }
-
-div.system-messages h1 {
-  color: red }
-
-div.system-message {
-  border: medium outset ;
-  padding: 1em }
-
-div.system-message p.system-message-title {
-  color: red ;
-  font-weight: bold }
-
-div.topic {
-  margin: 2em }
-
-h1.section-subtitle, h2.section-subtitle, h3.section-subtitle,
-h4.section-subtitle, h5.section-subtitle, h6.section-subtitle {
-  margin-top: 0.4em }
-
-h1.title {
-  text-align: center }
-
-h2.subtitle {
-  text-align: center }
-
-hr.docutils {
-  width: 75% }
-
-img.align-left {
-  clear: left }
-
-img.align-right {
-  clear: right }
-
-ol.simple, ul.simple {
-  margin-bottom: 1em }
-
-ol.arabic {
-  list-style: decimal }
-
-ol.loweralpha {
-  list-style: lower-alpha }
-
-ol.upperalpha {
-  list-style: upper-alpha }
-
-ol.lowerroman {
-  list-style: lower-roman }
-
-ol.upperroman {
-  list-style: upper-roman }
-
-p.attribution {
-  text-align: right ;
-  margin-left: 50% }
-
-p.caption {
-  font-style: italic }
-
-p.credits {
-  font-style: italic ;
-  font-size: smaller }
-
-p.label {
-  white-space: nowrap }
-
-p.rubric {
-  font-weight: bold ;
-  font-size: larger ;
-  color: maroon ;
-  text-align: center }
-
-p.sidebar-title {
-  font-family: sans-serif ;
-  font-weight: bold ;
-  font-size: larger }
-
-p.sidebar-subtitle {
-  font-family: sans-serif ;
-  font-weight: bold }
-
-p.topic-title {
-  font-weight: bold }
-
-pre.address {
-  margin-bottom: 0 ;
-  margin-top: 0 ;
-  font-family: serif ;
-  font-size: 100% }
-
-pre.literal-block, pre.doctest-block {
-  margin-left: 2em ;
-  margin-right: 2em ;
-  background-color: #eeeeee }
-
-span.classifier {
-  font-family: sans-serif ;
-  font-style: oblique }
-
-span.classifier-delimiter {
-  font-family: sans-serif ;
-  font-weight: bold }
-
-span.interpreted {
-  font-family: sans-serif }
-
-span.option {
-  white-space: nowrap }
-
-span.pre {
-  white-space: pre }
-
-span.problematic {
-  color: red }
-
-span.section-subtitle {
-  /* font-size relative to parent (h1..h6 element) */
-  font-size: 80% }
-
-table.citation {
-  border-left: solid 1px gray;
-  margin-left: 1px }
-
-table.docinfo {
-  margin: 2em 4em }
-
-table.docutils {
-  margin-top: 0.5em ;
-  margin-bottom: 0.5em }
-
-table.footnote {
-  border-left: solid 1px black;
-  margin-left: 1px }
-
-table.docutils td, table.docutils th,
-table.docinfo td, table.docinfo th {
-  padding-left: 0.5em ;
-  padding-right: 0.5em ;
-  vertical-align: top }
-
-table.docutils th.field-name, table.docinfo th.docinfo-name {
-  font-weight: bold ;
-  text-align: left ;
-  white-space: nowrap ;
-  padding-left: 0 }
-
-h1 tt.docutils, h2 tt.docutils, h3 tt.docutils,
-h4 tt.docutils, h5 tt.docutils, h6 tt.docutils {
-  font-size: 100% }
-
-tt.docutils {
-  background-color: #eeeeee }
-
-ul.auto-toc {
-  list-style-type: none }
-
-</style>
-</head>
-<body>
-<div class="document">
-<div class="section">
-<h1><a id="history-simpy" name="history-simpy">HISTORY: SimPy</a></h1>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Authors:</th><td class="field-body"><ul class="first simple">
-<li>Tony Vignaux &lt;<a class="reference" href="mailto:Vignaux&#64;users.sourceforge.net">Vignaux&#64;users.sourceforge.net</a>&gt;</li>
-<li>Klaus Muller &lt;<a class="reference" href="mailto:Muller&#64;users.sourceforge.net">Muller&#64;users.sourceforge.net</a>&gt;</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">SimPy version:</th><td class="field-body"><p class="first">1.9.1</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">SimPy Web-site:</th><td class="field-body"><p class="first"><a class="reference" href="http://simpy.sourceforge.net/">http://simpy.sourceforge.net/</a></p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">SimPy wiki:</th><td class="field-body"><p class="first"><a class="reference" href="http://www.mcs.vuw.ac.nz/cgi-bin/wiki/SimPy">http://www.mcs.vuw.ac.nz/cgi-bin/wiki/SimPy</a></p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Python-Version:</th><td class="field-body"><p class="first">2.3+</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Revision:</th><td class="field-body"><p class="first">$Revision: 1.1.1.9 $</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Date:</th><td class="field-body"><p class="first last">$Date: 2008/03/15 12:33:45 $</p>
-</td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="section">
-<h1><a id="simpy-history" name="simpy-history">SimPy History</a></h1>
-<p>SimPy is based on ideas from Simula and Simscript but uses standard
-Python. It combines two previous packages, SiPy, in Simula-Style
-(Dr. Klaus Muller) and SimPy, in Simscript style (Tony.Vignaux and
-Chang Chui)</p>
-<p>SimPy is based on efficient implementation of co-routines using
-Python's generators capability.</p>
-<p>The package has been hosted on Sourceforge.net since 15 September 2002.
-Sourceforge.net's service has always outstanding. It is essential to
-the SimPy project!</p>
-<div class="section">
-<h2><a id="march-2008-version-1-9-1" name="march-2008-version-1-9-1">March 2008: Version 1.9.1</a></h2>
-<p>This is a bug-fix release which cures the following bugs:</p>
-<ul class="simple">
-<li>Excessive production of circular garbage, due to a circular reference
-between Process instances and event notices. This led to large memory
-requirements.</li>
-<li>Runtime error for preempts of proceeses holding multiple Resource objects.</li>
-</ul>
-<p>It also adds a Short Manual, describing only the basic facilities of SimPy.</p>
-</div>
-<div class="section">
-<h2><a id="december-2007-version-1-9" name="december-2007-version-1-9">December 2007: Version 1.9</a></h2>
-<p>This is a major release with added functionality/new user API calls and bug fixes.</p>
-<div class="section">
-<h3><a id="major-changes" name="major-changes">Major changes</a></h3>
-<ul class="simple">
-<li>The event list handling has been changed to improve the runtime performance
-of large SimPy models (models with thousands of processes). The use of
-dictionaries for timestamps has been stopped. Thanks are due to Prof.
-Norm Matloff and a team of his students who did a study on improving
-SimPy performance. This was one of their recommendations. Thanks, Norm and guys!
-Furthermore, in version 1.9 the 'heapq' sorting package replaces 'bisect'.
-Finally, cancelling events no longer removes them, but rather marks them.
-When their event time comes, they are ignored. This was Tony Vignaux' idea!</li>
-<li>The Manual has been edited and given an easier-to-read layout.</li>
-<li>The Bank2 tutorial has been extended by models  which use more advanced
-SimPy commands/constructs.</li>
-</ul>
-</div>
-<div class="section">
-<h3><a id="bug-fixes" name="bug-fixes">Bug fixes</a></h3>
-<ul class="simple">
-<li>The tracing of 'activate' statements has been enabled.</li>
-</ul>
-</div>
-<div class="section">
-<h3><a id="additions" name="additions">Additions</a></h3>
-<ul class="simple">
-<li>A method returning the time-weighted variance of observations
-has been added to classes Monitor and Tally.</li>
-<li>A shortcut activation method called &quot;start&quot; has been added
-to class Process.</li>
-</ul>
-</div>
-</div>
-<div class="section">
-<h2><a id="january-2007-version-1-8" name="january-2007-version-1-8">January 2007: Version 1.8</a></h2>
-<div class="section">
-<h3><a id="id1" name="id1">Major Changes</a></h3>
-<ul class="simple">
-<li>SimPy 1.8 and future releases will not run under the obsolete
-Python 2.2 version. They require Python 2.3 or later.</li>
-<li>The Manual has been thoroughly edited, restructured and rewritten.
-It is now also provided in PDF format.</li>
-<li>The Cheatsheet has been totally rewritten in a tabular format.
-It is provided in both XLS (MS Excel spreadsheet) and PDF format.</li>
-<li>The version of SimPy.Simulation(RT/Trace/Step) is now accessible
-by the variable 'version'.</li>
-<li>The <em>__str__</em> method of Histogram was changed to return a table format.</li>
-</ul>
-</div>
-<div class="section">
-<h3><a id="id2" name="id2">Bug fixes</a></h3>
-<ul class="simple">
-<li>Repaired a bug in <em>yield waituntil</em> runtime code.</li>
-<li>Introduced check for <em>capacity</em> parameter of a Level or a Store
-being a number &gt; 0.</li>
-<li>Added code so that self.eventsFired gets set correctly after an event fires
-in a compound yield get/put with a waitevent clause (reneging case).</li>
-<li>Repaired a bug in prettyprinting of Store objects.</li>
-</ul>
-</div>
-<div class="section">
-<h3><a id="id3" name="id3">Additions</a></h3>
-<ul class="simple">
-<li>New compound yield statements support time-out or event-based
-reneging in get and put operations on Store and Level instances.</li>
-<li><em>yield get</em> on a Store instance can now have a filter function.</li>
-<li>All Monitor and Tally instances are automatically registered in list
-<em>allMonitors</em> and <em>allTallies</em>, respectively.</li>
-<li>The new function <em>startCollection</em> allows activation of Monitors and
-Tallies at a specified time.</li>
-<li>A <em>printHistogram</em> method was added to Tally and Monitor which generates
-a table-form histogram.</li>
-<li>In SimPy.SimulationRT: A function for allowing changing
-the ratio wall clock time to simulation time has been added.</li>
-</ul>
-</div>
-</div>
-<div class="section">
-<h2><a id="june-2006-version-1-7-1" name="june-2006-version-1-7-1">June 2006: Version 1.7.1</a></h2>
-<p>This is a maintenance release. The API has not been changed/added to.</p>
-<ul class="simple">
-<li>Repair of a bug in the _get methods of Store and Level which could lead to synchronization problems
-(blocking of producer processes, despite space being available in the buffer).</li>
-<li>Repair of Level __init__ method to allow initialBuffered to be of either float or int type.</li>
-<li>Addition of type test for Level get parameter 'nrToGet' to limit it to positive
-int or float.</li>
-<li>To improve pretty-printed output of 'Level' objects, changed attribute
-'_nrBuffered' to 'nrBuffered' (synonym for 'amount' property).</li>
-<li>To improve pretty-printed output of 'Store' objects, added attribute
-'buffered' (which refers to '_theBuffer' attribute).</li>
-</ul>
-</div>
-<div class="section">
-<h2><a id="february-2006-version-1-7" name="february-2006-version-1-7">February 2006: Version 1.7</a></h2>
-<p>This is a major release.</p>
-<ul class="simple">
-<li>Addition of an abstract class Buffer, with two sub-classes <em>Store</em> and <em>Level</em>
-Buffers are used for modelling inter-process synchronization in producer/
-consumer and multi-process cooperation scenarios.</li>
-<li>Addition of two new <em>yield</em> statements:<ul>
-<li><em>yield put</em> for putting items into a buffer, and</li>
-<li><em>yield get</em> for getting items from a buffer.</li>
-</ul>
-</li>
-<li>The Manual has undergone a major re-write/edit.</li>
-<li>All scripts have been restructured for compatibility with IronPython 1 beta2.
-This was doen by moving all <em>import</em> statements to the beginning of the scripts.
-After the removal of the first (shebang) line, all scripts (with the exception
-of plotting and GUI scripts) can run successfully under this new Python
-implementation.</li>
-</ul>
-</div>
-<div class="section">
-<h2><a id="september-2005-version-1-6-1" name="september-2005-version-1-6-1">September 2005: Version 1.6.1</a></h2>
-<p>This is a minor release.</p>
-<ul class="simple">
-<li>Addition of Tally data collection class as alternative
-to Monitor. It is intended for collecting very large data sets
-more efficiently in storage space and time than Monitor.</li>
-<li>Change of Resource to work with Tally (new Resource
-API is backwards-compatible with 1.6).</li>
-<li>Addition of function setHistogram to class Monitor for initializing
-histograms.</li>
-<li>New function allEventNotices() for debugging/teaching purposes. It returns
-a prettyprinted string with event times and names of process instances.</li>
-<li>Addition of function allEventTimes (returns event times of all scheduled
-events).</li>
-</ul>
-</div>
-<div class="section">
-<h2><a id="june-2005-version-1-6" name="june-2005-version-1-6">15 June 2005: Version 1.6</a></h2>
-<ul class="simple">
-<li>Addition of two compound yield statement forms to support the modelling of
-processes reneging from resource queues.</li>
-<li>Addition of two test/demo files showing the use of the new reneging statements.</li>
-<li>Addition of test for prior simulation initialization in method activate().</li>
-<li>Repair of bug in monitoring thw waitQ of a resource when preemption occurs.</li>
-<li>Major restructuring/editing to Manual and Cheatsheet.</li>
-</ul>
-</div>
-<div class="section">
-<h2><a id="february-2005-version-1-5-1" name="february-2005-version-1-5-1">1 February 2005: Version 1.5.1</a></h2>
-<ul>
-<li><p class="first">MAJOR LICENSE CHANGE:</p>
-<blockquote>
-<p>Starting with this version 1.5.1, SimPy is being release under the GNU
-Lesser General Public License (LGPL), instead of the GNU GPL. This change
-has been made to encourage commercial firms to use SimPy in for-profit
-work.</p>
-</blockquote>
-</li>
-<li><p class="first">Minor re-release</p>
-</li>
-<li><p class="first">No additional/changed functionality</p>
-</li>
-<li><p class="first">Includes unit test file'MonitorTest.py' which had been accidentally deleted
-from 1.5</p>
-</li>
-<li><p class="first">Provides updated version of 'Bank.html' tutorial.</p>
-</li>
-<li><p class="first">Provides an additional tutorial ('Bank2.html') which shows
-how to use the new synchronization constructs introduced in SimPy 1.5.</p>
-</li>
-<li><p class="first">More logical, cleaner version numbering in files.</p>
-</li>
-</ul>
-</div>
-<div class="section">
-<h2><a id="december-2004-version-1-5" name="december-2004-version-1-5">1 December 2004: Version 1.5</a></h2>
-<ul class="simple">
-<li>No new functionality/API changes relative to 1.5 alpha</li>
-<li>Repaired bug related to waiting/queuing for multiple events</li>
-<li>SimulationRT: Improved synchronization with wallclock time on Unix/Linux</li>
-</ul>
-</div>
-<div class="section">
-<h2><a id="september-2004-version-1-5alpha" name="september-2004-version-1-5alpha">25 September 2004: Version 1.5alpha</a></h2>
-<ul>
-<li><p class="first">New functionality/API additions</p>
-<blockquote>
-<ul class="simple">
-<li>SimEvents and signalling synchronization constructs, with 'yield waitevent' and 'yield queueevent' commands.</li>
-<li>A general &quot;wait until&quot; synchronization construct, with the 'yield waituntil' command.</li>
-</ul>
-</blockquote>
-</li>
-<li><p class="first">No changes to 1.4.x API, i.e., existing code will work as before.</p>
-</li>
-</ul>
-</div>
-<div class="section">
-<h2><a id="may-2004-version-1-4-2" name="may-2004-version-1-4-2">19 May 2004: Version 1.4.2</a></h2>
-<ul>
-<li><p class="first">Sub-release to repair two bugs:</p>
-<blockquote>
-<ul class="simple">
-<li>The unittest for monitored Resource queues does not fail anymore.</li>
-<li>SimulationTrace now works correctly with &quot;yield hold,self&quot; form.</li>
-</ul>
-</blockquote>
-</li>
-<li><p class="first">No functional or API changes</p>
-</li>
-</ul>
-</div>
-<div class="section">
-<h2><a id="february-2004-version-1-4-1" name="february-2004-version-1-4-1">29 February 2004: Version 1.4.1</a></h2>
-<ul>
-<li><p class="first">Sub-release to repair two bugs:</p>
-<blockquote>
-<ul class="simple">
-<li>The (optional) monitoring of the activeQ in Resource now works correctly.</li>
-<li>The &quot;cellphone.py&quot; example is now implemented correctly.</li>
-</ul>
-</blockquote>
-</li>
-<li><p class="first">No functional or API changes</p>
-</li>
-</ul>
-</div>
-<div class="section">
-<h2><a id="february-2004-version-1-4-published-on-sourceforge" name="february-2004-version-1-4-published-on-sourceforge">1 February 2004: Version 1.4 published on SourceForge</a></h2>
-</div>
-<div class="section">
-<h2><a id="december-2003-version-1-4-alpha" name="december-2003-version-1-4-alpha">22 December 2003: Version 1.4 alpha</a></h2>
-<ul>
-<li><p class="first">New functionality/API changes</p>
-<blockquote>
-<blockquote>
-<ul class="simple">
-<li>All classes in the SimPy API are now new style classes, i.e., they inherit from <em>object</em> either directly or indirectly.</li>
-<li>Module <em>Monitor.py</em> has been merged into module <em>Simulation.py</em> and all <em>SimulationXXX.py</em> modules. Import of <em>Simulation</em> or any <em>SimulationXXX</em> module now also imports <em>Monitor</em>.</li>
-<li>Some <em>Monitor</em> methods/attributes have changed. See Manual!</li>
-<li><em>Monitor</em> now inherits from <em>list</em>.</li>
-</ul>
-</blockquote>
-<ul class="simple">
-<li>A class <em>Histogram</em> has been added to <em>Simulation.py</em> and all <em>SimulationXXX.py</em> modules.</li>
-<li>A module <em>SimulationRT</em> has been added which allows synchronization between simulated and wallclock time.</li>
-<li>A moduleSimulationStep which allows the execution of a simulation model event-by-event, with the facility to execute application code after each event.</li>
-<li>A Tk/Tkinter-based module <em>SimGUI</em> has been added which provides a SimPy GUI framework.</li>
-<li>A Tk/Tkinter-based module <em>SimPlot</em> has been added which provides for plot output from SimPy programs.</li>
-</ul>
-</blockquote>
-</li>
-</ul>
-</div>
-<div class="section">
-<h2><a id="june-2003-version-1-3" name="june-2003-version-1-3">22 June 2003: Version 1.3</a></h2>
-<ul class="simple">
-<li>No functional or API changes</li>
-<li>Reduction of sourcecode linelength in Simulation.py to &lt;= 80 characters</li>
-</ul>
-</div>
-<div class="section">
-<h2><a id="june-2003-version-1-3-alpha" name="june-2003-version-1-3-alpha">9 June 2003: Version 1.3 alpha</a></h2>
-<ul>
-<li><p class="first">Significantly improved performance</p>
-</li>
-<li><p class="first">Significant increase in number of quasi-parallel processes SimPy can handle</p>
-</li>
-<li><p class="first">New functionality/API changes:</p>
-<blockquote>
-<ul class="simple">
-<li>Addition of SimulationTrace, an event trace utility</li>
-<li>Addition of Lister, a prettyprinter for instance attributes</li>
-<li>No API changes</li>
-</ul>
-</blockquote>
-</li>
-<li><p class="first">Internal changes:</p>
-<blockquote>
-<ul class="simple">
-<li>Implementation of a proposal by Simon Frost: storing the keys of the event set dictionary in a binary search tree using bisect. Thank you, Simon! SimPy 1.3 is dedicated to you!</li>
-</ul>
-</blockquote>
-</li>
-<li><p class="first">Update of Manual to address tracing.</p>
-</li>
-<li><p class="first">Update of Interfacing doc to address output visualization using Scientific Python gplt package.</p>
-</li>
-</ul>
-</div>
-<div class="section">
-<h2><a id="april-2003-version-1-2" name="april-2003-version-1-2">29 April 2003: Version 1.2</a></h2>
-<ul>
-<li><p class="first">No changes in API.</p>
-</li>
-<li><dl class="first docutils">
-<dt>Internal changes:</dt>
-<dd><ul class="first last simple">
-<li>Defined &quot;True&quot; and &quot;False&quot; in Simulation.py to support Python 2.2.</li>
-</ul>
-</dd>
-</dl>
-</li>
-</ul>
-</div>
-<div class="section">
-<h2><a id="october-2002" name="october-2002">22 October 2002:</a></h2>
-<ul class="simple">
-<li>Re-release of 0.5 Beta on SourceForge.net to replace corrupted file __init__.py.</li>
-<li>No code changes whatever!</li>
-</ul>
-</div>
-<div class="section">
-<h2><a id="id4" name="id4">18 October 2002:</a></h2>
-<ul>
-<li><p class="first">Version 0.5 Beta-release, intended to get testing by application developers and system integrators in preparation of first full (production) release. Released on SourceForge.net on 20 October 2002.</p>
-</li>
-<li><p class="first">More models</p>
-</li>
-<li><p class="first">Documentation enhanced by a manual, a tutorial (&quot;The Bank&quot;) and installation instructions.</p>
-</li>
-<li><p class="first">Major changes to the API:</p>
-<ul>
-<li><p class="first">Introduced 'simulate(until=0)' instead of 'scheduler(till=0)'. Left 'scheduler()' in for backward compatibility, but marked as deprecated.</p>
-</li>
-<li><p class="first">Added attribute &quot;name&quot; to class Process. Process constructor is now:</p>
-<pre class="literal-block">
-def __init__(self,name=&quot;a_process&quot;)
-</pre>
-<p>Backward compatible if keyword parameters used.</p>
-</li>
-<li><p class="first">Changed Resource constructor to:</p>
-<pre class="literal-block">
-def __init__(self,capacity=1,name=&quot;a_resource&quot;,unitName=&quot;units&quot;)
-</pre>
-<p>Backward compatible if keyword parameters used.</p>
-</li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section">
-<h2><a id="september-2002" name="september-2002">27 September 2002:</a></h2>
-<ul class="simple">
-<li>Version 0.2 Alpha-release, intended to attract feedback from users</li>
-<li>Extended list of models</li>
-<li>Upodated documentation</li>
-</ul>
-</div>
-<div class="section">
-<h2><a id="id5" name="id5">17 September 2002</a></h2>
-<ul class="simple">
-<li>Version 0.1.2 published on SourceForge; fully working, pre-alpha code</li>
-<li>Implements simulation, shared resources with queuing (FIFO), and monitors for data gathering/analysis.</li>
-<li>Contains basic documentation (cheatsheet) and simulation models for test and demonstration.</li>
-</ul>
-<!-- Local Variables:
-mode: rst
-indent-tabs-mode: nil
-sentence-end-double-space: t
-fill-column: 70
-End: -->
-</div>
-</div>
-</div>
-</body>
-</html>

File HISTORY.txt

-===============
- HISTORY: SimPy
-===============
-
-:Authors: - Tony Vignaux <Vignaux@users.sourceforge.net>
-          - Klaus Muller <Muller@users.sourceforge.net>
-:SimPy version: 1.9.1
-:SimPy Web-site: http://simpy.sourceforge.net/
-:SimPy wiki: http://www.mcs.vuw.ac.nz/cgi-bin/wiki/SimPy
-:Python-Version: 2.3+
-:Revision: $Revision: 1.1.1.19 $
-:Date: $Date: 2008/03/15 12:25:50 $
-
-=============
-SimPy History
-=============
-
-SimPy is based on ideas from Simula and Simscript but uses standard
-Python. It combines two previous packages, SiPy, in Simula-Style
-(Dr. Klaus Muller) and SimPy, in Simscript style (Tony.Vignaux and
-Chang Chui)
-
-SimPy is based on efficient implementation of co-routines using
-Python's generators capability.
-
-The package has been hosted on Sourceforge.net since 15 September 2002.
-Sourceforge.net's service has always outstanding. It is essential to
-the SimPy project!
-
-March 2008: Version 1.9.1
-==========================
-
-This is a bug-fix release which cures the following bugs:
-
-- Excessive production of circular garbage, due to a circular reference
-  between Process instances and event notices. This led to large memory
-  requirements.
-  
-- Runtime error for preempts of proceeses holding multiple Resource objects.
-
-It also adds a Short Manual, describing only the basic facilities of SimPy.
-
-December 2007: Version 1.9
-==========================
-
-This is a major release with added functionality/new user API calls and bug fixes.
-
-Major changes
-~~~~~~~~~~~~~
-
-- The event list handling has been changed to improve the runtime performance
-  of large SimPy models (models with thousands of processes). The use of
-  dictionaries for timestamps has been stopped. Thanks are due to Prof.
-  Norm Matloff and a team of his students who did a study on improving
-  SimPy performance. This was one of their recommendations. Thanks, Norm and guys!
-  Furthermore, in version 1.9 the 'heapq' sorting package replaces 'bisect'.
-  Finally, cancelling events no longer removes them, but rather marks them.
-  When their event time comes, they are ignored. This was Tony Vignaux' idea!
-  
-- The Manual has been edited and given an easier-to-read layout.
-    
-- The Bank2 tutorial has been extended by models  which use more advanced
-  SimPy commands/constructs.
-  
-Bug fixes
-~~~~~~~~~
-
-- The tracing of 'activate' statements has been enabled.
-  
-Additions
-~~~~~~~~~
-
-- A method returning the time-weighted variance of observations
-  has been added to classes Monitor and Tally.
-  
-- A shortcut activation method called "start" has been added
-  to class Process.
-  
-
-January 2007: Version 1.8
-=========================
-
-
-Major Changes
-~~~~~~~~~~~~~~
-
-- SimPy 1.8 and future releases will not run under the obsolete 
-  Python 2.2 version. They require Python 2.3 or later.
-  
-- The Manual has been thoroughly edited, restructured and rewritten. 
-  It is now also provided in PDF format.
-  
-- The Cheatsheet has been totally rewritten in a tabular format. 
-  It is provided in both XLS (MS Excel spreadsheet) and PDF format.
-
-- The version of SimPy.Simulation(RT/Trace/Step) is now accessible
-  by the variable 'version'.
-  
-- The *__str__* method of Histogram was changed to return a table format.
-  
-Bug fixes
-~~~~~~~~~~~~
-
-- Repaired a bug in *yield waituntil* runtime code. 
-
-- Introduced check for *capacity* parameter of a Level or a Store
-  being a number > 0.
-  
-- Added code so that self.eventsFired gets set correctly after an event fires
-  in a compound yield get/put with a waitevent clause (reneging case).
-  
-- Repaired a bug in prettyprinting of Store objects.
-
-Additions
-~~~~~~~~~~
-
-- New compound yield statements support time-out or event-based
-  reneging in get and put operations on Store and Level instances.
-  
-- *yield get* on a Store instance can now have a filter function.
-  
-- All Monitor and Tally instances are automatically registered in list 
-  *allMonitors* and *allTallies*, respectively.
-
-- The new function *startCollection* allows activation of Monitors and 
-  Tallies at a specified time.
-  
-- A *printHistogram* method was added to Tally and Monitor which generates
-  a table-form histogram.
-  
-- In SimPy.SimulationRT: A function for allowing changing
-  the ratio wall clock time to simulation time has been added. 
-
-June 2006: Version 1.7.1
-==============================
-
-This is a maintenance release. The API has not been changed/added to.
-
--   Repair of a bug in the _get methods of Store and Level which could lead to synchronization problems 
-    (blocking of producer processes, despite space being available in the buffer).
-    
--   Repair of Level __init__ method to allow initialBuffered to be of either float or int type. 
-  
--   Addition of type test for Level get parameter 'nrToGet' to limit it to positive
-    int or float.
-    
--   To improve pretty-printed output of 'Level' objects, changed attribute
-    '_nrBuffered' to 'nrBuffered' (synonym for 'amount' property).
-    
--   To improve pretty-printed output of 'Store' objects, added attribute
-    'buffered' (which refers to '_theBuffer' attribute).
-
-
-February 2006: Version 1.7
-===============================
-
-This is a major release.
-
-- Addition of an abstract class Buffer, with two sub-classes *Store* and *Level*
-  Buffers are used for modelling inter-process synchronization in producer/
-  consumer and multi-process cooperation scenarios.
-
-- Addition of two new *yield* statements:
-
-  + *yield put* for putting items into a buffer, and
-  
-  + *yield get* for getting items from a buffer.
-  
-- The Manual has undergone a major re-write/edit.
-
-- All scripts have been restructured for compatibility with IronPython 1 beta2.
-  This was doen by moving all *import* statements to the beginning of the scripts.
-  After the removal of the first (shebang) line, all scripts (with the exception
-  of plotting and GUI scripts) can run successfully under this new Python
-  implementation.
-
-September 2005: Version 1.6.1
-=================================
-
-This is a minor release.
-
-- Addition of Tally data collection class as alternative
-  to Monitor. It is intended for collecting very large data sets
-  more efficiently in storage space and time than Monitor.
-
-- Change of Resource to work with Tally (new Resource 
-  API is backwards-compatible with 1.6).
-
-- Addition of function setHistogram to class Monitor for initializing
-  histograms.
-  
-- New function allEventNotices() for debugging/teaching purposes. It returns
-  a prettyprinted string with event times and names of process instances.
-  
-- Addition of function allEventTimes (returns event times of all scheduled 
-  events).
-  
-15 June 2005: Version 1.6
-==============================
-
-- Addition of two compound yield statement forms to support the modelling of
-  processes reneging from resource queues.
-  
-- Addition of two test/demo files showing the use of the new reneging statements.
-
-- Addition of test for prior simulation initialization in method activate().
-
-- Repair of bug in monitoring thw waitQ of a resource when preemption occurs.
-
-- Major restructuring/editing to Manual and Cheatsheet.
-
-1 February 2005: Version 1.5.1
-==================================
-
-- MAJOR LICENSE CHANGE:
-
-	Starting with this version 1.5.1, SimPy is being release under the GNU
-	Lesser General Public License (LGPL), instead of the GNU GPL. This change
-	has been made to encourage commercial firms to use SimPy in for-profit
-	work.
-
-- Minor re-release
-
-- No additional/changed functionality
-
-- Includes unit test file'MonitorTest.py' which had been accidentally deleted 
-  from 1.5
-
-- Provides updated version of 'Bank.html' tutorial.
-
-- Provides an additional tutorial ('Bank2.html') which shows
-  how to use the new synchronization constructs introduced in SimPy 1.5. 
-
-- More logical, cleaner version numbering in files. 
-
-1 December 2004: Version 1.5
-================================
-
-- No new functionality/API changes relative to 1.5 alpha
-
-- Repaired bug related to waiting/queuing for multiple events
-
-- SimulationRT: Improved synchronization with wallclock time on Unix/Linux
-
-25 September 2004: Version 1.5alpha
-======================================
-
-- New functionality/API additions
-
-	* SimEvents and signalling synchronization constructs, with 'yield waitevent' and 'yield queueevent' commands.
-
-	* A general "wait until" synchronization construct, with the 'yield waituntil' command.
-
-- No changes to 1.4.x API, i.e., existing code will work as before.
-
-19 May 2004: Version 1.4.2
-==============================
-
-- Sub-release to repair two bugs:
-
-	* The unittest for monitored Resource queues does not fail anymore.
-
-	* SimulationTrace now works correctly with "yield hold,self" form.
-
-- No functional or API changes
-
-29 February 2004: Version 1.4.1
-======================================
-
-- Sub-release to repair two bugs:
-
-     * The (optional) monitoring of the activeQ in Resource now works correctly.
-
-     * The "cellphone.py" example is now implemented correctly.
-
-- No functional or API changes
-
-1 February 2004: Version 1.4 published on SourceForge
-========================================================
-
-22 December 2003: Version 1.4 alpha
-========================================
-
-- New functionality/API changes
-
-	* All classes in the SimPy API are now new style classes, i.e., they inherit from *object* either directly or indirectly.
-
-	* Module *Monitor.py* has been merged into module *Simulation.py* and all *SimulationXXX.py* modules. Import of *Simulation* or any *SimulationXXX* module now also imports *Monitor*.
-
-	* Some *Monitor* methods/attributes have changed. See Manual!
-
-	* *Monitor* now inherits from *list*.
-
-      * A class *Histogram* has been added to *Simulation.py* and all *SimulationXXX.py* modules.
-
-      * A module *SimulationRT* has been added which allows synchronization between simulated and wallclock time.
-
-      * A moduleSimulationStep which allows the execution of a simulation model event-by-event, with the facility to execute application code after each event.
-
-      * A Tk/Tkinter-based module *SimGUI* has been added which provides a SimPy GUI framework.
-
-      * A Tk/Tkinter-based module *SimPlot* has been added which provides for plot output from SimPy programs.
-
-22 June 2003: Version 1.3
-===============================
-
-- No functional or API changes
-- Reduction of sourcecode linelength in Simulation.py to <= 80 characters
-
-9 June 2003: Version 1.3 alpha
-====================================
-
-- Significantly improved performance
-- Significant increase in number of quasi-parallel processes SimPy can handle
-- New functionality/API changes:
-
-	* Addition of SimulationTrace, an event trace utility
-	* Addition of Lister, a prettyprinter for instance attributes
-	* No API changes
-
-- Internal changes:
-
-	* Implementation of a proposal by Simon Frost: storing the keys of the event set dictionary in a binary search tree using bisect. Thank you, Simon! SimPy 1.3 is dedicated to you!
-
-- Update of Manual to address tracing.
-- Update of Interfacing doc to address output visualization using Scientific Python gplt package.
-
-29 April 2003: Version 1.2
-===========================
-
-- No changes in API.
-- Internal changes:
-	* Defined "True" and "False" in Simulation.py to support Python 2.2.
-
-22 October 2002:
-====================
-
--   Re-release of 0.5 Beta on SourceForge.net to replace corrupted file __init__.py.
--   No code changes whatever!
-
-18 October 2002:
-=====================
-
--   Version 0.5 Beta-release, intended to get testing by application developers and system integrators in preparation of first full (production) release. Released on SourceForge.net on 20 October 2002.
--   More models
--   Documentation enhanced by a manual, a tutorial ("The Bank") and installation instructions.
--   Major changes to the API:
-
-    *  Introduced 'simulate(until=0)' instead of 'scheduler(till=0)'. Left 'scheduler()' in for backward compatibility, but marked as deprecated.
-    *  Added attribute "name" to class Process. Process constructor is now::
-
-       	def __init__(self,name="a_process")
-
-       Backward compatible if keyword parameters used.
- 
-    *  Changed Resource constructor to::
- 
-       	def __init__(self,capacity=1,name="a_resource",unitName="units")
-
-       Backward compatible if keyword parameters used.
-       
-27 September 2002:
-=====================
-
--   Version 0.2 Alpha-release, intended to attract feedback from users
--   Extended list of models
--   Upodated documentation
-
-17 September 2002
-====================
-
--   Version 0.1.2 published on SourceForge; fully working, pre-alpha code
--   Implements simulation, shared resources with queuing (FIFO), and monitors for data gathering/analysis.
--   Contains basic documentation (cheatsheet) and simulation models for test and demonstration.
-
-
-..
-   Local Variables:
-   mode: rst
-   indent-tabs-mode: nil
-   sentence-end-double-space: t
-   fill-column: 70 
-   End:

File INSTALLATION.txt

-===================
-INSTALLATION: SimPy
-===================
-
-:Authors: - Tony Vignaux <Vignaux@users.sourceforge.net>
-          - Klaus Muller <Muller@users.sourceforge.net>
-:SimPy version: 1.9
-:SimPy Web-site: http://simpy.sourceforge.net/
-:SimPy wiki: http://www.mcs.vuw.ac.nz/cgi-bin/wiki/SimPy
-:Python-Version: 2.3+
-:Revision: $Revision: 1.1.1.14 $
-:Date: $Date: 2007/12/15 05:22:22 $
-
-
-This file describes the installation of SimPy 1.9.
-
-In order to install SimPy on your system, you will need to perform the
-following steps:
-
-1. Check that you have Python 2.3 or a later version installed on your
-   system. If necessary, download it from http://www.python.org and
-   install it.
-
-2. Download and unpack the SimPy archive into a folder (using option "Use folder
-   names" in WinZip, "Re-create folders" in Linux Archive Manager, or
-   similar option in your unpacker). This will create a SimPy-1.9 folder with all source
-   code and documentation.	Run "python setup.py install" in that folder. This 
-   will install the SimPy programs in a folder on the Python 
-   search path (typically /Lib/site-packages). 
-
-3. Run one or more of the programs under /SimPy-1.9/SimPyModels to see
-   whether Python finds the SimPy module. If you get an error message
-   like "ImportError: No module named SimPy", move the SimPy folder
-   into a directory which you know to be on the Python module search
-   path (like /Lib/site-packages).
-
-4. Read the tutorial and manuals and build your own simple models. A
-   few lines of Python with SimPy calls can already model significant
-   real systems.
-
-Enjoy simulation programming in SimPy!

File LGPLlicense.html

-<!DOCTYPE html PUBLIC "-//IETF//DTD HTML 2.0//EN">
-<html><head><title>GNU Lesser General Public License - GNU Project - Free Software Foundation (FSF)</title>
-
-<link rev="made" href="mailto:webmasters@www.gnu.org"></head>
-
-<body alink="#ff0000" bgcolor="#ffffff" link="#1f00ff" text="#000000" vlink="#9900dd">
-<h1>GNU Lesser General Public License</h1>
-
-
-<a href="http://www.gnu.org/graphics/philosophicalgnu.html"><img src="LGPLlicensefiles/philosophical-gnu-sm.jpg" alt=" [image of a Philosophical Gnu] " height="200" width="160"></a>
-
-<!-- Please keep this list alphabetical -->
-<!-- tower, lesser.ja.html is Japanese translation of THIS PAGE, -->
-<!-- NOT translation of LGPL itself(lesser.ja.html contains the original -->
-<!-- English version). So please do not remove the following. -->
-<!-- Thanks -mhatta -->
-[
-  <a href="http://www.gnu.org/copyleft/lesser.html">English</a>
-| <a href="http://www.gnu.org/copyleft/lesser.ja.html">Japanese</a>
-]
-
-<!-- It is best to not enumerate the translations here in a menu bar, -->
-<!-- It is best to have the users follow this link, so they have the FSF' -->
-<!-- explanation about translations being unofficial, etc. -->
-
-<p>
-</p><ul>
-  <li><a href="http://www.gnu.org/philosophy/why-not-lgpl.html">Why you shouldn't use the
-       Library GPL for your next library</a>
-  </li><li><a href="http://www.gnu.org/copyleft/gpl-violation.html"><em>What to do if you see a possible
-       LGPL violation</em></a>
-  </li><li><a href="http://www.gnu.org/copyleft/copyleft.html#translationsLGPL"><em>Translations
-       of the LGPL</em></a>
-  </li><li>The GNU Lesser General Public License as a
-       <a href="http://www.gnu.org/copyleft/lesser.txt">text file</a>
-  </li><li>The GNU Lesser General Public License as a
-       <a href="http://www.gnu.org/copyleft/lesser.texi">Texinfo</a> file
-</li></ul>
-
-<p>
-</p><hr>
-<p>
-This GNU Lesser General Public License counts as the successor