first commit

This commit is contained in:
Stefano Rossi 2025-07-12 19:18:13 +02:00
commit 21ab9f2e54
Signed by: chadmin
GPG key ID: 9EFA2130646BC893
79 changed files with 1298 additions and 0 deletions

View file

@ -0,0 +1,13 @@
ch.epfl.javancox.topology_analysis.link_metrics.LinkBetweennessComputer
ch.epfl.javancox.topology_analysis.network_metrics.ClusteringCoefficientComputer
ch.epfl.javancox.topology_analysis.network_metrics.ComponentNumberComputer
ch.epfl.javancox.topology_analysis.network_metrics.DiameterComputer
ch.epfl.javancox.topology_analysis.network_metrics.GiantComponentSizeComputer
ch.epfl.javancox.topology_analysis.network_metrics.GiantComponentSizeComputer$RelativeGiantComponentSizeComputer
ch.epfl.javancox.topology_analysis.network_metrics.TransivityComputer
ch.epfl.javancox.topology_analysis.node_metrics.DegreeComputer
ch.epfl.javancox.topology_analysis.node_metrics.NodeBetweennessComputer
ch.epfl.javancox.topology_analysis.node_pair_metrics.AlgebraicalDistanceComputer
ch.epfl.javancox.topology_analysis.node_pair_metrics.GeodesicalDistanceComputer
ch.epfl.javancox.topology_analysis.node_pair_metrics.PathDistanceComputer
ch.epfl.javancox.topology_analysis.node_pair_metrics.TopologicalDistanceComputer

BIN
div/images/WDM_switch.emf Normal file

Binary file not shown.

BIN
div/images/WDM_switch.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

BIN
div/images/computeNode.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

BIN
div/images/delete.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 124 B

BIN
div/images/europe_map.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

BIN
div/images/folder_close.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

BIN
div/images/folder_open.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

BIN
div/images/glp_last.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 140 B

BIN
div/images/glp_next.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 124 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 576 B

BIN
div/images/node.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 326 B

BIN
div/images/pause.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 338 B

BIN
div/images/pause__other.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 900 B

BIN
div/images/play.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 888 B

BIN
div/images/resume_co.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 337 B

BIN
div/images/router.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

BIN
div/images/router2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

BIN
div/images/run_exc.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 379 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 452 B

BIN
div/images/simple_node.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 847 B

BIN
div/images/step.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 934 B

BIN
div/images/stop.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 215 B

BIN
div/images/stop_0.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 401 B

BIN
div/images/stop__other.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 875 B

View file

@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
<comment>Hi</comment>
<entry key="ch.epfl.javanco.testProperty">THIS IS THE VALUE OF THIS TEST PROPERTY</entry>
<entry key="ch.epfl.javanco.schemaName">schema.xsd</entry>
<entry key="ch.epfl.javanco.XMLvalidation">true</entry>
<entry key="ch.epfl.javanco.graphRepresentation">ch.epfl.javanco.network.VectorRepresentation</entry>
<entry key="ch.epfl.javanco.imageDir">div/images</entry>
<entry key="ch.epfl.javanco.schemaDir">div/xmlschemas</entry>
<entry key="ch.epfl.javanco.extraClassDir">output/classes/generatedClasses</entry>
<entry key="ch.epfl.javanco.defaultOutputDir">output</entry>
<entry key="ch.epfl.javanco.xmlFilesDir">default_graphs</entry>
<entry key="ch.epfl.javanco.groovyScriptsDir">groovy_scripts</entry>
<entry key="ch.epfl.javanco.defaultClassPathPrefixes">ch.epfl;edu;sandbox</entry>
<entry key="ch.epfl.javanco.graphics.defaultPainterClass">ch.epfl.javanco.graphics.DefaultNetworkPainter2DExtended</entry>
<entry key="ch.epfl.javanco.graphics.defaultNodeSize">32</entry>
<entry key="ch.epfl.javanco.graphics.defaultLinkWidth">3</entry>
<entry key="ch.epfl.javanco.graphics.maxNodeSize">320</entry>
<entry key="ch.epfl.javanco.graphics.minNodeSize">4</entry>
<entry key="ch.epfl.javanco.graphics.maxLinkWidth">20</entry>
<entry key="ch.epfl.javanco.graphics.defaultNodeIcon"></entry>
<entry key="ch.epfl.javanco.graphics.defaultNodeColor">#FFFFFF</entry>
<entry key="ch.epfl.javanco.graphics.defaultLinkColor">#000000</entry>
<entry key="ch.epfl.javanco.graphics.defaultBackgroundColor">#FFFFFF</entry>
<entry key="ch.epfl.javanco.graphics.defaultLabelFontSize">14</entry>
<entry key="ch.epfl.javanco.graphics.coloredIcons">true</entry>
<entry key="log4j.configuration.toURL">div/log4j.properties</entry>
<entry key="ch.epfl.random.PRGWebService.useSax">true</entry>
<entry key="ch.epfl.random.PRGWebService.direct">true</entry>
<entry key="deamon_port">15555</entry>
</properties>

View file

@ -0,0 +1,11 @@
ch.epfl.javancox.inputs.topology.CirclesPlanarGenerator$RandomCircles
ch.epfl.javancox.inputs.topology.DivisionPlanarGenerator$RandomDivisions
ch.epfl.javancox.inputs.topology.GridRandomGenerator$RandomGrid
ch.epfl.javancox.inputs.topology.MNDBasedProvider$Predefined
ch.epfl.javancox.inputs.topology.PolygonGenerator$Ring
ch.epfl.javancox.inputs.topology.ReyniErdosGenerator$ErdosReyni
ch.epfl.javancox.inputs.topology.ScaleFreeNetworkGenerator$BarabasiAlbert
ch.epfl.javancox.inputs.topology.TessellationGenerator$Tesselation
ch.epfl.javancox.inputs.topology.TorusGenerator$Torus
ch.epfl.javancox.inputs.topology.WattsStrogatzGenerator$WattsStrogatz
ch.epfl.javancox.inputs.topology.WebsGenerator$Webs

14
div/log4j.properties Normal file
View file

@ -0,0 +1,14 @@
# Set root category priority to DEBUG and set its only appender to A1 (set priority to INFO for normal testing and WARN for production)
log4j.rootLogger=DEBUG,A1
# A1 is a ConsoleAppender.
log4j.appender.A1=org.apache.log4j.ConsoleAppender
# A1 has a simple layout
log4j.appender.A1.layout=org.apache.log4j.SimpleLayout
# Uncomment these linessv for more detailed output
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern= %-5p %.60c- %m%n

View file

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="network">
<xs:complexType>
<xs:sequence>
<xs:any minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>

119
div/xmlschemas/schema.xsd Normal file
View file

@ -0,0 +1,119 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="network">
<xs:complexType>
<xs:sequence>
<!-- main_description must be the first sub-element of network (impossible to allow unspecified elements before main_description if the document is parsed by an event-based parser) -->
<xs:element name="main_description" type="main_descr_type">
<!-- the layer id must be unique within the network -->
<xs:unique name="unique_layer_id">
<xs:selector xpath="./layer"/>
<xs:field xpath="./@id"/>
</xs:unique>
<!-- the node id must be unique within the network and will be referenced by link/@orig and link/@dest -->
<xs:key name="key_node_id">
<xs:selector xpath="./*/node"/>
<xs:field xpath="@id"/>
</xs:key>
<!-- the origine of a link must reference an existing node id -->
<xs:keyref name="keyref_link_orig" refer="key_node_id">
<xs:selector xpath="./*/link"/>
<xs:field xpath="@orig"/>
</xs:keyref>
<!-- the destination of a link must reference an existing node id -->
<xs:keyref name="keyref_link_dest" refer="key_node_id">
<xs:selector xpath="./*/link"/>
<xs:field xpath="@dest"/>
</xs:keyref>
</xs:element>
<!-- COMMENT THE TWO NEXT ELEMENTS IF YOU DON'T WANT TO USE THEM IN THIS ORDER -->
<xs:element name="additional_description" minOccurs="0">
<!-- the content of additional_description is not specified -->
<xs:complexType>
<xs:sequence>
<xs:any namespace="##any" processContents="skip" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="graphical_data" minOccurs="0">
<!-- the content of graphical_data is not specified -->
<xs:complexType>
<xs:sequence>
<xs:any namespace="##any" processContents="skip" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- allow to have other (unspecified) sub-elements of network -->
<xs:any namespace="##any" processContents="skip" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- content of the main_description element : -->
<xs:complexType name="main_descr_type">
<xs:sequence>
<xs:element name="layer" maxOccurs="unbounded">
<!-- content of layer elements -->
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="node">
<xs:complexType>
<xs:sequence>
<xs:any namespace="##any" processContents="skip" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<!-- specified attributes of node should be added in the "node_specified_att" attribute group at the bottom of this document -->
<xs:attributeGroup ref="node_specified_att"/>
<xs:anyAttribute namespace="##any" processContents="skip"/>
</xs:complexType>
</xs:element>
<xs:element name="link">
<xs:complexType>
<xs:sequence>
<xs:any namespace="##any" processContents="skip" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<!-- specified attributes of link should be added in the "link_specified_att" attribute group at the bottom of this document -->
<xs:attributeGroup ref="link_specified_att"/>
<xs:anyAttribute namespace="##any" processContents="skip"/>
</xs:complexType>
</xs:element>
</xs:choice>
<!-- specified attributes of layer should be added in the "layer_specified_att" attribute group at the bottom of this document -->
<xs:attributeGroup ref="layer_specified_att"/>
<xs:anyAttribute namespace="##any" processContents="skip"/>
</xs:complexType>
<!-- the couple (orig, dest) of a link must be unique within a layer -->
<xs:unique name="unique_orig_dest">
<xs:selector xpath="./link"/>
<xs:field xpath="@orig"/>
<xs:field xpath="@dest"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:complexType>
<!-- describe the authorized type for positions, i.e. an integer or a geographical coordinate -->
<xs:simpleType name="position_type">
<xs:union memberTypes="xs:integer">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="\d{1,2}(\.\d{1,2})?\s*[ENSW]"/>
</xs:restriction>
</xs:simpleType>
</xs:union>
</xs:simpleType>
<!-- ADD HERE THE ATTRIBUTES YOU WANT TO SPECIFY FOR THE CORRESPONDING NETWORK OBJECT -->
<!-- Specified attributes of layer : -->
<xs:attributeGroup name="layer_specified_att">
<xs:attribute name="id" type="xs:string" use="required"/>
</xs:attributeGroup>
<!-- Specified attributes of node : -->
<xs:attributeGroup name="node_specified_att">
<xs:attribute name="id" type="xs:integer" use="required"/>
<xs:attribute name="label" type="xs:string" use="optional"/>
<xs:attribute name="pos_x" type="position_type" use="required"/>
<xs:attribute name="pos_y" type="position_type" use="required"/>
</xs:attributeGroup>
<!-- Specified attributes of link : -->
<xs:attributeGroup name="link_specified_att">
<xs:attribute name="orig" type="xs:integer" use="required"/>
<xs:attribute name="dest" type="xs:integer" use="required"/>
</xs:attributeGroup>
</xs:schema>