diff --git a/readme.md b/readme.md index 6087e99..6f9fea4 100644 --- a/readme.md +++ b/readme.md @@ -26,38 +26,38 @@ unless `make test` works. Version 3 features ------------------ - * Optional OnInit handler added - Standardizes how individual device - initialisation is done. - * tag added to DevI to allow individual setting of device instance states. - * Optional Default tag has been added to Scalar, Array, Tuple, and Union - - Takes JSON strings which are parsed to provide default values to instances - of these data types. - * Optional attribute "indexed" in OutputPin added: - * Boolean used to indicate whether this pin broadcasts or sends to an - index - default is broadcast. - * Optional attribute "sendIndex" for Edge instances added, accepting an - integer to identify this pin for indexed send Output pin. - * Application pins removed - They have been deprecated by Externals. - * DeviceSharedCode removed - SharedCode in DeviceType performs this task. - * Fix incorrect definition for TypeDef (typedDataSpec -> typedDataMember). - * TypeDef can now contain documentation. - * Dense or Sparse array initialisation provided for Arrays. - * Digest hashes for types and instances added. - * Added , renamed from in previous - versions. - * GraphInstance attribute "supervisorTypeId" changed from - "supervisorDeviceTypeId" to match name of SupervisorType. - * Updated SupervisorType to the specification discussed with Southampton. - * and tags are to be entirely removed. - * These are replaced by optional , and . - * This provides more detailed descriptions of when these handlers are executed. +* Optional OnInit handler added - Standardizes how individual device +initialisation is done. +* `` tag added to DevI to allow individual setting of device instance states. +* Optional Default tag has been added to Scalar, Array, Tuple, and Union - +Takes JSON strings which are parsed to provide default values to instances +of these data types. +* Optional attribute "indexed" in OutputPin added: + * Boolean used to indicate whether this pin broadcasts or sends to an + index - default is broadcast. +* Optional attribute "sendIndex" for Edge instances added, accepting an +integer to identify this pin for indexed send Output pin. +* Application pins removed - They have been deprecated by Externals. +* DeviceSharedCode removed - SharedCode in DeviceType performs this task. +* Fix incorrect definition for TypeDef (typedDataSpec -> typedDataMember). +* TypeDef can now contain documentation. +* Dense or Sparse array initialisation provided for Arrays. +* Digest hashes for types and instances added. +* Added , renamed from in previous +versions. +* GraphInstance attribute "supervisorTypeId" changed from +"supervisorDeviceTypeId" to match name of SupervisorType. +* Updated SupervisorType to the specification discussed with Southampton. +* and tags are to be entirely removed. + * These are replaced by optional , and . + * This provides more detailed descriptions of when these handlers are executed. An exemplar XML for version 3, featuring *one of everything* can be found in `master/virtual-graph-schema-v3-exemplar-xml.xml` **A conversion script from version 2 to version 3 is included in with this new version of the schema. Information on it's usage is included -[here](#`tools/convert_v2_graph_to_v3.py`)** +[here](#Tools)** Requirements ============ @@ -207,6 +207,21 @@ is lost or any device fails. Tools ===== +### tools/convert_v2_graph_to_v3.py + +Takes an XML graph type or graph instance which is written using version 2.* +of the schema, and converts this to version 3 of the schema. This converts +any `__init__` input pins to `` handlers, and removes any application +pin attributes. + +Usage: +``` +python tools/convert_v2_graph_to_v3.py >> +``` + +If no path to a new XML file is provided, the XML will be printed to the +screen. + ### bin/epoch_sim This is an epoch based orchestrator. In each epoch, each device gets a chance to @@ -271,7 +286,7 @@ Parameters: - `--output OUTPUT` : Choose the output name, or if snapshots are specified the output prefix. -### `tools/render_event_log_as_dot.py` +### tools/render_event_log_as_dot.py Takes an event log (e.g. generated by `bin/epoch_sim`) and renders it as a graph. _Beware_: don't try to render lots of events (e.g. 1000+) or large numbers of devices (30+), @@ -284,19 +299,3 @@ tools/render_event_log_as_dot.py events.xml dot graph.dot -Tsvg -O ```` Should produce an svg called `graph.svg`. - -### `tools/convert_v2_graph_to_v3.py` - -Takes an XML graph type or graph instance which is written using version 2.* -of the schema, and converts this to version 3 of the schema. This converts -any `__init__` input pins to `` handlers, and removes any application -pin attributes. - -Usage: -``` -python tools/convert_v2_graph_to_v3.py >> - -``` - -If no path to a new XML file is provided, the XML will be printed to the -screen.