init project
|
@ -0,0 +1,91 @@
|
|||
## MINETEST RAILWAY CONNECTIONS SEARCH ENGINE
|
||||
|
||||
**Description:**
|
||||
|
||||
MineTest Railway Connections Search Engine is tool which allows to search train connections between the railway stations of interest to us.
|
||||
It using [MapServer](https://github.com/minetest-mapserver/mapserver) and [MapServer MOD](https://github.com/minetest-mapserver/mapserver_mod) to download train lines (defined earlier by mapserver:train blocks) and saved train lines (with distances and travel time) and connections between cities (based on train lines) to database.
|
||||
|
||||
It uses Floyd–Warshall algorithm to fast find path between start station and end station (show only one path), and undirected graph to find all paths between stations (note: if some city doesn't have connection with graph, it causes freezing website or show server error 503 - Service Unavailable, so Floyd–Warshall algorithm fix it).
|
||||
|
||||
**Depends:**
|
||||
|
||||
- PHP
|
||||
- [MapServer ](https://github.com/minetest-mapserver/mapserver)
|
||||
- [MapServer module ](https://github.com/minetest-mapserver/mapserver_mod)
|
||||
- Server WWW with PHP support
|
||||
|
||||
**Project website:**
|
||||
|
||||
[Github website](https://github.com/nitro2010/minetest_traintimetable)
|
||||
|
||||
**License:**
|
||||
|
||||
CC BY 4.0
|
||||
|
||||
**Other information:**
|
||||
|
||||
- https://thenounproject.com/ - some icons are downloaded from it
|
||||
|
||||
**Installing & Configuration:**
|
||||
|
||||
1. Create new database in your database system (PostgreSQL, MySQL, SQLite is using file) and assign permissions to this database.
|
||||
2. Open php.ini and check that extension selected database is enabled (uncomment line, remove ';'):
|
||||
- if you choose MySQL:
|
||||
> extension=pdo_mysql
|
||||
- if you choose PostgreSQL:
|
||||
> extension=pdo_pgsql
|
||||
- if you choose SQLite:
|
||||
> extension=pdo_sqlite
|
||||
|
||||
3. Save file and restart your web server.
|
||||
4. Download project to your web server documents root directory.
|
||||
5. Open minetest.php.
|
||||
6. On the beginning file you have few lines to configuration.
|
||||
- MINETEST_ADVTRAINS_AVG_SPEED - average speed of trains in m/s... default is 20 m/s
|
||||
- MINETEST_MAPSERVER - URL to MineTest mapserver
|
||||
- DB_CONNECTION - string connection to database, see above for examples.
|
||||
- DB_LOGIN - login to database (sqlite don't use it - you can set to empty or null)
|
||||
- DB_PASSWORD - password to database (sqlite don't use it - you can set to empty or null)
|
||||
7. Save file.
|
||||
8. Open console/terminal in directory where is minetest.php and type in console and confirm [ENTER]:
|
||||
|
||||
> php minetest.php -a createtables
|
||||
|
||||
It creates tables in database.
|
||||
|
||||
9. Type in console and confirm [ENTER]:
|
||||
|
||||
> php minetest.php -a mapserver -o
|
||||
|
||||
It download all mapserver:train blocks from MapServer and save train lines to database.
|
||||
|
||||
10. It's all. Open minetest.php in your web browser.
|
||||
|
||||
**Refesh the data about train lines in database**
|
||||
|
||||
When you add/remove stations (mapserver:train block) you need to update information about it in database.
|
||||
|
||||
Open console where is minetest.php file
|
||||
and type & confirm [ENTER]:
|
||||
|
||||
> php minetest.php -a mapserver -o
|
||||
|
||||
its delete all old the data from database and download again the data from MapServer
|
||||
|
||||
**Additional settings in minetest.php**
|
||||
|
||||
> error_reporting(0)
|
||||
|
||||
- 0 - don't show any errors
|
||||
- E_ALL - show all errors
|
||||
|
||||
> set_time_limit(60)
|
||||
|
||||
- 60 [or any number] - max. time in seconds for executing code
|
||||
- Please don't set 0 - its means any limits for executing code
|
||||
- 60 is ok, you can set lower number or higher but not too high
|
||||
|
||||
> ini_set('memory_limit', '512M')
|
||||
|
||||
- set max memory which may be used by script
|
||||
- 512M - 512 MegaBytes
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"require": {
|
||||
"ulrichsg/getopt-php": "^3.4",
|
||||
"algb12/graph-ds": "^1.0"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,151 @@
|
|||
{
|
||||
"_readme": [
|
||||
"This file locks the dependencies of your project to a known state",
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "30697d472c00e3165162c4d75cc43a86",
|
||||
"packages": [
|
||||
{
|
||||
"name": "abcaeffchen/sudoku-php",
|
||||
"version": "1.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/AbcAeffchen/sudoku-php.git",
|
||||
"reference": "2802caa92a787428d749257116a23e15947202c9"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/AbcAeffchen/sudoku-php/zipball/2802caa92a787428d749257116a23e15947202c9",
|
||||
"reference": "2802caa92a787428d749257116a23e15947202c9",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.5.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "4.8.*"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"AbcAeffchen\\sudoku\\": [
|
||||
"src/"
|
||||
]
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"LGPL v3.0"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Alexander Schickedanz (AbcAeffchen)",
|
||||
"email": "abcaeffchen@gmail.com",
|
||||
"role": "Developer"
|
||||
}
|
||||
],
|
||||
"description": "Generate random Sudokus of different size and difficulty and check the solution.",
|
||||
"time": "2016-03-26T13:40:52+00:00"
|
||||
},
|
||||
{
|
||||
"name": "algb12/graph-ds",
|
||||
"version": "1.0.9",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/algb12/GraphDS.git",
|
||||
"reference": "be91927b9b88aa83a4c261b908afc9dd4837956a"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/algb12/GraphDS/zipball/be91927b9b88aa83a4c261b908afc9dd4837956a",
|
||||
"reference": "be91927b9b88aa83a4c261b908afc9dd4837956a",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"ext-dom": "*",
|
||||
"ext-simplexml": "*",
|
||||
"php": ">=5.3.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"codeclimate/php-test-reporter": "^0.4.4",
|
||||
"php": ">=5.4",
|
||||
"phpunit/phpunit": "7.0.*"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"GraphDS\\": "src",
|
||||
"Tests\\": "tests"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Alex Gilburg",
|
||||
"email": "algb12.19@gmail.com"
|
||||
}
|
||||
],
|
||||
"description": "A fast implementation of the graph data-structure in PHP",
|
||||
"time": "2019-03-31T03:03:30+00:00"
|
||||
},
|
||||
{
|
||||
"name": "ulrichsg/getopt-php",
|
||||
"version": "v3.4.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/getopt-php/getopt-php.git",
|
||||
"reference": "9121d7c2c51a6a59ee407c49a13b4d8cfae71075"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/getopt-php/getopt-php/zipball/9121d7c2c51a6a59ee407c49a13b4d8cfae71075",
|
||||
"reference": "9121d7c2c51a6a59ee407c49a13b4d8cfae71075",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"ext-mbstring": "*",
|
||||
"php": ">=5.4.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^4.8",
|
||||
"squizlabs/php_codesniffer": "^2.7"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"GetOpt\\": "src"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Ulrich Schmidt-Goertz",
|
||||
"email": "ulrich@schmidt-goertz.de"
|
||||
},
|
||||
{
|
||||
"name": "Thomas Flori",
|
||||
"email": "thflori@gmail.com"
|
||||
}
|
||||
],
|
||||
"description": "Command line arguments parser for PHP 5.4 - 7.3",
|
||||
"homepage": "http://getopt-php.github.io/getopt-php",
|
||||
"time": "2020-07-14T06:09:04+00:00"
|
||||
}
|
||||
],
|
||||
"packages-dev": [],
|
||||
"aliases": [],
|
||||
"minimum-stability": "stable",
|
||||
"stability-flags": [],
|
||||
"prefer-stable": false,
|
||||
"prefer-lowest": false,
|
||||
"platform": [],
|
||||
"platform-dev": [],
|
||||
"plugin-api-version": "1.1.0"
|
||||
}
|
After Width: | Height: | Size: 6.8 KiB |
After Width: | Height: | Size: 6.9 KiB |
After Width: | Height: | Size: 4.6 KiB |
After Width: | Height: | Size: 6.8 KiB |
After Width: | Height: | Size: 4.5 KiB |
After Width: | Height: | Size: 6.2 KiB |
|
@ -0,0 +1,95 @@
|
|||
|
||||
.circle {
|
||||
position: relative;
|
||||
border: 2px solid #999;
|
||||
border-radius: 100%;
|
||||
width: 16px;
|
||||
line-height: 16px;
|
||||
text-align: center;
|
||||
margin-top: 16px;
|
||||
background-color: #fff;
|
||||
z-index: 2;
|
||||
}
|
||||
|
||||
.circle:first-child {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.circle:before {
|
||||
position: absolute;
|
||||
border: 1px solid #999;
|
||||
width: 0;
|
||||
height: 16px;
|
||||
display: block;
|
||||
content: '';
|
||||
left: 50%;
|
||||
z-index: 1;
|
||||
top: -18px;
|
||||
margin-left: -1px;
|
||||
}
|
||||
|
||||
.circle:first-child:before {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.circle-begin{
|
||||
background-color: red;
|
||||
}
|
||||
|
||||
.circle-end{
|
||||
background-color: green;
|
||||
}
|
||||
|
||||
table.blueTable {
|
||||
border: 1px solid #1C6EA4;
|
||||
background-color: #EEEEEE;
|
||||
width: 100%;
|
||||
text-align: left;
|
||||
border-collapse: collapse;
|
||||
}
|
||||
|
||||
table.blueTable td, table.blueTable th {
|
||||
border: 1px solid #AAAAAA;
|
||||
padding: 3px 3px;
|
||||
}
|
||||
|
||||
table.blueTable tbody td {
|
||||
font-size: 15px;
|
||||
}
|
||||
|
||||
table.blueTable tr:nth-child(even) {
|
||||
background: #D0E4F5;
|
||||
}
|
||||
|
||||
table.blueTable thead {
|
||||
background: #1C6EA4;
|
||||
border-bottom: 2px solid #444444;
|
||||
}
|
||||
|
||||
table.blueTable thead th {
|
||||
font-size: 15px;
|
||||
font-weight: bold;
|
||||
color: #FFFFFF;
|
||||
text-align: center;
|
||||
border-left: 2px solid #D0E4F5;
|
||||
}
|
||||
|
||||
table.blueTable thead th:first-child {
|
||||
border-left: none;
|
||||
}
|
||||
|
||||
table.blueTable tfoot td {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
table.blueTable tfoot .links {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
table.blueTable tfoot .links a{
|
||||
display: inline-block;
|
||||
background: #1C6EA4;
|
||||
color: #FFFFFF;
|
||||
padding: 2px 8px;
|
||||
border-radius: 5px;
|
||||
}
|
|
@ -0,0 +1,417 @@
|
|||
/**
|
||||
* selectize.bootstrap3.css (v0.12.6) - Bootstrap 3 Theme
|
||||
* Copyright (c) 2013–2015 Brian Reavis & contributors
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this
|
||||
* file except in compliance with the License. You may obtain a copy of the License at:
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software distributed under
|
||||
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
|
||||
* ANY KIND, either express or implied. See the License for the specific language
|
||||
* governing permissions and limitations under the License.
|
||||
*
|
||||
* @author Brian Reavis <brian@thirdroute.com>
|
||||
*/
|
||||
.selectize-control.plugin-drag_drop.multi > .selectize-input > div.ui-sortable-placeholder {
|
||||
visibility: visible !important;
|
||||
background: #f2f2f2 !important;
|
||||
background: rgba(0, 0, 0, 0.06) !important;
|
||||
border: 0 none !important;
|
||||
-webkit-box-shadow: inset 0 0 12px 4px #fff;
|
||||
box-shadow: inset 0 0 12px 4px #fff;
|
||||
}
|
||||
.selectize-control.plugin-drag_drop .ui-sortable-placeholder::after {
|
||||
content: '!';
|
||||
visibility: hidden;
|
||||
}
|
||||
.selectize-control.plugin-drag_drop .ui-sortable-helper {
|
||||
-webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
|
||||
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.selectize-dropdown-header {
|
||||
position: relative;
|
||||
padding: 3px 12px;
|
||||
border-bottom: 1px solid #d0d0d0;
|
||||
background: #f8f8f8;
|
||||
-webkit-border-radius: 4px 4px 0 0;
|
||||
-moz-border-radius: 4px 4px 0 0;
|
||||
border-radius: 4px 4px 0 0;
|
||||
}
|
||||
.selectize-dropdown-header-close {
|
||||
position: absolute;
|
||||
right: 12px;
|
||||
top: 50%;
|
||||
color: #333333;
|
||||
opacity: 0.4;
|
||||
margin-top: -12px;
|
||||
line-height: 20px;
|
||||
font-size: 20px !important;
|
||||
}
|
||||
.selectize-dropdown-header-close:hover {
|
||||
color: #000000;
|
||||
}
|
||||
.selectize-dropdown.plugin-optgroup_columns .optgroup {
|
||||
border-right: 1px solid #f2f2f2;
|
||||
border-top: 0 none;
|
||||
float: left;
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.selectize-dropdown.plugin-optgroup_columns .optgroup:last-child {
|
||||
border-right: 0 none;
|
||||
}
|
||||
.selectize-dropdown.plugin-optgroup_columns .optgroup:before {
|
||||
display: none;
|
||||
}
|
||||
.selectize-dropdown.plugin-optgroup_columns .optgroup-header {
|
||||
border-top: 0 none;
|
||||
}
|
||||
.selectize-control.plugin-remove_button [data-value] {
|
||||
position: relative;
|
||||
padding-right: 24px !important;
|
||||
}
|
||||
.selectize-control.plugin-remove_button [data-value] .remove {
|
||||
z-index: 1;
|
||||
/* fixes ie bug (see #392) */
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
width: 17px;
|
||||
text-align: center;
|
||||
font-weight: bold;
|
||||
font-size: 12px;
|
||||
color: inherit;
|
||||
text-decoration: none;
|
||||
vertical-align: middle;
|
||||
display: inline-block;
|
||||
padding: 1px 0 0 0;
|
||||
border-left: 1px solid rgba(0, 0, 0, 0);
|
||||
-webkit-border-radius: 0 2px 2px 0;
|
||||
-moz-border-radius: 0 2px 2px 0;
|
||||
border-radius: 0 2px 2px 0;
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.selectize-control.plugin-remove_button [data-value] .remove:hover {
|
||||
background: rgba(0, 0, 0, 0.05);
|
||||
}
|
||||
.selectize-control.plugin-remove_button [data-value].active .remove {
|
||||
border-left-color: rgba(0, 0, 0, 0);
|
||||
}
|
||||
.selectize-control.plugin-remove_button .disabled [data-value] .remove:hover {
|
||||
background: none;
|
||||
}
|
||||
.selectize-control.plugin-remove_button .disabled [data-value] .remove {
|
||||
border-left-color: rgba(77, 77, 77, 0);
|
||||
}
|
||||
.selectize-control.plugin-remove_button .remove-single {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
font-size: 23px;
|
||||
}
|
||||
.selectize-control {
|
||||
position: relative;
|
||||
}
|
||||
.selectize-dropdown,
|
||||
.selectize-input,
|
||||
.selectize-input input {
|
||||
color: #333333;
|
||||
font-family: inherit;
|
||||
font-size: inherit;
|
||||
line-height: 20px;
|
||||
-webkit-font-smoothing: inherit;
|
||||
}
|
||||
.selectize-input,
|
||||
.selectize-control.single .selectize-input.input-active {
|
||||
background: #fff;
|
||||
cursor: text;
|
||||
display: inline-block;
|
||||
}
|
||||
.selectize-input {
|
||||
border: 1px solid #ccc;
|
||||
padding: 6px 12px;
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
-webkit-box-shadow: none;
|
||||
box-shadow: none;
|
||||
-webkit-border-radius: 4px;
|
||||
-moz-border-radius: 4px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.selectize-control.multi .selectize-input.has-items {
|
||||
padding: 5px 12px 2px;
|
||||
}
|
||||
.selectize-input.full {
|
||||
background-color: #fff;
|
||||
}
|
||||
.selectize-input.disabled,
|
||||
.selectize-input.disabled * {
|
||||
cursor: default !important;
|
||||
}
|
||||
.selectize-input.focus {
|
||||
-webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15);
|
||||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15);
|
||||
}
|
||||
.selectize-input.dropdown-active {
|
||||
-webkit-border-radius: 4px 4px 0 0;
|
||||
-moz-border-radius: 4px 4px 0 0;
|
||||
border-radius: 4px 4px 0 0;
|
||||
}
|
||||
.selectize-input > * {
|
||||
vertical-align: baseline;
|
||||
display: -moz-inline-stack;
|
||||
display: inline-block;
|
||||
zoom: 1;
|
||||
*display: inline;
|
||||
}
|
||||
.selectize-control.multi .selectize-input > div {
|
||||
cursor: pointer;
|
||||
margin: 0 3px 3px 0;
|
||||
padding: 1px 3px;
|
||||
background: #efefef;
|
||||
color: #333333;
|
||||
border: 0 solid rgba(0, 0, 0, 0);
|
||||
}
|
||||
.selectize-control.multi .selectize-input > div.active {
|
||||
background: #428bca;
|
||||
color: #fff;
|
||||
border: 0 solid rgba(0, 0, 0, 0);
|
||||
}
|
||||
.selectize-control.multi .selectize-input.disabled > div,
|
||||
.selectize-control.multi .selectize-input.disabled > div.active {
|
||||
color: #808080;
|
||||
background: #ffffff;
|
||||
border: 0 solid rgba(77, 77, 77, 0);
|
||||
}
|
||||
.selectize-input > input {
|
||||
display: inline-block !important;
|
||||
padding: 0 !important;
|
||||
min-height: 0 !important;
|
||||
max-height: none !important;
|
||||
max-width: 100% !important;
|
||||
margin: 0 !important;
|
||||
text-indent: 0 !important;
|
||||
border: 0 none !important;
|
||||
background: none !important;
|
||||
line-height: inherit !important;
|
||||
-webkit-user-select: auto !important;
|
||||
-webkit-box-shadow: none !important;
|
||||
box-shadow: none !important;
|
||||
}
|
||||
.selectize-input > input::-ms-clear {
|
||||
display: none;
|
||||
}
|
||||
.selectize-input > input:focus {
|
||||
outline: none !important;
|
||||
}
|
||||
.selectize-input::after {
|
||||
content: ' ';
|
||||
display: block;
|
||||
clear: left;
|
||||
}
|
||||
.selectize-input.dropdown-active::before {
|
||||
content: ' ';
|
||||
display: block;
|
||||
position: absolute;
|
||||
background: #ffffff;
|
||||
height: 1px;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
}
|
||||
.selectize-dropdown {
|
||||
position: absolute;
|
||||
z-index: 10;
|
||||
border: 1px solid #d0d0d0;
|
||||
background: #fff;
|
||||
margin: -1px 0 0 0;
|
||||
border-top: 0 none;
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
-webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||
-webkit-border-radius: 0 0 4px 4px;
|
||||
-moz-border-radius: 0 0 4px 4px;
|
||||
border-radius: 0 0 4px 4px;
|
||||
}
|
||||
.selectize-dropdown [data-selectable] {
|
||||
cursor: pointer;
|
||||
overflow: hidden;
|
||||
}
|
||||
.selectize-dropdown [data-selectable] .highlight {
|
||||
background: rgba(255, 237, 40, 0.4);
|
||||
-webkit-border-radius: 1px;
|
||||
-moz-border-radius: 1px;
|
||||
border-radius: 1px;
|
||||
}
|
||||
.selectize-dropdown .option,
|
||||
.selectize-dropdown .optgroup-header {
|
||||
padding: 3px 12px;
|
||||
}
|
||||
.selectize-dropdown .option,
|
||||
.selectize-dropdown [data-disabled],
|
||||
.selectize-dropdown [data-disabled] [data-selectable].option {
|
||||
cursor: inherit;
|
||||
opacity: 0.5;
|
||||
}
|
||||
.selectize-dropdown [data-selectable].option {
|
||||
opacity: 1;
|
||||
}
|
||||
.selectize-dropdown .optgroup:first-child .optgroup-header {
|
||||
border-top: 0 none;
|
||||
}
|
||||
.selectize-dropdown .optgroup-header {
|
||||
color: #777777;
|
||||
background: #fff;
|
||||
cursor: default;
|
||||
}
|
||||
.selectize-dropdown .active {
|
||||
background-color: #f5f5f5;
|
||||
color: #262626;
|
||||
}
|
||||
.selectize-dropdown .active.create {
|
||||
color: #262626;
|
||||
}
|
||||
.selectize-dropdown .create {
|
||||
color: rgba(51, 51, 51, 0.5);
|
||||
}
|
||||
.selectize-dropdown-content {
|
||||
overflow-y: auto;
|
||||
overflow-x: hidden;
|
||||
max-height: 200px;
|
||||
-webkit-overflow-scrolling: touch;
|
||||
}
|
||||
.selectize-control.single .selectize-input,
|
||||
.selectize-control.single .selectize-input input {
|
||||
cursor: pointer;
|
||||
}
|
||||
.selectize-control.single .selectize-input.input-active,
|
||||
.selectize-control.single .selectize-input.input-active input {
|
||||
cursor: text;
|
||||
}
|
||||
.selectize-control.single .selectize-input:after {
|
||||
content: ' ';
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
right: 17px;
|
||||
margin-top: -3px;
|
||||
width: 0;
|
||||
height: 0;
|
||||
border-style: solid;
|
||||
border-width: 5px 5px 0 5px;
|
||||
border-color: #333333 transparent transparent transparent;
|
||||
}
|
||||
.selectize-control.single .selectize-input.dropdown-active:after {
|
||||
margin-top: -4px;
|
||||
border-width: 0 5px 5px 5px;
|
||||
border-color: transparent transparent #333333 transparent;
|
||||
}
|
||||
.selectize-control.rtl.single .selectize-input:after {
|
||||
left: 17px;
|
||||
right: auto;
|
||||
}
|
||||
.selectize-control.rtl .selectize-input > input {
|
||||
margin: 0 4px 0 -2px !important;
|
||||
}
|
||||
.selectize-control .selectize-input.disabled {
|
||||
opacity: 0.5;
|
||||
background-color: #fff;
|
||||
}
|
||||
.selectize-dropdown,
|
||||
.selectize-dropdown.form-control {
|
||||
height: auto;
|
||||
padding: 0;
|
||||
margin: 2px 0 0 0;
|
||||
z-index: 1000;
|
||||
background: #fff;
|
||||
border: 1px solid #ccc;
|
||||
border: 1px solid rgba(0, 0, 0, 0.15);
|
||||
-webkit-border-radius: 4px;
|
||||
-moz-border-radius: 4px;
|
||||
border-radius: 4px;
|
||||
-webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
|
||||
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
|
||||
}
|
||||
.selectize-dropdown .optgroup-header {
|
||||
font-size: 12px;
|
||||
line-height: 1.42857143;
|
||||
}
|
||||
.selectize-dropdown .optgroup:first-child:before {
|
||||
display: none;
|
||||
}
|
||||
.selectize-dropdown .optgroup:before {
|
||||
content: ' ';
|
||||
display: block;
|
||||
height: 1px;
|
||||
margin: 9px 0;
|
||||
overflow: hidden;
|
||||
background-color: #e5e5e5;
|
||||
margin-left: -12px;
|
||||
margin-right: -12px;
|
||||
}
|
||||
.selectize-dropdown-content {
|
||||
padding: 5px 0;
|
||||
}
|
||||
.selectize-dropdown-header {
|
||||
padding: 6px 12px;
|
||||
}
|
||||
.selectize-input {
|
||||
min-height: 34px;
|
||||
}
|
||||
.selectize-input.dropdown-active {
|
||||
-webkit-border-radius: 4px;
|
||||
-moz-border-radius: 4px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.selectize-input.dropdown-active::before {
|
||||
display: none;
|
||||
}
|
||||
.selectize-input.focus {
|
||||
border-color: #66afe9;
|
||||
outline: 0;
|
||||
-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
|
||||
box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
|
||||
}
|
||||
.has-error .selectize-input {
|
||||
border-color: #a94442;
|
||||
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
|
||||
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
|
||||
}
|
||||
.has-error .selectize-input:focus {
|
||||
border-color: #843534;
|
||||
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
|
||||
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
|
||||
}
|
||||
.selectize-control.multi .selectize-input.has-items {
|
||||
padding-left: 9px;
|
||||
padding-right: 9px;
|
||||
}
|
||||
.selectize-control.multi .selectize-input > div {
|
||||
-webkit-border-radius: 3px;
|
||||
-moz-border-radius: 3px;
|
||||
border-radius: 3px;
|
||||
}
|
||||
.form-control.selectize-control {
|
||||
padding: 0;
|
||||
height: auto;
|
||||
border: none;
|
||||
background: none;
|
||||
-webkit-box-shadow: none;
|
||||
box-shadow: none;
|
||||
-webkit-border-radius: 0;
|
||||
-moz-border-radius: 0;
|
||||
border-radius: 0;
|
||||
}
|
|
@ -0,0 +1,333 @@
|
|||
/**
|
||||
* selectize.css (v0.12.6)
|
||||
* Copyright (c) 2013–2015 Brian Reavis & contributors
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this
|
||||
* file except in compliance with the License. You may obtain a copy of the License at:
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software distributed under
|
||||
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
|
||||
* ANY KIND, either express or implied. See the License for the specific language
|
||||
* governing permissions and limitations under the License.
|
||||
*
|
||||
* @author Brian Reavis <brian@thirdroute.com>
|
||||
*/
|
||||
|
||||
.selectize-control.plugin-drag_drop.multi > .selectize-input > div.ui-sortable-placeholder {
|
||||
visibility: visible !important;
|
||||
background: #f2f2f2 !important;
|
||||
background: rgba(0, 0, 0, 0.06) !important;
|
||||
border: 0 none !important;
|
||||
-webkit-box-shadow: inset 0 0 12px 4px #fff;
|
||||
box-shadow: inset 0 0 12px 4px #fff;
|
||||
}
|
||||
.selectize-control.plugin-drag_drop .ui-sortable-placeholder::after {
|
||||
content: '!';
|
||||
visibility: hidden;
|
||||
}
|
||||
.selectize-control.plugin-drag_drop .ui-sortable-helper {
|
||||
-webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
|
||||
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.selectize-dropdown-header {
|
||||
position: relative;
|
||||
padding: 5px 8px;
|
||||
border-bottom: 1px solid #d0d0d0;
|
||||
background: #f8f8f8;
|
||||
-webkit-border-radius: 3px 3px 0 0;
|
||||
-moz-border-radius: 3px 3px 0 0;
|
||||
border-radius: 3px 3px 0 0;
|
||||
}
|
||||
.selectize-dropdown-header-close {
|
||||
position: absolute;
|
||||
right: 8px;
|
||||
top: 50%;
|
||||
color: #303030;
|
||||
opacity: 0.4;
|
||||
margin-top: -12px;
|
||||
line-height: 20px;
|
||||
font-size: 20px !important;
|
||||
}
|
||||
.selectize-dropdown-header-close:hover {
|
||||
color: #000000;
|
||||
}
|
||||
.selectize-dropdown.plugin-optgroup_columns .optgroup {
|
||||
border-right: 1px solid #f2f2f2;
|
||||
border-top: 0 none;
|
||||
float: left;
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.selectize-dropdown.plugin-optgroup_columns .optgroup:last-child {
|
||||
border-right: 0 none;
|
||||
}
|
||||
.selectize-dropdown.plugin-optgroup_columns .optgroup:before {
|
||||
display: none;
|
||||
}
|
||||
.selectize-dropdown.plugin-optgroup_columns .optgroup-header {
|
||||
border-top: 0 none;
|
||||
}
|
||||
.selectize-control.plugin-remove_button [data-value] {
|
||||
position: relative;
|
||||
padding-right: 24px !important;
|
||||
}
|
||||
.selectize-control.plugin-remove_button [data-value] .remove {
|
||||
z-index: 1;
|
||||
/* fixes ie bug (see #392) */
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
width: 17px;
|
||||
text-align: center;
|
||||
font-weight: bold;
|
||||
font-size: 12px;
|
||||
color: inherit;
|
||||
text-decoration: none;
|
||||
vertical-align: middle;
|
||||
display: inline-block;
|
||||
padding: 2px 0 0 0;
|
||||
border-left: 1px solid #d0d0d0;
|
||||
-webkit-border-radius: 0 2px 2px 0;
|
||||
-moz-border-radius: 0 2px 2px 0;
|
||||
border-radius: 0 2px 2px 0;
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.selectize-control.plugin-remove_button [data-value] .remove:hover {
|
||||
background: rgba(0, 0, 0, 0.05);
|
||||
}
|
||||
.selectize-control.plugin-remove_button [data-value].active .remove {
|
||||
border-left-color: #cacaca;
|
||||
}
|
||||
.selectize-control.plugin-remove_button .disabled [data-value] .remove:hover {
|
||||
background: none;
|
||||
}
|
||||
.selectize-control.plugin-remove_button .disabled [data-value] .remove {
|
||||
border-left-color: #ffffff;
|
||||
}
|
||||
.selectize-control.plugin-remove_button .remove-single {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
font-size: 23px;
|
||||
}
|
||||
.selectize-control {
|
||||
position: relative;
|
||||
}
|
||||
.selectize-dropdown,
|
||||
.selectize-input,
|
||||
.selectize-input input {
|
||||
color: #303030;
|
||||
font-family: inherit;
|
||||
font-size: 13px;
|
||||
line-height: 18px;
|
||||
-webkit-font-smoothing: inherit;
|
||||
}
|
||||
.selectize-input,
|
||||
.selectize-control.single .selectize-input.input-active {
|
||||
background: #fff;
|
||||
cursor: text;
|
||||
display: inline-block;
|
||||
}
|
||||
.selectize-input {
|
||||
border: 1px solid #d0d0d0;
|
||||
padding: 8px 8px;
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1);
|
||||
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1);
|
||||
-webkit-border-radius: 3px;
|
||||
-moz-border-radius: 3px;
|
||||
border-radius: 3px;
|
||||
}
|
||||
.selectize-control.multi .selectize-input.has-items {
|
||||
padding: 6px 8px 3px;
|
||||
}
|
||||
.selectize-input.full {
|
||||
background-color: #fff;
|
||||
}
|
||||
.selectize-input.disabled,
|
||||
.selectize-input.disabled * {
|
||||
cursor: default !important;
|
||||
}
|
||||
.selectize-input.focus {
|
||||
-webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15);
|
||||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15);
|
||||
}
|
||||
.selectize-input.dropdown-active {
|
||||
-webkit-border-radius: 3px 3px 0 0;
|
||||
-moz-border-radius: 3px 3px 0 0;
|
||||
border-radius: 3px 3px 0 0;
|
||||
}
|
||||
.selectize-input > * {
|
||||
vertical-align: baseline;
|
||||
display: -moz-inline-stack;
|
||||
display: inline-block;
|
||||
zoom: 1;
|
||||
*display: inline;
|
||||
}
|
||||
.selectize-control.multi .selectize-input > div {
|
||||
cursor: pointer;
|
||||
margin: 0 3px 3px 0;
|
||||
padding: 2px 6px;
|
||||
background: #f2f2f2;
|
||||
color: #303030;
|
||||
border: 0 solid #d0d0d0;
|
||||
}
|
||||
.selectize-control.multi .selectize-input > div.active {
|
||||
background: #e8e8e8;
|
||||
color: #303030;
|
||||
border: 0 solid #cacaca;
|
||||
}
|
||||
.selectize-control.multi .selectize-input.disabled > div,
|
||||
.selectize-control.multi .selectize-input.disabled > div.active {
|
||||
color: #7d7d7d;
|
||||
background: #ffffff;
|
||||
border: 0 solid #ffffff;
|
||||
}
|
||||
.selectize-input > input {
|
||||
display: inline-block !important;
|
||||
padding: 0 !important;
|
||||
min-height: 0 !important;
|
||||
max-height: none !important;
|
||||
max-width: 100% !important;
|
||||
margin: 0 2px 0 0 !important;
|
||||
text-indent: 0 !important;
|
||||
border: 0 none !important;
|
||||
background: none !important;
|
||||
line-height: inherit !important;
|
||||
-webkit-user-select: auto !important;
|
||||
-webkit-box-shadow: none !important;
|
||||
box-shadow: none !important;
|
||||
}
|
||||
.selectize-input > input::-ms-clear {
|
||||
display: none;
|
||||
}
|
||||
.selectize-input > input:focus {
|
||||
outline: none !important;
|
||||
}
|
||||
.selectize-input::after {
|
||||
content: ' ';
|
||||
display: block;
|
||||
clear: left;
|
||||
}
|
||||
.selectize-input.dropdown-active::before {
|
||||
content: ' ';
|
||||
display: block;
|
||||
position: absolute;
|
||||
background: #f0f0f0;
|
||||
height: 1px;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
}
|
||||
.selectize-dropdown {
|
||||
position: absolute;
|
||||
z-index: 10;
|
||||
border: 1px solid #d0d0d0;
|
||||
background: #fff;
|
||||
margin: -1px 0 0 0;
|
||||
border-top: 0 none;
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
-webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||
-webkit-border-radius: 0 0 3px 3px;
|
||||
-moz-border-radius: 0 0 3px 3px;
|
||||
border-radius: 0 0 3px 3px;
|
||||
}
|
||||
.selectize-dropdown [data-selectable] {
|
||||
cursor: pointer;
|
||||
overflow: hidden;
|
||||
}
|
||||
.selectize-dropdown [data-selectable] .highlight {
|
||||
background: rgba(125, 168, 208, 0.2);
|
||||
-webkit-border-radius: 1px;
|
||||
-moz-border-radius: 1px;
|
||||
border-radius: 1px;
|
||||
}
|
||||
.selectize-dropdown .option,
|
||||
.selectize-dropdown .optgroup-header {
|
||||
padding: 5px 8px;
|
||||
}
|
||||
.selectize-dropdown .option,
|
||||
.selectize-dropdown [data-disabled],
|
||||
.selectize-dropdown [data-disabled] [data-selectable].option {
|
||||
cursor: inherit;
|
||||
opacity: 0.5;
|
||||
}
|
||||
.selectize-dropdown [data-selectable].option {
|
||||
opacity: 1;
|
||||
}
|
||||
.selectize-dropdown .optgroup:first-child .optgroup-header {
|
||||
border-top: 0 none;
|
||||
}
|
||||
.selectize-dropdown .optgroup-header {
|
||||
color: #303030;
|
||||
background: #fff;
|
||||
cursor: default;
|
||||
}
|
||||
.selectize-dropdown .active {
|
||||
background-color: #f5fafd;
|
||||
color: #495c68;
|
||||
}
|
||||
.selectize-dropdown .active.create {
|
||||
color: #495c68;
|
||||
}
|
||||
.selectize-dropdown .create {
|
||||
color: rgba(48, 48, 48, 0.5);
|
||||
}
|
||||
.selectize-dropdown-content {
|
||||
overflow-y: auto;
|
||||
overflow-x: hidden;
|
||||
max-height: 200px;
|
||||
-webkit-overflow-scrolling: touch;
|
||||
}
|
||||
.selectize-control.single .selectize-input,
|
||||
.selectize-control.single .selectize-input input {
|
||||
cursor: pointer;
|
||||
}
|
||||
.selectize-control.single .selectize-input.input-active,
|
||||
.selectize-control.single .selectize-input.input-active input {
|
||||
cursor: text;
|
||||
}
|
||||
.selectize-control.single .selectize-input:after {
|
||||
content: ' ';
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
right: 15px;
|
||||
margin-top: -3px;
|
||||
width: 0;
|
||||
height: 0;
|
||||
border-style: solid;
|
||||
border-width: 5px 5px 0 5px;
|
||||
border-color: #808080 transparent transparent transparent;
|
||||
}
|
||||
.selectize-control.single .selectize-input.dropdown-active:after {
|
||||
margin-top: -4px;
|
||||
border-width: 0 5px 5px 5px;
|
||||
border-color: transparent transparent #808080 transparent;
|
||||
}
|
||||
.selectize-control.rtl.single .selectize-input:after {
|
||||
left: 15px;
|
||||
right: auto;
|
||||
}
|
||||
.selectize-control.rtl .selectize-input > input {
|
||||
margin: 0 4px 0 -2px !important;
|
||||
}
|
||||
.selectize-control .selectize-input.disabled {
|
||||
opacity: 0.5;
|
||||
background-color: #fafafa;
|
||||
}
|
|
@ -0,0 +1 @@
|
|||
68
|
After Width: | Height: | Size: 769 B |
After Width: | Height: | Size: 116 B |
After Width: | Height: | Size: 523 B |
After Width: | Height: | Size: 618 B |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 696 B |
After Width: | Height: | Size: 2.4 KiB |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 618 B |
After Width: | Height: | Size: 866 B |
After Width: | Height: | Size: 677 B |
After Width: | Height: | Size: 472 B |
After Width: | Height: | Size: 9.6 KiB |
After Width: | Height: | Size: 388 B |
|
@ -0,0 +1,250 @@
|
|||
L.Label = (L.Layer ? L.Layer : L.Class).extend({
|
||||
|
||||
includes: L.Mixin.Events,
|
||||
|
||||
options: {
|
||||
className: '',
|
||||
clickable: false,
|
||||
direction: 'right',
|
||||
noHide: false,
|
||||
offset: [12, -15], // 6 (width of the label triangle) + 6 (padding)
|
||||
opacity: 1,
|
||||
zoomAnimation: true
|
||||
},
|
||||
|
||||
initialize: function (options, source) {
|
||||
L.setOptions(this, options);
|
||||
|
||||
this._source = source;
|
||||
this._animated = L.Browser.any3d && this.options.zoomAnimation;
|
||||
this._isOpen = false;
|
||||
},
|
||||
|
||||
onAdd: function (map) {
|
||||
this._map = map;
|
||||
|
||||
this._pane = this.options.pane ? map._panes[this.options.pane] :
|
||||
this._source instanceof L.Marker ? map._panes.markerPane : map._panes.popupPane;
|
||||
|
||||
if (!this._container) {
|
||||
this._initLayout();
|
||||
}
|
||||
|
||||
this._pane.appendChild(this._container);
|
||||
|
||||
this._initInteraction();
|
||||
|
||||
this._update();
|
||||
|
||||
this.setOpacity(this.options.opacity);
|
||||
|
||||
map
|
||||
.on('moveend', this._onMoveEnd, this)
|
||||
.on('viewreset', this._onViewReset, this);
|
||||
|
||||
if (this._animated) {
|
||||
map.on('zoomanim', this._zoomAnimation, this);
|
||||
}
|
||||
|
||||
if (L.Browser.touch && !this.options.noHide) {
|
||||
L.DomEvent.on(this._container, 'click', this.close, this);
|
||||
map.on('click', this.close, this);
|
||||
}
|
||||
},
|
||||
|
||||
onRemove: function (map) {
|
||||
this._pane.removeChild(this._container);
|
||||
|
||||
map.off({
|
||||
zoomanim: this._zoomAnimation,
|
||||
moveend: this._onMoveEnd,
|
||||
viewreset: this._onViewReset
|
||||
}, this);
|
||||
|
||||
this._removeInteraction();
|
||||
|
||||
this._map = null;
|
||||
},
|
||||
|
||||
setLatLng: function (latlng) {
|
||||
this._latlng = L.latLng(latlng);
|
||||
if (this._map) {
|
||||
this._updatePosition();
|
||||
}
|
||||
return this;
|
||||
},
|
||||
|
||||
setContent: function (content) {
|
||||
// Backup previous content and store new content
|
||||
this._previousContent = this._content;
|
||||
this._content = content;
|
||||
|
||||
this._updateContent();
|
||||
|
||||
return this;
|
||||
},
|
||||
|
||||
close: function () {
|
||||
var map = this._map;
|
||||
|
||||
if (map) {
|
||||
if (L.Browser.touch && !this.options.noHide) {
|
||||
L.DomEvent.off(this._container, 'click', this.close);
|
||||
map.off('click', this.close, this);
|
||||
}
|
||||
|
||||
map.removeLayer(this);
|
||||
}
|
||||
},
|
||||
|
||||
updateZIndex: function (zIndex) {
|
||||
this._zIndex = zIndex;
|
||||
|
||||
if (this._container && this._zIndex) {
|
||||
this._container.style.zIndex = zIndex;
|
||||
}
|
||||
},
|
||||
|
||||
setOpacity: function (opacity) {
|
||||
this.options.opacity = opacity;
|
||||
|
||||
if (this._container) {
|
||||
L.DomUtil.setOpacity(this._container, opacity);
|
||||
}
|
||||
},
|
||||
|
||||
_initLayout: function () {
|
||||
this._container = L.DomUtil.create('div', 'leaflet-label ' + this.options.className + ' leaflet-zoom-animated');
|
||||
this.updateZIndex(this._zIndex);
|
||||
},
|
||||
|
||||
_update: function () {
|
||||
if (!this._map) { return; }
|
||||
|
||||
this._container.style.visibility = 'hidden';
|
||||
|
||||
this._updateContent();
|
||||
this._updatePosition();
|
||||
|
||||
this._container.style.visibility = '';
|
||||
},
|
||||
|
||||
_updateContent: function () {
|
||||
if (!this._content || !this._map || this._prevContent === this._content) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (typeof this._content === 'string') {
|
||||
this._container.innerHTML = this._content;
|
||||
|
||||
this._prevContent = this._content;
|
||||
|
||||
this._labelWidth = this._container.offsetWidth;
|
||||
}
|
||||
},
|
||||
|
||||
_updatePosition: function () {
|
||||
var pos = this._map.latLngToLayerPoint(this._latlng);
|
||||
|
||||
this._setPosition(pos);
|
||||
},
|
||||
|
||||
_setPosition: function (pos) {
|
||||
var map = this._map,
|
||||
container = this._container,
|
||||
centerPoint = map.latLngToContainerPoint(map.getCenter()),
|
||||
labelPoint = map.layerPointToContainerPoint(pos),
|
||||
direction = this.options.direction,
|
||||
labelWidth = this._labelWidth,
|
||||
offset = L.point(this.options.offset);
|
||||
|
||||
// position to the right (right or auto & needs to)
|
||||
if (direction === 'right' || direction === 'auto' && labelPoint.x < centerPoint.x) {
|
||||
L.DomUtil.addClass(container, 'leaflet-label-right');
|
||||
L.DomUtil.removeClass(container, 'leaflet-label-left');
|
||||
|
||||
pos = pos.add(offset);
|
||||
} else { // position to the left
|
||||
L.DomUtil.addClass(container, 'leaflet-label-left');
|
||||
L.DomUtil.removeClass(container, 'leaflet-label-right');
|
||||
|
||||
pos = pos.add(L.point(-offset.x - labelWidth, offset.y));
|
||||
}
|
||||
|
||||
L.DomUtil.setPosition(container, pos);
|
||||
},
|
||||
|
||||
_zoomAnimation: function (opt) {
|
||||
var pos = this._map._latLngToNewLayerPoint(this._latlng, opt.zoom, opt.center).round();
|
||||
|
||||
this._setPosition(pos);
|
||||
},
|
||||
|
||||
_onMoveEnd: function () {
|
||||
if (!this._animated || this.options.direction === 'auto') {
|
||||
this._updatePosition();
|
||||
}
|
||||
},
|
||||
|
||||
_onViewReset: function (e) {
|
||||
/* if map resets hard, we must update the label */
|
||||
if (e && e.hard) {
|
||||
this._update();
|
||||
}
|
||||
},
|
||||
|
||||
_initInteraction: function () {
|
||||
if (!this.options.clickable) { return; }
|
||||
|
||||
var container = this._container,
|
||||
events = ['dblclick', 'mousedown', 'mouseover', 'mouseout', 'contextmenu'];
|
||||
|
||||
L.DomUtil.addClass(container, 'leaflet-clickable');
|
||||
L.DomEvent.on(container, 'click', this._onMouseClick, this);
|
||||
|
||||
for (var i = 0; i < events.length; i++) {
|
||||
L.DomEvent.on(container, events[i], this._fireMouseEvent, this);
|
||||
}
|
||||
},
|
||||
|
||||
_removeInteraction: function () {
|
||||
if (!this.options.clickable) { return; }
|
||||
|
||||
var container = this._container,
|
||||
events = ['dblclick', 'mousedown', 'mouseover', 'mouseout', 'contextmenu'];
|
||||
|
||||
L.DomUtil.removeClass(container, 'leaflet-clickable');
|
||||
L.DomEvent.off(container, 'click', this._onMouseClick, this);
|
||||
|
||||
for (var i = 0; i < events.length; i++) {
|
||||
L.DomEvent.off(container, events[i], this._fireMouseEvent, this);
|
||||
}
|
||||
},
|
||||
|
||||
_onMouseClick: function (e) {
|
||||
if (this.hasEventListeners(e.type)) {
|
||||
L.DomEvent.stopPropagation(e);
|
||||
}
|
||||
|
||||
this.fire(e.type, {
|
||||
originalEvent: e
|
||||
});
|
||||
},
|
||||
|
||||
_fireMouseEvent: function (e) {
|
||||
this.fire(e.type, {
|
||||
originalEvent: e
|
||||
});
|
||||
|
||||
// TODO proper custom event propagation
|
||||
// this line will always be called if marker is in a FeatureGroup
|
||||
if (e.type === 'contextmenu' && this.hasEventListeners(e.type)) {
|
||||
L.DomEvent.preventDefault(e);
|
||||
}
|
||||
if (e.type !== 'mousedown') {
|
||||
L.DomEvent.stopPropagation(e);
|
||||
} else {
|
||||
L.DomEvent.preventDefault(e);
|
||||
}
|
||||
}
|
||||
});
|
|
@ -0,0 +1,17 @@
|
|||
(function(o){"function"==typeof define?define(o):"function"==typeof YUI?YUI.add("es5",o):o()})(function(){function o(){}function v(a){a=+a;a!==a?a=0:0!==a&&(a!==1/0&&a!==-(1/0))&&(a=(0<a||-1)*Math.floor(Math.abs(a)));return a}function s(a){var b=typeof a;return null===a||"undefined"===b||"boolean"===b||"number"===b||"string"===b}Function.prototype.bind||(Function.prototype.bind=function(a){var b=this;if("function"!=typeof b)throw new TypeError("Function.prototype.bind called on incompatible "+b);
|
||||
var d=q.call(arguments,1),c=function(){if(this instanceof c){var e=b.apply(this,d.concat(q.call(arguments)));return Object(e)===e?e:this}return b.apply(a,d.concat(q.call(arguments)))};b.prototype&&(o.prototype=b.prototype,c.prototype=new o,o.prototype=null);return c});var k=Function.prototype.call,p=Object.prototype,q=Array.prototype.slice,h=k.bind(p.toString),t=k.bind(p.hasOwnProperty);t(p,"__defineGetter__")&&(k.bind(p.__defineGetter__),k.bind(p.__defineSetter__),k.bind(p.__lookupGetter__),k.bind(p.__lookupSetter__));
|
||||
if(2!=[1,2].splice(0).length){var y=Array.prototype.splice;Array.prototype.splice=function(a,b){return arguments.length?y.apply(this,[a===void 0?0:a,b===void 0?this.length-a:b].concat(q.call(arguments,2))):[]}}if(1!=[].unshift(0)){var z=Array.prototype.unshift;Array.prototype.unshift=function(){z.apply(this,arguments);return this.length}}Array.isArray||(Array.isArray=function(a){return h(a)=="[object Array]"});var k=Object("a"),l="a"!=k[0]||!(0 in k);Array.prototype.forEach||(Array.prototype.forEach=
|
||||
function(a,b){var d=n(this),c=l&&h(this)=="[object String]"?this.split(""):d,e=-1,f=c.length>>>0;if(h(a)!="[object Function]")throw new TypeError;for(;++e<f;)e in c&&a.call(b,c[e],e,d)});Array.prototype.map||(Array.prototype.map=function(a,b){var d=n(this),c=l&&h(this)=="[object String]"?this.split(""):d,e=c.length>>>0,f=Array(e);if(h(a)!="[object Function]")throw new TypeError(a+" is not a function");for(var g=0;g<e;g++)g in c&&(f[g]=a.call(b,c[g],g,d));return f});Array.prototype.filter||(Array.prototype.filter=
|
||||
function(a,b){var d=n(this),c=l&&h(this)=="[object String]"?this.split(""):d,e=c.length>>>0,f=[],g;if(h(a)!="[object Function]")throw new TypeError(a+" is not a function");for(var i=0;i<e;i++)if(i in c){g=c[i];a.call(b,g,i,d)&&f.push(g)}return f});Array.prototype.every||(Array.prototype.every=function(a,b){var d=n(this),c=l&&h(this)=="[object String]"?this.split(""):d,e=c.length>>>0;if(h(a)!="[object Function]")throw new TypeError(a+" is not a function");for(var f=0;f<e;f++)if(f in c&&!a.call(b,c[f],
|
||||
f,d))return false;return true});Array.prototype.some||(Array.prototype.some=function(a,b){var d=n(this),c=l&&h(this)=="[object String]"?this.split(""):d,e=c.length>>>0;if(h(a)!="[object Function]")throw new TypeError(a+" is not a function");for(var f=0;f<e;f++)if(f in c&&a.call(b,c[f],f,d))return true;return false});Array.prototype.reduce||(Array.prototype.reduce=function(a){var b=n(this),d=l&&h(this)=="[object String]"?this.split(""):b,c=d.length>>>0;if(h(a)!="[object Function]")throw new TypeError(a+
|
||||
" is not a function");if(!c&&arguments.length==1)throw new TypeError("reduce of empty array with no initial value");var e=0,f;if(arguments.length>=2)f=arguments[1];else{do{if(e in d){f=d[e++];break}if(++e>=c)throw new TypeError("reduce of empty array with no initial value");}while(1)}for(;e<c;e++)e in d&&(f=a.call(void 0,f,d[e],e,b));return f});Array.prototype.reduceRight||(Array.prototype.reduceRight=function(a){var b=n(this),d=l&&h(this)=="[object String]"?this.split(""):b,c=d.length>>>0;if(h(a)!=
|
||||
"[object Function]")throw new TypeError(a+" is not a function");if(!c&&arguments.length==1)throw new TypeError("reduceRight of empty array with no initial value");var e,c=c-1;if(arguments.length>=2)e=arguments[1];else{do{if(c in d){e=d[c--];break}if(--c<0)throw new TypeError("reduceRight of empty array with no initial value");}while(1)}do c in this&&(e=a.call(void 0,e,d[c],c,b));while(c--);return e});if(!Array.prototype.indexOf||-1!=[0,1].indexOf(1,2))Array.prototype.indexOf=function(a){var b=l&&
|
||||
h(this)=="[object String]"?this.split(""):n(this),d=b.length>>>0;if(!d)return-1;var c=0;arguments.length>1&&(c=v(arguments[1]));for(c=c>=0?c:Math.max(0,d+c);c<d;c++)if(c in b&&b[c]===a)return c;return-1};if(!Array.prototype.lastIndexOf||-1!=[0,1].lastIndexOf(0,-3))Array.prototype.lastIndexOf=function(a){var b=l&&h(this)=="[object String]"?this.split(""):n(this),d=b.length>>>0;if(!d)return-1;var c=d-1;arguments.length>1&&(c=Math.min(c,v(arguments[1])));for(c=c>=0?c:d-Math.abs(c);c>=0;c--)if(c in b&&
|
||||
a===b[c])return c;return-1};if(!Object.keys){var w=!0,x="toString toLocaleString valueOf hasOwnProperty isPrototypeOf propertyIsEnumerable constructor".split(" "),A=x.length,r;for(r in{toString:null})w=!1;Object.keys=function(a){if(typeof a!="object"&&typeof a!="function"||a===null)throw new TypeError("Object.keys called on a non-object");var b=[],d;for(d in a)t(a,d)&&b.push(d);if(w)for(d=0;d<A;d++){var c=x[d];t(a,c)&&b.push(c)}return b}}if(!Date.prototype.toISOString||-1===(new Date(-621987552E5)).toISOString().indexOf("-000001"))Date.prototype.toISOString=
|
||||
function(){var a,b,d,c;if(!isFinite(this))throw new RangeError("Date.prototype.toISOString called on non-finite value.");c=this.getUTCFullYear();a=this.getUTCMonth();c=c+Math.floor(a/12);a=[(a%12+12)%12+1,this.getUTCDate(),this.getUTCHours(),this.getUTCMinutes(),this.getUTCSeconds()];c=(c<0?"-":c>9999?"+":"")+("00000"+Math.abs(c)).slice(0<=c&&c<=9999?-4:-6);for(b=a.length;b--;){d=a[b];d<10&&(a[b]="0"+d)}return c+"-"+a.slice(0,2).join("-")+"T"+a.slice(2).join(":")+"."+("000"+this.getUTCMilliseconds()).slice(-3)+
|
||||
"Z"};r=!1;try{r=Date.prototype.toJSON&&null===(new Date(NaN)).toJSON()&&-1!==(new Date(-621987552E5)).toJSON().indexOf("-000001")&&Date.prototype.toJSON.call({toISOString:function(){return true}})}catch(H){}r||(Date.prototype.toJSON=function(){var a=Object(this),b;a:if(s(a))b=a;else{b=a.valueOf;if(typeof b==="function"){b=b.call(a);if(s(b))break a}b=a.toString;if(typeof b==="function"){b=b.call(a);if(s(b))break a}throw new TypeError;}if(typeof b==="number"&&!isFinite(b))return null;b=a.toISOString;
|
||||
if(typeof b!="function")throw new TypeError("toISOString property is not callable");return b.call(a)});var g=Date,m=function(a,b,d,c,e,f,h){var i=arguments.length;if(this instanceof g){i=i==1&&String(a)===a?new g(m.parse(a)):i>=7?new g(a,b,d,c,e,f,h):i>=6?new g(a,b,d,c,e,f):i>=5?new g(a,b,d,c,e):i>=4?new g(a,b,d,c):i>=3?new g(a,b,d):i>=2?new g(a,b):i>=1?new g(a):new g;i.constructor=m;return i}return g.apply(this,arguments)},u=function(a,b){var d=b>1?1:0;return B[b]+Math.floor((a-1969+d)/4)-Math.floor((a-
|
||||
1901+d)/100)+Math.floor((a-1601+d)/400)+365*(a-1970)},C=RegExp("^(\\d{4}|[+-]\\d{6})(?:-(\\d{2})(?:-(\\d{2})(?:T(\\d{2}):(\\d{2})(?::(\\d{2})(?:\\.(\\d{3}))?)?(Z|(?:([-+])(\\d{2}):(\\d{2})))?)?)?)?$"),B=[0,31,59,90,120,151,181,212,243,273,304,334,365],j;for(j in g)m[j]=g[j];m.now=g.now;m.UTC=g.UTC;m.prototype=g.prototype;m.prototype.constructor=m;m.parse=function(a){var b=C.exec(a);if(b){var d=Number(b[1]),c=Number(b[2]||1)-1,e=Number(b[3]||1)-1,f=Number(b[4]||0),h=Number(b[5]||0),i=Number(b[6]||
|
||||
0),j=Number(b[7]||0),m=!b[4]||b[8]?0:Number(new g(1970,0)),k=b[9]==="-"?1:-1,l=Number(b[10]||0),b=Number(b[11]||0);if(f<(h>0||i>0||j>0?24:25)&&h<60&&i<60&&j<1E3&&c>-1&&c<12&&l<24&&b<60&&e>-1&&e<u(d,c+1)-u(d,c)){d=((u(d,c)+e)*24+f+l*k)*60;d=((d+h+b*k)*60+i)*1E3+j+m;if(-864E13<=d&&d<=864E13)return d}return NaN}return g.parse.apply(this,arguments)};Date=m;Date.now||(Date.now=function(){return(new Date).getTime()});if("0".split(void 0,0).length){var D=String.prototype.split;String.prototype.split=function(a,
|
||||
b){return a===void 0&&b===0?[]:D.apply(this,arguments)}}if("".substr&&"b"!=="0b".substr(-1)){var E=String.prototype.substr;String.prototype.substr=function(a,b){return E.call(this,a<0?(a=this.length+a)<0?0:a:a,b)}}j="\t\n\x0B\f\r \u00a0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff";if(!String.prototype.trim||j.trim()){j="["+j+"]";var F=RegExp("^"+j+j+"*"),G=RegExp(j+j+"*$");String.prototype.trim=function(){if(this===void 0||this===
|
||||
null)throw new TypeError("can't convert "+this+" to object");return String(this).replace(F,"").replace(G,"")}}var n=function(a){if(a==null)throw new TypeError("can't convert "+a+" to object");return Object(a)}});
|
|
@ -0,0 +1,268 @@
|
|||
/**
|
||||
* simplePagination.js v1.6
|
||||
* A simple jQuery pagination plugin.
|
||||
* http://flaviusmatis.github.com/simplePagination.js/
|
||||
*
|
||||
* Copyright 2012, Flavius Matis
|
||||
* Released under the MIT license.
|
||||
* http://flaviusmatis.github.com/license.html
|
||||
*/
|
||||
|
||||
(function($){
|
||||
|
||||
var methods = {
|
||||
init: function(options) {
|
||||
var o = $.extend({
|
||||
items: 1,
|
||||
itemsOnPage: 1,
|
||||
pages: 0,
|
||||
displayedPages: 5,
|
||||
edges: 2,
|
||||
currentPage: 1,
|
||||
hrefTextPrefix: '#page-',
|
||||
hrefTextSuffix: '',
|
||||
prevText: 'Prev',
|
||||
nextText: 'Next',
|
||||
ellipseText: '…',
|
||||
cssStyle: 'light-theme',
|
||||
labelMap: [],
|
||||
selectOnClick: true,
|
||||
onPageClick: function(pageNumber, event) {
|
||||
// Callback triggered when a page is clicked
|
||||
// Page number is given as an optional parameter
|
||||
},
|
||||
onInit: function() {
|
||||
// Callback triggered immediately after initialization
|
||||
}
|
||||
}, options || {});
|
||||
|
||||
var self = this;
|
||||
|
||||
o.pages = o.pages ? o.pages : Math.ceil(o.items / o.itemsOnPage) ? Math.ceil(o.items / o.itemsOnPage) : 1;
|
||||
o.currentPage = o.currentPage - 1;
|
||||
o.halfDisplayed = o.displayedPages / 2;
|
||||
|
||||
this.each(function() {
|
||||
self.addClass(o.cssStyle + ' simple-pagination').data('pagination', o);
|
||||
methods._draw.call(self);
|
||||
});
|
||||
|
||||
o.onInit();
|
||||
|
||||
return this;
|
||||
},
|
||||
|
||||
selectPage: function(page) {
|
||||
methods._selectPage.call(this, page - 1);
|
||||
return this;
|
||||
},
|
||||
|
||||
prevPage: function() {
|
||||
var o = this.data('pagination');
|
||||
if (o.currentPage > 0) {
|
||||
methods._selectPage.call(this, o.currentPage - 1);
|
||||
}
|
||||
return this;
|
||||
},
|
||||
|
||||
nextPage: function() {
|
||||
var o = this.data('pagination');
|
||||
if (o.currentPage < o.pages - 1) {
|
||||
methods._selectPage.call(this, o.currentPage + 1);
|
||||
}
|
||||
return this;
|
||||
},
|
||||
|
||||
getPagesCount: function() {
|
||||
return this.data('pagination').pages;
|
||||
},
|
||||
|
||||
getCurrentPage: function () {
|
||||
return this.data('pagination').currentPage + 1;
|
||||
},
|
||||
|
||||
destroy: function(){
|
||||
this.empty();
|
||||
return this;
|
||||
},
|
||||
|
||||
drawPage: function (page) {
|
||||
var o = this.data('pagination');
|
||||
o.currentPage = page - 1;
|
||||
this.data('pagination', o);
|
||||
methods._draw.call(this);
|
||||
return this;
|
||||
},
|
||||
|
||||
redraw: function(){
|
||||
methods._draw.call(this);
|
||||
return this;
|
||||
},
|
||||
|
||||
disable: function(){
|
||||
var o = this.data('pagination');
|
||||
o.disabled = true;
|
||||
this.data('pagination', o);
|
||||
methods._draw.call(this);
|
||||
return this;
|
||||
},
|
||||
|
||||
enable: function(){
|
||||
var o = this.data('pagination');
|
||||
o.disabled = false;
|
||||
this.data('pagination', o);
|
||||
methods._draw.call(this);
|
||||
return this;
|
||||
},
|
||||
|
||||
updateItems: function (newItems) {
|
||||
var o = this.data('pagination');
|
||||
o.items = newItems;
|
||||
o.pages = methods._getPages(o);
|
||||
this.data('pagination', o);
|
||||
methods._draw.call(this);
|
||||
},
|
||||
|
||||
updateItemsOnPage: function (itemsOnPage) {
|
||||
var o = this.data('pagination');
|
||||
o.itemsOnPage = itemsOnPage;
|
||||
o.pages = methods._getPages(o);
|
||||
this.data('pagination', o);
|
||||
methods._selectPage.call(this, 0);
|
||||
return this;
|
||||
},
|
||||
|
||||
_draw: function() {
|
||||
var o = this.data('pagination'),
|
||||
interval = methods._getInterval(o),
|
||||
i,
|
||||
tagName;
|
||||
|
||||
methods.destroy.call(this);
|
||||
|
||||
tagName = (typeof this.prop === 'function') ? this.prop('tagName') : this.attr('tagName');
|
||||
|
||||
var $panel = tagName === 'UL' ? this : $('<ul></ul>').appendTo(this);
|
||||
|
||||
// Generate Prev link
|
||||
if (o.prevText) {
|
||||
methods._appendItem.call(this, o.currentPage - 1, {text: o.prevText, classes: 'prev'});
|
||||
}
|
||||
|
||||
// Generate start edges
|
||||
if (interval.start > 0 && o.edges > 0) {
|
||||
var end = Math.min(o.edges, interval.start);
|
||||
for (i = 0; i < end; i++) {
|
||||
methods._appendItem.call(this, i);
|
||||
}
|
||||
if (o.edges < interval.start && (interval.start - o.edges != 1)) {
|
||||
$panel.append('<li class="disabled"><span class="ellipse">' + o.ellipseText + '</span></li>');
|
||||
} else if (interval.start - o.edges == 1) {
|
||||
methods._appendItem.call(this, o.edges);
|
||||
}
|
||||
}
|
||||
|
||||
// Generate interval links
|
||||
for (i = interval.start; i < interval.end; i++) {
|
||||
methods._appendItem.call(this, i);
|
||||
}
|
||||
|
||||
// Generate end edges
|
||||
if (interval.end < o.pages && o.edges > 0) {
|
||||
if (o.pages - o.edges > interval.end && (o.pages - o.edges - interval.end != 1)) {
|
||||
$panel.append('<li class="disabled"><span class="ellipse">' + o.ellipseText + '</span></li>');
|
||||
} else if (o.pages - o.edges - interval.end == 1) {
|
||||
methods._appendItem.call(this, interval.end++);
|
||||
}
|
||||
var begin = Math.max(o.pages - o.edges, interval.end);
|
||||
for (i = begin; i < o.pages; i++) {
|
||||
methods._appendItem.call(this, i);
|
||||
}
|
||||
}
|
||||
|
||||
// Generate Next link
|
||||
if (o.nextText) {
|
||||
methods._appendItem.call(this, o.currentPage + 1, {text: o.nextText, classes: 'next'});
|
||||
}
|
||||
},
|
||||
|
||||
_getPages: function(o) {
|
||||
var pages = Math.ceil(o.items / o.itemsOnPage);
|
||||
return pages || 1;
|
||||
},
|
||||
|
||||
_getInterval: function(o) {
|
||||
return {
|
||||
start: Math.ceil(o.currentPage > o.halfDisplayed ? Math.max(Math.min(o.currentPage - o.halfDisplayed, (o.pages - o.displayedPages)), 0) : 0),
|
||||
end: Math.ceil(o.currentPage > o.halfDisplayed ? Math.min(o.currentPage + o.halfDisplayed, o.pages) : Math.min(o.displayedPages, o.pages))
|
||||
};
|
||||
},
|
||||
|
||||
_appendItem: function(pageIndex, opts) {
|
||||
var self = this, options, $link, o = self.data('pagination'), $linkWrapper = $('<li></li>'), $ul = self.find('ul');
|
||||
|
||||
pageIndex = pageIndex < 0 ? 0 : (pageIndex < o.pages ? pageIndex : o.pages - 1);
|
||||
|
||||
options = {
|
||||
text: pageIndex + 1,
|
||||
classes: ''
|
||||
};
|
||||
|
||||
if (o.labelMap.length && o.labelMap[pageIndex]) {
|
||||
options.text = o.labelMap[pageIndex];
|
||||
}
|
||||
|
||||
options = $.extend(options, opts || {});
|
||||
|
||||
if (pageIndex == o.currentPage || o.disabled) {
|
||||
if (o.disabled) {
|
||||
$linkWrapper.addClass('disabled');
|
||||
} else {
|
||||
$linkWrapper.addClass('active');
|
||||
}
|
||||
$link = $('<span class="current">' + (options.text) + '</span>');
|
||||
} else {
|
||||
$link = $('<a href="' + o.hrefTextPrefix + (pageIndex + 1) + o.hrefTextSuffix + '" class="page-link">' + (options.text) + '</a>');
|
||||
$link.click(function(event){
|
||||
return methods._selectPage.call(self, pageIndex, event);
|
||||
});
|
||||
}
|
||||
|
||||
if (options.classes) {
|
||||
$link.addClass(options.classes);
|
||||
}
|
||||
|
||||
$linkWrapper.append($link);
|
||||
|
||||
if ($ul.length) {
|
||||
$ul.append($linkWrapper);
|
||||
} else {
|
||||
self.append($linkWrapper);
|
||||
}
|
||||
},
|
||||
|
||||
_selectPage: function(pageIndex, event) {
|
||||
var o = this.data('pagination');
|
||||
o.currentPage = pageIndex;
|
||||
if (o.selectOnClick) {
|
||||
methods._draw.call(this);
|
||||
}
|
||||
return o.onPageClick(pageIndex + 1, event);
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
$.fn.pagination = function(method) {
|
||||
|
||||
// Method calling logic
|
||||
if (methods[method] && method.charAt(0) != '_') {
|
||||
return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
|
||||
} else if (typeof method === 'object' || !method) {
|
||||
return methods.init.apply(this, arguments);
|
||||
} else {
|
||||
$.error('Method ' + method + ' does not exist on jQuery.pagination');
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
})(jQuery);
|
|
@ -0,0 +1,94 @@
|
|||
var getUrlParameter = function getUrlParameter(sParam) {
|
||||
var urlParams = new URLSearchParams(window.location.search);
|
||||
return urlParams.get(sParam);
|
||||
};
|
||||
|
||||
$( "#tabs" ).tabs();
|
||||
|
||||
var options = [];
|
||||
|
||||
$.ajax({
|
||||
url: 'minetest.php?action=getstations',
|
||||
method: 'GET',
|
||||
dataType: 'json',
|
||||
data: {},
|
||||
async: false,
|
||||
cache: false,
|
||||
timeout: 3 * 60 * 1000,
|
||||
error: function() {},
|
||||
success: function(res) {
|
||||
$.each(res, function (i, item) {
|
||||
options.push({
|
||||
id: item,
|
||||
title: item
|
||||
});
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
var selectLastValue;
|
||||
$('#combobox_start').selectize({
|
||||
valueField: 'title',
|
||||
labelField: 'title',
|
||||
searchField: 'title',
|
||||
sortField: 'title',
|
||||
options: options,
|
||||
create: false,
|
||||
maxItems: 1,
|
||||
maxOptions: 10,
|
||||
closeAfterSelect: true,
|
||||
allowEmptyOption: false,
|
||||
selectOnTab: true,
|
||||
onDropdownOpen: function($dropdown){
|
||||
selectLastValue = $('#combobox_start')[0].selectize.getValue();
|
||||
$('#combobox_start')[0].selectize.clear();
|
||||
},
|
||||
onDropdownClose: function($dropdown){
|
||||
if(!$('#combobox_start')[0].selectize.getValue()){
|
||||
$('#combobox_start')[0].selectize.setValue(selectLastValue);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
$('#combobox_end').selectize({
|
||||
valueField: 'title',
|
||||
labelField: 'title',
|
||||
searchField: 'title',
|
||||
sortField: 'title',
|
||||
options: options,
|
||||
create: false,
|
||||
maxItems: 1,
|
||||
maxOptions: 10,
|
||||
closeAfterSelect: true,
|
||||
allowEmptyOption: false,
|
||||
selectOnTab: true,
|
||||
onDropdownOpen: function($dropdown){
|
||||
selectLastValue = $('#combobox_end')[0].selectize.getValue();
|
||||
$('#combobox_end')[0].selectize.clear();
|
||||
},
|
||||
onDropdownClose: function($dropdown){
|
||||
if(!$('#combobox_end')[0].selectize.getValue()){
|
||||
$('#combobox_end')[0].selectize.setValue(selectLastValue);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
$('#combobox_start')[0].selectize.setValue([getUrlParameter('start')]);
|
||||
$('#combobox_end')[0].selectize.setValue([getUrlParameter('end')]);
|
||||
|
||||
|
||||
$( "input[name=searchtype]" ).checkboxradio({
|
||||
icon: false
|
||||
});
|
||||
|
||||
var searchtype = getUrlParameter('searchtype');
|
||||
if(searchtype){
|
||||
var radio = $("input[name=searchtype]");
|
||||
radio[searchtype].checked = true;
|
||||
radio.button("refresh");
|
||||
}
|
||||
|
||||
$('#buttonsearch').click(function() {
|
||||
$(this).attr('disabled', 'disabled');
|
||||
$(this).parents('form').submit();
|
||||
});
|
|
@ -0,0 +1,670 @@
|
|||
<?php
|
||||
//CONFIGURATION
|
||||
define('MINETEST_ADVTRAINS_AVG_SPEED', 20);
|
||||
define('MINETEST_MAPSERVER', 'https://URL_TO_MAPSERVER');
|
||||
//SUPPORT DATABASES
|
||||
//MYSQL [pdo_mysql] - mysql:host=SERVER;port=PORT;dbname=DB_NAME
|
||||
//SQLITE [pdo_sqlite] - sqlite:PATH_TO_FILE.sqlite3
|
||||
//POSTGRESQL [pdo_pgsql] - pgsql:host=SERVER;port=PORT;dbname=DB_NAME
|
||||
define('DB_CONNECTION' , 'sqlite:minetest_timetable.sqlite3');
|
||||
define('DB_LOGIN' , 'root');
|
||||
define('DB_PASSWORD' , '12345');
|
||||
////////////////////////////////////////////
|
||||
error_reporting(0);
|
||||
set_time_limit(60);
|
||||
ini_set('memory_limit', '512M');
|
||||
////////////////////////////////////////////
|
||||
define('PHP_IS_INTERNAL_SCRIPT', 1);
|
||||
///////////////
|
||||
//WHEN PHP CALL ERROR [TIMEOUT] - EXECUTE CODE
|
||||
function shutdown()
|
||||
{
|
||||
$a = error_get_last();
|
||||
if ($a != null):
|
||||
if(preg_match('/maximum execution time of [0-9]+ seconds exceeded/i', $a['message'])):
|
||||
?>
|
||||
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>MINETEST RAILWAY CONNECTIONS SEARCH ENGINE</title>
|
||||
<link rel="stylesheet" href="css/jquery-ui.min.css">
|
||||
<script src="js/jquery.js"></script>
|
||||
<script src="js/jquery-ui.min.js"></script>
|
||||
<script src="js/jquery.simplePagination.js"></script>
|
||||
<script src="js/selectize.js"></script>
|
||||
<link href="css/railway.css" rel="stylesheet">
|
||||
<link rel="stylesheet" type="text/css" href="css/selectize.bootstrap3.css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="tabs">
|
||||
<ul>
|
||||
<li><a href="#tabs-search">SEARCH</a></li>
|
||||
<li><a href="#tabs-map">MAP</a></li>
|
||||
<li><a href="#tabs-stats">STATS</a></li>
|
||||
</ul>
|
||||
<div id="tabs-search">
|
||||
<?php
|
||||
$nofound = 1;
|
||||
@require_once('minetest.tab.search.php');
|
||||
?>
|
||||
</div>
|
||||
<div id="tabs-map">
|
||||
<iframe src="<?php echo MINETEST_MAPSERVER; ?>" width="100%" height="600" allow="fullscreen" style="border:none"></iframe>
|
||||
</div>
|
||||
<div id="tabs-stats">
|
||||
<?php @require_once('minetest.tab.stats.php'); ?>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
<script src="js/railway.js"></script>
|
||||
<?php
|
||||
endif;
|
||||
endif;
|
||||
}
|
||||
register_shutdown_function('shutdown');
|
||||
////////////////////////////////////////////
|
||||
//LOAD DEPENDENCIES
|
||||
require_once('vendor/autoload.php');
|
||||
|
||||
use GraphDS\Graph\UndirectedGraph;
|
||||
use GraphDS\Algo\DijkstraMulti;
|
||||
use GraphDS\Algo\FloydWarshall;
|
||||
|
||||
//PROCESSING FROM COMMANDLINE
|
||||
$getopt = new \GetOpt\GetOpt([
|
||||
\GetOpt\Option::create('a', 'action', \GetOpt\GetOpt::REQUIRED_ARGUMENT)
|
||||
->setDefaultValue(''),
|
||||
\GetOpt\Option::create('o', 'overwrite', \GetOpt\GetOpt::NO_ARGUMENT)
|
||||
->setDefaultValue(false),
|
||||
]);
|
||||
$getopt->process();
|
||||
|
||||
//CALCULATE DISTANCE BETWEEN POINTS
|
||||
function distancePoints($a = array(), $b = array())
|
||||
{
|
||||
if($a == null or $b == null):
|
||||
return 0;
|
||||
endif;
|
||||
if(count($a) == 0 or count($b) == 0):
|
||||
return 0;
|
||||
endif;
|
||||
|
||||
$calc = sqrt(abs(pow(($b[0] - $a[0]), 2) + pow(($b[1] - $a[1]), 2) + pow(($b[2] - $a[2]), 2)));
|
||||
$calc = ceil($calc);
|
||||
|
||||
return $calc;
|
||||
}
|
||||
|
||||
//SORT DISTANCE ASC
|
||||
function cmp($a, $b) {
|
||||
if ($a['distance'] == $b['distance']) {
|
||||
return 0;
|
||||
}
|
||||
return ($a['distance'] < $b['distance']) ? -1 : 1;
|
||||
}
|
||||
|
||||
//CONVERT METERS TO METERS OR KILOMETERS
|
||||
function meters2km($meters){
|
||||
if($meters >= 1000):
|
||||
return sprintf('%.2f km', $meters/1000);
|
||||
else:
|
||||
return sprintf('%s m', $meters);
|
||||
endif;
|
||||
}
|
||||
|
||||
//CONVERT SECONDS TO FORMAT: HOURS:MINUTES:SECONDS
|
||||
function seconds2hms($seconds) {
|
||||
$t = round($seconds);
|
||||
return sprintf('%02d:%02d:%02d', ($t/3600),($t/60%60), $t%60);
|
||||
}
|
||||
|
||||
//IF USER CALL ACTION MAPSERVER
|
||||
if($getopt->getOption('action') == 'mapserver'):
|
||||
$overwrite = $getopt->getOption('overwrite');
|
||||
try{
|
||||
$pdo = new PDO(DB_CONNECTION, DB_LOGIN, DB_PASSWORD);
|
||||
$driver = $pdo->getAttribute(PDO::ATTR_DRIVER_NAME);
|
||||
|
||||
//OVERWRITE == FLUSH TABLES
|
||||
if($overwrite):
|
||||
$tables = array('paths', 'tlines');
|
||||
if($driver == 'sqlite'):
|
||||
foreach($tables as $table):
|
||||
echo "Table: ".$table." was cleared \n";
|
||||
$stmt = $pdo->prepare('DELETE FROM ' . $table);
|
||||
$stmt->execute(array());
|
||||
endforeach;
|
||||
else:
|
||||
foreach($tables as $table):
|
||||
echo "Table: ".$table." was cleared \n";
|
||||
$stmt = $pdo->prepare('TRUNCATE ' . $table);
|
||||
$stmt->execute(array());
|
||||
endforeach;
|
||||
endif;
|
||||
endif;
|
||||
|
||||
//GET THE DATA FROM MAP SERVER
|
||||
$data = array(
|
||||
'pos1'=> array(
|
||||
'x' => -30927,
|
||||
'y' => -30927,
|
||||
'z' => -30927,
|
||||
),
|
||||
'pos2'=> array(
|
||||
'x' => 30927,
|
||||
'y' => 30927,
|
||||
'z' => 30927,
|
||||
),
|
||||
'type' => 'train',
|
||||
);
|
||||
$data = json_encode($data);
|
||||
$curl = curl_init();
|
||||
curl_setopt($curl, CURLOPT_URL, preg_replace('#[//]{2,}#', '/', MINETEST_MAPSERVER . '/api/mapobjects/'));
|
||||
curl_setopt($curl, CURLOPT_VERBOSE, false);
|
||||
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
|
||||
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
|
||||
curl_setopt($curl, CURLOPT_POST, true);
|
||||
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
|
||||
curl_setopt($curl, CURLOPT_ENCODING, true);
|
||||
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 10);
|
||||
curl_setopt($curl, CURLOPT_TIMEOUT, 60);
|
||||
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
|
||||
$return = curl_exec($curl);
|
||||
$ListCity = array();
|
||||
$ListTLine = array();
|
||||
$ListLine = array();
|
||||
$dataServer = json_decode($return);
|
||||
|
||||
//if object is mapserver:train block, write station name, position: x, y, z to arrayList
|
||||
//write to other arrayList information about separate line - only indexes [indexes - sort stations for each line]
|
||||
for($i = 0; $i < count($dataServer); $i++):
|
||||
if($dataServer[$i]->type != 'train'):
|
||||
continue;
|
||||
endif;
|
||||
|
||||
if(!empty($dataServer[$i]->attributes->station)):
|
||||
$ListCity[$dataServer[$i]->attributes->station]['x'] = $dataServer[$i]->x;
|
||||
$ListCity[$dataServer[$i]->attributes->station]['y'] = $dataServer[$i]->y;
|
||||
$ListCity[$dataServer[$i]->attributes->station]['z'] = $dataServer[$i]->z;
|
||||
endif;
|
||||
|
||||
if(!empty($dataServer[$i]->attributes->line) && !empty($dataServer[$i]->attributes->index) && !empty($dataServer[$i]->attributes->station)):
|
||||
$ListTLine[$dataServer[$i]->attributes->line][$dataServer[$i]->attributes->index][] = $i;
|
||||
endif;
|
||||
endfor;
|
||||
|
||||
//sort train lines by their names
|
||||
$SortLineNumbers = array_keys($ListTLine);
|
||||
sort($SortLineNumbers);
|
||||
|
||||
//LOOP SORT EARLIER TRAIN LINES
|
||||
for($i = 0; $i < count($SortLineNumbers); $i++):
|
||||
//store information about last city for specific line
|
||||
$lastCity = -1;
|
||||
$lineNumber = $SortLineNumbers[$i];
|
||||
//sort station indexes for specific line
|
||||
$SortLineIndexes = array_keys($ListTLine[$lineNumber]);
|
||||
sort($SortLineIndexes);
|
||||
for($j = 0; $j < count($SortLineIndexes); $j++):
|
||||
//get station indexes for specific line
|
||||
$indexes = $ListTLine[$lineNumber][$SortLineIndexes[$j]];
|
||||
//if it has one station in line, save it to arrayList and save to LastCity
|
||||
if(count($indexes) == 1):
|
||||
$ListLine[$lineNumber]['city'][] = $dataServer[$ListTLine[$lineNumber][$SortLineIndexes[$j]][0]]->attributes->station;
|
||||
$lastCity = $ListTLine[$lineNumber][$SortLineIndexes[$j]][0];
|
||||
else:
|
||||
//when are cities with the same index - calculate distance between for each and last city - it choose city which is the closest to last city, if last city is not set, save first city from line
|
||||
if($lastCity == -1):
|
||||
for($k = 0; $k < count($indexes); $k++):
|
||||
$ListLine[$lineNumber]['city'][] = $dataServer[$indexes[$k]]->attributes->station;
|
||||
$lastCity = $indexes[$k];
|
||||
endfor;
|
||||
else:
|
||||
$ListTempCity = array();
|
||||
for($k = 0; $k < count($indexes); $k++):
|
||||
$ListTempCity[] = array(
|
||||
'cityIndex' => $indexes[$k],
|
||||
'distance' => distancePoints(array($dataServer[$lastCity]->x, $dataServer[$lastCity]->y, $dataServer[$lastCity]->z), array($dataServer[$indexes[$k]]->x, $dataServer[$indexes[$k]]->y, $dataServer[$indexes[$k]]->z)),
|
||||
);
|
||||
endfor;
|
||||
//sort cities and their indexes by distance, later save cities from the closest
|
||||
usort($ListTempCity,"cmp");
|
||||
foreach($ListTempCity as $city):
|
||||
$ListLine[$lineNumber]['city'][] = $dataServer[$city['cityIndex']]->attributes->station;
|
||||
$lastCity = $city['cityIndex'];
|
||||
endforeach;
|
||||
endif;
|
||||
endif;
|
||||
endfor;
|
||||
endfor;
|
||||
|
||||
//process train lines and their the data
|
||||
foreach($ListLine as $number => $data):
|
||||
$NumCities = count($data['city']);
|
||||
for($i = 0; $i < $NumCities - 1; $i++):
|
||||
//calculate between cities and save it
|
||||
$distance = distancePoints(array($ListCity[$data['city'][$i]]['x'], $ListCity[$data['city'][$i]]['y'], $ListCity[$data['city'][$i]]['z']), array($ListCity[$data['city'][$i + 1]]['x'], $ListCity[$data['city'][$i + 1]]['y'], $ListCity[$data['city'][$i + 1]]['z']));
|
||||
$distance = number_format($distance, 0, '.', '');
|
||||
//calculate travel time between cities
|
||||
$time = ceil($distance / MINETEST_ADVTRAINS_AVG_SPEED);
|
||||
$ListLine[$number]['distance'][] = $distance;
|
||||
$ListLine[$number]['time'][] = $time;
|
||||
endfor;
|
||||
endforeach;
|
||||
|
||||
//NEXT, GIVE MAP OF CONNECTIONS BETWEEN CITIES BASED ON TRAIN LINES
|
||||
$g = new UndirectedGraph();
|
||||
//ADD CITIES
|
||||
foreach($ListLine as $number => $data):
|
||||
$NumCities = count($data['city']);
|
||||
for($i = 0; $i < $NumCities; $i++):
|
||||
$g->addVertex($data['city'][$i]);
|
||||
endfor;
|
||||
endforeach;
|
||||
|
||||
//ADD CONNECTION BETWEEN CITIES
|
||||
foreach($ListLine as $number => $data):
|
||||
$NumCities = count($data['city']);
|
||||
for($i = 0; $i < $NumCities - 1; $i++):
|
||||
$g->addEdge($data['city'][$i], $data['city'][$i + 1], 1);
|
||||
endfor;
|
||||
endforeach;
|
||||
|
||||
//ADD CONNECTIONS BETWEEN CITIES TO DATABASE
|
||||
foreach($ListCity as $name => $data):
|
||||
foreach($g->vertices[$name]->getNeighbors() as $neighboor):
|
||||
$stmt = $pdo->prepare('SELECT count(*) FROM paths WHERE (from_station=:from_station AND to_station=:to_station) OR (from_station=:to_station AND to_station=:from_station)');
|
||||
$stmt->execute(array(
|
||||
':from_station' => $name,
|
||||
':to_station' => $neighboor,
|
||||
));
|
||||
$nRows = $stmt->fetchColumn();
|
||||
if($nRows > 0):
|
||||
echo "Route ".implode(' - ', array($name, $neighboor)) ." already exists in database \n";
|
||||
continue;
|
||||
endif;
|
||||
$stmt = $pdo->prepare('INSERT INTO `paths` (`from_station`, `to_station`) VALUES (:from_station, :to_station)');
|
||||
$stmt->execute(array(
|
||||
':from_station' => $name,
|
||||
':to_station' => $neighboor,
|
||||
));
|
||||
echo "Route: ".implode(' - ', array($name, $neighboor)) ." was added to database \n";
|
||||
endforeach;
|
||||
endforeach;
|
||||
|
||||
//ADD TRAIN LINES TO DATABASE
|
||||
foreach($ListLine as $name => $data):
|
||||
for($i = 0; $i < count($data['city']) - 1; $i++):
|
||||
$stmt = $pdo->prepare('SELECT count(*) FROM tlines WHERE ((station_from=:station_from AND station_to=:station_to) OR (station_from=:station_to AND station_to=:station_from)) AND line=:line');
|
||||
$stmt->execute(array(
|
||||
':station_from' => $data['city'][$i],
|
||||
':station_to' => $data['city'][$i + 1],
|
||||
':line' => $name,
|
||||
));
|
||||
$nRows = $stmt->fetchColumn();
|
||||
if($nRows > 0):
|
||||
echo "Train line " . $name . " (". $data['city'][$i] .") - ". $data['city'][$i + 1] ." already exists in database \n";
|
||||
continue;
|
||||
endif;
|
||||
|
||||
$stmt = $pdo->prepare('INSERT INTO `tlines` (`station_from`, `station_to`, `line`, `num`, `distance`,`time`) VALUES (:station_from, :station_to, :line, :num, :distance, :time)');
|
||||
$stmt->execute(array(
|
||||
':station_from' => $data['city'][$i],
|
||||
':station_to' => $data['city'][$i + 1],
|
||||
':line' => $name,
|
||||
':num' => $i,
|
||||
':distance' => $data['distance'][$i],
|
||||
':time' => $data['time'][$i],
|
||||
));
|
||||
|
||||
echo "Train line: " . $name . " (". $data['city'][$i] .") - ". $data['city'][$i + 1] ." was added to database \n";
|
||||
endfor;
|
||||
endforeach;
|
||||
}catch(Exception $each){
|
||||
echo $e->getMessage() . "\n";
|
||||
}
|
||||
exit();
|
||||
endif;
|
||||
|
||||
//CREATE TABLES IN DATABASE
|
||||
if($getopt->getOption('action') == 'createtables'):
|
||||
try{
|
||||
$pdo = new PDO(DB_CONNECTION, DB_LOGIN, DB_PASSWORD);
|
||||
$driver = $pdo->getAttribute(PDO::ATTR_DRIVER_NAME);
|
||||
switch($driver):
|
||||
case 'mysql':
|
||||
$stmt = $pdo->prepare('CREATE TABLE IF NOT EXISTS `paths` (
|
||||
`id` bigint(20) NOT NULL AUTO_INCREMENT,
|
||||
`from_station` text NOT NULL,
|
||||
`to_station` text NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `from_station` (`from_station`(768))
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;');
|
||||
$stmt->execute(array());
|
||||
$stmt = $pdo->prepare('CREATE TABLE IF NOT EXISTS `tlines` (
|
||||
`id` bigint(20) NOT NULL AUTO_INCREMENT,
|
||||
`station_from` text NOT NULL,
|
||||
`station_to` text NOT NULL,
|
||||
`line` text NOT NULL,
|
||||
`num` int(11) NOT NULL,
|
||||
`distance` int(11) NOT NULL,
|
||||
`time` int(11) NOT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;');
|
||||
$stmt->execute(array());
|
||||
break;
|
||||
case 'sqlite':
|
||||
$stmt = $pdo->prepare('CREATE TABLE "paths" (
|
||||
"id" INTEGER,
|
||||
"from_station" TEXT,
|
||||
"to_station" TEXT,
|
||||
PRIMARY KEY("id" AUTOINCREMENT)
|
||||
)');
|
||||
$stmt->execute(array());
|
||||
$stmt = $pdo->prepare('CREATE TABLE "tlines" (
|
||||
"id" INTEGER,
|
||||
"station_from" TEXT,
|
||||
"station_to" TEXT,
|
||||
"line" TEXT,
|
||||
"num" INTEGER,
|
||||
"distance" INTEGER,
|
||||
"time" TEXT,
|
||||
PRIMARY KEY("id" AUTOINCREMENT)
|
||||
)');
|
||||
$stmt->execute(array());
|
||||
break;
|
||||
case 'pgsql':
|
||||
$stmt = $pdo->prepare('CREATE TABLE paths (
|
||||
id serial NOT NULL,
|
||||
from_station text NOT NULL,
|
||||
to_station text NOT NULL,
|
||||
CONSTRAINT paths_pk PRIMARY KEY (id)
|
||||
);');
|
||||
$stmt->execute(array());
|
||||
$stmt = $pdo->prepare('CREATE TABLE public.tlines (
|
||||
id serial NOT NULL,
|
||||
station_from text NOT NULL,
|
||||
station_to text NOT NULL,
|
||||
line text NOT NULL,
|
||||
num int4 NOT NULL,
|
||||
distance int4 NOT NULL,
|
||||
"time" int4 NOT NULL,
|
||||
CONSTRAINT tlines_pk PRIMARY KEY (id)
|
||||
);');
|
||||
$stmt->execute(array());
|
||||
break;
|
||||
endswitch;
|
||||
|
||||
echo "Tables were created. \n";
|
||||
|
||||
}
|
||||
catch(Exception $e)
|
||||
{
|
||||
echo $e->getMessage();
|
||||
}
|
||||
exit();
|
||||
endif;
|
||||
|
||||
|
||||
$action = (empty($_GET['action'])) ? '': $_GET['action'];
|
||||
//GET STATIONS
|
||||
if($action == "getstations"):
|
||||
$pdo = new PDO(DB_CONNECTION, DB_LOGIN, DB_PASSWORD);
|
||||
$tcities = array();
|
||||
$cities = array();
|
||||
//SELECT ALL PATHS BETWEEN CITIES
|
||||
$stmt = $pdo->prepare('SELECT * FROM paths');
|
||||
$stmt->execute(array());
|
||||
$dataLines = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||
foreach($dataLines as $station):
|
||||
if(!in_array($station['from_station'], $tcities)):
|
||||
$tcities[] = $station['from_station'];
|
||||
endif;
|
||||
if(!in_array($station['to_station'], $tcities)):
|
||||
$tcities[] = $station['to_station'];
|
||||
endif;
|
||||
endforeach;
|
||||
sort($tcities);
|
||||
@mkdir(__DIR__ . DIRECTORY_SEPARATOR . 'data');
|
||||
file_put_contents(__DIR__ . DIRECTORY_SEPARATOR . 'data' . DIRECTORY_SEPARATOR . 'cities_num.txt', count($tcities));
|
||||
echo json_encode($tcities);
|
||||
exit();
|
||||
endif;
|
||||
|
||||
$pdo = new PDO(DB_CONNECTION, DB_LOGIN, DB_PASSWORD);
|
||||
$foundLines = array();
|
||||
$startStation = (empty($_GET['start'])) ? '' : urldecode($_GET['start']);
|
||||
$endStation = (empty($_GET['end'])) ? '' : urldecode($_GET['end']);
|
||||
$searchtype = (empty($_GET['searchtype'])) ? 0 : $_GET['searchtype'];
|
||||
$cities = array();
|
||||
$nofound = 0;
|
||||
|
||||
//process if start station and end station is not empty
|
||||
if(!empty($startStation) && !empty($endStation) && !$nofound):
|
||||
$g = new UndirectedGraph();
|
||||
|
||||
//SELECT ALL PATHS BETWEEN CITIES
|
||||
$stmt = $pdo->prepare('SELECT * FROM paths');
|
||||
$stmt->execute(array());
|
||||
$dataLines = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||
if(count($dataLines) == 0):
|
||||
echo 'No data found - add the data from mapserver';
|
||||
exit();
|
||||
endif;
|
||||
|
||||
foreach($dataLines as $station):
|
||||
//ADD STATIONS AS VERTEX
|
||||
$g->addVertex($station['from_station']);
|
||||
$g->addVertex($station['to_station']);
|
||||
if(!in_array($station['from_station'], $cities)):
|
||||
$cities[] = $station['from_station'];
|
||||
endif;
|
||||
if(!in_array($station['to_station'], $cities)):
|
||||
$cities[] = $station['to_station'];
|
||||
endif;
|
||||
endforeach;
|
||||
sort($cities);
|
||||
|
||||
//depends on search type
|
||||
foreach($dataLines as $station):
|
||||
switch($searchtype):
|
||||
case 2:
|
||||
$stmt = $pdo->prepare('SELECT distance FROM tlines WHERE (station_from=:station_from AND station_to=:station_to) OR (station_from=:station_to AND station_to=:station_from) ORDER BY distance ASC LIMIT 1');
|
||||
$stmt->execute(array(
|
||||
':station_from' => $station['from_station'],
|
||||
':station_to' => $station['to_station'],
|
||||
));
|
||||
$data = $stmt->fetch(PDO::FETCH_ASSOC);
|
||||
$g->addEdge($station['from_station'], $station['to_station'], $data['distance']);
|
||||
break;
|
||||
case 3:
|
||||
$stmt = $pdo->prepare('SELECT time FROM tlines WHERE (station_from=:station_from AND station_to=:station_to) OR (station_from=:station_to AND station_to=:station_from) ORDER BY time ASC LIMIT 1');
|
||||
$stmt->execute(array(
|
||||
':station_from' => $station['from_station'],
|
||||
':station_to' => $station['to_station'],
|
||||
));
|
||||
$data = $stmt->fetch(PDO::FETCH_ASSOC);
|
||||
$g->addEdge($station['from_station'], $station['to_station'], $data['time']);
|
||||
break;
|
||||
default:
|
||||
$g->addEdge($station['from_station'], $station['to_station'], 1);
|
||||
break;
|
||||
endswitch;
|
||||
endforeach;
|
||||
|
||||
$fw = new FloydWarshall($g);
|
||||
$fw->run();
|
||||
$fw_res = $fw->get($startStation, $endStation);
|
||||
if($fw_res == null):
|
||||
$nofound = 1;
|
||||
endif;
|
||||
|
||||
if($nofound == 0):
|
||||
//SEARCH ALL POSSIBLE SHORT PATHS BETWEEN CITIES
|
||||
$dijkstra_mult = new DijkstraMulti($g);
|
||||
$dijkstra_mult->run($startStation);
|
||||
$results = $dijkstra_mult->get($endStation);
|
||||
|
||||
//NO FOUND RESULTS
|
||||
if(count($results['paths']) == 0):
|
||||
$nofound = 1;
|
||||
endif;
|
||||
|
||||
//NO FOUND RESULTS
|
||||
if(count($results['paths']) == 1):
|
||||
if(count($results['paths'][0]) == 1):
|
||||
$nofound = 1;
|
||||
endif;
|
||||
endif;
|
||||
//PROCESSING IN PATHS
|
||||
for($i = 0; $i < count($results['paths']); $i++):
|
||||
$paths = $results['paths'][$i];
|
||||
$tempLine = array();
|
||||
//SUM DISTANCE
|
||||
$distance = 0;
|
||||
//SUM TIME
|
||||
$time = 0;
|
||||
//LAST TRAIN CODE
|
||||
$trainCode = '';
|
||||
$tempLine['cities'] = array();
|
||||
for($j = 0; $j < count($paths) - 1; $j++):
|
||||
$tempLine['cities'][]['name'] = $paths[$j];
|
||||
//WHICH TRAIN SERVE ROUTE BETWEEN SEARCHING CITIES
|
||||
$stmt = $pdo->prepare('SELECT * FROM tlines WHERE ((station_from=:station_from AND station_to=:station_to) OR (station_from=:station_to AND station_to=:station_from))');
|
||||
$stmt->execute(array(
|
||||
':station_from' => $paths[$j],
|
||||
':station_to' => $paths[$j+1],
|
||||
));
|
||||
$data = $stmt->fetch(PDO::FETCH_ASSOC);
|
||||
$distance += $data['distance'];
|
||||
$time += $data['time'];
|
||||
|
||||
if($trainCode == ''):
|
||||
//SAVE TRAIN LINE NAME
|
||||
$tempLine['cities'][count($tempLine['cities']) - 1]['line'] = $data['line'];
|
||||
|
||||
$tempLine['cities'][count($tempLine['cities']) - 1]['distance'] = $data['distance'];
|
||||
$tempLine['cities'][count($tempLine['cities']) - 1]['time'] = $data['time'];
|
||||
//SAVE TRAIN CODE TO CHECK LATER
|
||||
$trainCode = $data['line'];
|
||||
|
||||
//GET FIRST AND LAST STATION OF SPECIFIC TRAIN
|
||||
$stmt2 = $pdo->prepare('SELECT station_from FROM tlines WHERE line=:line ORDER BY num ASC LIMIT 1');
|
||||
$stmt2->execute(array(
|
||||
':line' => $trainCode,
|
||||
));
|
||||
$data2 = $stmt2->fetch(PDO::FETCH_ASSOC);
|
||||
//SAVE FIRST STATION OF SPECIFIC TRAIN
|
||||
$tempLine['cities'][count($tempLine['cities']) - 1]['line_station_from'] = $data2['station_from'];
|
||||
$stmt2 = $pdo->prepare('SELECT station_to FROM tlines WHERE line=:line ORDER BY num DESC LIMIT 1');
|
||||
$stmt2->execute(array(
|
||||
':line' => $trainCode,
|
||||
));
|
||||
$data2 = $stmt2->fetch(PDO::FETCH_ASSOC);
|
||||
//SAVE LAST STATION OF SPECIFIC TRAIN
|
||||
$tempLine['cities'][count($tempLine['cities']) - 1]['line_station_to'] = $data2['station_to'];
|
||||
//-- GET FIRST AND LAST STATION OF SPECIFIC TRAIN
|
||||
elseif($trainCode != $data['line']):
|
||||
//SAVE TRAIN LINE NAME
|
||||
$tempLine['cities'][count($tempLine['cities']) - 1]['line'] = $data['line'];
|
||||
//SAVE TRAIN CODE TO CHECK LATER
|
||||
$trainCode = $data['line'];
|
||||
|
||||
$tempLine['cities'][count($tempLine['cities']) - 1]['distance'] = $data['distance'];
|
||||
$tempLine['cities'][count($tempLine['cities']) - 1]['time'] = $data['time'];
|
||||
|
||||
//GET FIRST AND LAST STATION OF SPECIFIC TRAIN
|
||||
$stmt2 = $pdo->prepare('SELECT station_from FROM tlines WHERE line=:line ORDER BY num ASC LIMIT 1');
|
||||
$stmt2->execute(array(
|
||||
':line' => $trainCode,
|
||||
));
|
||||
$data2 = $stmt2->fetch(PDO::FETCH_ASSOC);
|
||||
//SAVE FIRST STATION OF SPECIFIC TRAIN
|
||||
$tempLine['cities'][count($tempLine['cities']) - 1]['line_station_from'] = $data2['station_from'];
|
||||
$stmt2 = $pdo->prepare('SELECT station_to FROM tlines WHERE line=:line ORDER BY num DESC LIMIT 1');
|
||||
$stmt2->execute(array(
|
||||
':line' => $trainCode,
|
||||
));
|
||||
$data2 = $stmt2->fetch(PDO::FETCH_ASSOC);
|
||||
//SAVE LAST STATION OF SPECIFIC TRAIN
|
||||
$tempLine['cities'][count($tempLine['cities']) - 1]['line_station_to'] = $data2['station_to'];
|
||||
//-- GET FIRST AND LAST STATION OF SPECIFIC TRAIN
|
||||
else:
|
||||
//SAVE TRAIN LINE NAME
|
||||
$tempLine['cities'][count($tempLine['cities']) - 1]['line'] = $data['line'];
|
||||
//SAVE TRAIN CODE TO CHECK LATER
|
||||
$trainCode = $data['line'];
|
||||
$tempLine['cities'][count($tempLine['cities']) - 1]['distance'] = $data['distance'];
|
||||
$tempLine['cities'][count($tempLine['cities']) - 1]['time'] = $data['time'];
|
||||
endif;
|
||||
endfor;
|
||||
|
||||
//SUM DISTANCES - FROM ONE LINE TO OTHER LINE
|
||||
for($k = 0; $k < count($tempLine['cities']) - 1; $k++):
|
||||
$tdistance = 0;
|
||||
$ttime = 0;
|
||||
$line = $tempLine['cities'][$k]['line'];
|
||||
$origin = $k;
|
||||
$tdistance += $tempLine['cities'][$k]['distance'];
|
||||
$ttime += $tempLine['cities'][$k]['time'];
|
||||
|
||||
for($l = $k + 1; $l < count($tempLine['cities']); $l++):
|
||||
if($line == $tempLine['cities'][$l]['line']):
|
||||
$tdistance += $tempLine['cities'][$l]['distance'];
|
||||
$ttime += $tempLine['cities'][$l]['time'];
|
||||
else:
|
||||
$k = $l;
|
||||
break;
|
||||
endif;
|
||||
endfor;
|
||||
$tempLine['cities'][$origin]['distance'] = $tdistance;
|
||||
$tempLine['cities'][$origin]['time'] = $ttime;
|
||||
endfor;
|
||||
//SAVE DATA
|
||||
//SAVE DISTANCE BETWEEN CITIES
|
||||
$tempLine['distance'] = $distance;
|
||||
$tempLine['time'] = $time;
|
||||
$tempLine['cities'][]['name'] = $paths[count($paths) - 1];
|
||||
$foundLines[] = $tempLine;
|
||||
endfor;
|
||||
endif;
|
||||
endif;
|
||||
?>
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>MINETEST RAILWAY CONNECTIONS SEARCH ENGINE</title>
|
||||
<link rel="stylesheet" href="css/jquery-ui.min.css">
|
||||
<script src="js/jquery.js"></script>
|
||||
<script src="js/jquery-ui.min.js"></script>
|
||||
<script src="js/jquery.simplePagination.js"></script>
|
||||
<script src="js/selectize.js"></script>
|
||||
<link href="css/railway.css" rel="stylesheet">
|
||||
<link rel="stylesheet" type="text/css" href="css/selectize.bootstrap3.css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="tabs">
|
||||
<ul>
|
||||
<li><a href="#tabs-search">SEARCH</a></li>
|
||||
<li><a href="#tabs-map">MAP</a></li>
|
||||
<li><a href="#tabs-stats">STATS</a></li>
|
||||
</ul>
|
||||
<div id="tabs-search">
|
||||
<?php @require_once('minetest.tab.search.php'); ?>
|
||||
</div>
|
||||
<div id="tabs-map">
|
||||
<iframe src="<?php echo MINETEST_MAPSERVER; ?>" width="100%" height="600" allow="fullscreen" style="border:none"></iframe>
|
||||
</div>
|
||||
<div id="tabs-stats">
|
||||
<?php @require_once('minetest.tab.stats.php'); ?>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
<script src="js/railway.js"></script>
|
|
@ -0,0 +1,148 @@
|
|||
<?php if(!defined('PHP_IS_INTERNAL_SCRIPT')) exit(); ?>
|
||||
<form enctype="application/x-www-form-urlencoded" method="GET" target="_self">
|
||||
<table style="width:50%;">
|
||||
<tr>
|
||||
<td style="width:30%;"><b>Start station: </b></td>
|
||||
<td>
|
||||
<div class="ui-widget">
|
||||
<select id="combobox_start" name="start">
|
||||
</select>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>End station: </b></td>
|
||||
<td>
|
||||
<div class="ui-widget">
|
||||
<select id="combobox_end" name="end"></select>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b>Search type: </b></td>
|
||||
<td>
|
||||
<input type="radio" name="searchtype" value="0" checked id="radio-1">
|
||||
<label for="radio-1">normal</label>
|
||||
<input type="radio" name="searchtype" value="1" id="radio-2">
|
||||
<label for="radio-2">the shortest route</label>
|
||||
<input type="radio" name="searchtype" value="2" id="radio-3">
|
||||
<label for="radio-3">the shortest time</label>
|
||||
</td>
|
||||
</tr>
|
||||
<tr><td> </td></tr>
|
||||
<tr>
|
||||
<td colspan="2" style="padding-left:200px;">
|
||||
<button class="ui-button ui-widget ui-corner-all" id="buttonsearch">Search</button>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
<br/><br/>
|
||||
<?php if($nofound): ?>
|
||||
<h2 style="text-align:center;">--- no route found ---</h2>
|
||||
<?php
|
||||
else:
|
||||
foreach($foundLines as $line):
|
||||
$citiesWithoutBeginAndEnd = count($line['cities']) - 2;
|
||||
$cities = $line['cities'];
|
||||
$via = array();
|
||||
for($x = 0; $x < count($cities); $x++):
|
||||
if($x == 0):
|
||||
continue;
|
||||
endif;
|
||||
if(isset($cities[$x]['line_from'])):
|
||||
$via[] = $cities[$x]['name'];
|
||||
endif;
|
||||
endfor;
|
||||
?>
|
||||
<table class="blueTable" id="tableroute">
|
||||
<thead>
|
||||
<tr>
|
||||
<th colspan="7">
|
||||
<?php echo $cities[0]['name'] . ' ➝ ' . $cities[count($cities) - 1]['name'] . ", via: " . ((count($via) == 0) ? '---': implode(', ', $via)) . ", distance: " . meters2km($line['distance']).', travel time: ' . seconds2hms($line['time']); ?>
|
||||
</th>
|
||||
</tr>
|
||||
<tr></tr>
|
||||
<tr>
|
||||
<th></th>
|
||||
<th></th>
|
||||
<th style="width:10%;text-align:center;">Station</th>
|
||||
<th></th>
|
||||
<th>Train</th>
|
||||
<th>Distance</th>
|
||||
<th>Time</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td rowspan="<?php echo count($line['cities']);?>" style="width:3%;" style="display: inline-block; vertical-align: top;">
|
||||
<div class="circle circle-begin"> </div>
|
||||
<?php for($k = 0; $k < $citiesWithoutBeginAndEnd; $k++): ?>
|
||||
<div class="circle"> </div>
|
||||
<?php endfor; ?>
|
||||
<div class="circle circle-end"> </div>
|
||||
</td>
|
||||
<td style="width:2%;text-align:center;"><img src="image/getin.png"/></td>
|
||||
<td><?php echo $cities[0]['name'];?></td>
|
||||
<td>catch the train</td>
|
||||
<td style="text-align:center;">
|
||||
<b>LINE:</b> <?php echo $cities[0]['line'];?>
|
||||
</br>
|
||||
(route: <?php echo $cities[0]['line_station_from']. ' ➝ ' . $cities[0]['line_station_to']; ?>)
|
||||
</td>
|
||||
<td style="text-align:center;">
|
||||
<?php echo meters2km($cities[0]['distance']); ?>
|
||||
</td>
|
||||
<td style="text-align:center;">
|
||||
<?php echo seconds2hms($cities[0]['time']); ?>
|
||||
</td>
|
||||
</tr>
|
||||
<?php
|
||||
for($k = 1; $k <= $citiesWithoutBeginAndEnd; $k++):
|
||||
if(isset($cities[$k]['line_station_from'])):
|
||||
?>
|
||||
<tr>
|
||||
<td><img src="image/transfer.png"/></td>
|
||||
<td><?php echo $cities[$k]['name'];?></td>
|
||||
<td>get off the train and catch the next train</td>
|
||||
<td style="text-align:center;">
|
||||
<b>LINE:</b> <?php echo $cities[$k]['line'];?>
|
||||
<br/>(route: <?php echo $cities[$k]['line_station_from']. ' ➝ ' . $cities[$k]['line_station_to']; ?>)
|
||||
</td>
|
||||
<td style="text-align:center;width:8%;"><?php echo meters2km($cities[$k]['distance']); ?></td>
|
||||
<td style="text-align:center;">
|
||||
<?php echo seconds2hms($cities[$k]['time']); ?>
|
||||
</td>
|
||||
</tr>
|
||||
<?php
|
||||
else:
|
||||
?>
|
||||
<tr>
|
||||
<td><img src="image/station.png"/></td>
|
||||
<td><?php echo $cities[$k]['name'];?></td>
|
||||
<td style="text-align:center;">↡</td>
|
||||
<td style="text-align:center;">↡</td>
|
||||
<td style="text-align:center;">↡</td>
|
||||
<td style="text-align:center;">↡</td>
|
||||
</tr>
|
||||
<?php
|
||||
endif;
|
||||
endfor;
|
||||
?>
|
||||
<tr>
|
||||
<td><img src="image/exit.png"/></td>
|
||||
<td><?php echo $cities[count($cities) - 1]['name'];?></td>
|
||||
<td> Get off at the station</td>
|
||||
<td style="text-align:center;">⇥</td>
|
||||
<td style="text-align:center;">⇥</td>
|
||||
<td style="text-align:center;">⇥</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<br/>
|
||||
<hr size="1" />
|
||||
<br/>
|
||||
<?php
|
||||
endforeach;
|
||||
endif;
|
||||
?>
|
|
@ -0,0 +1,59 @@
|
|||
<?php if(!defined('PHP_IS_INTERNAL_SCRIPT')) exit();
|
||||
|
||||
$Listtrains = array();
|
||||
try{
|
||||
$curl = curl_init();
|
||||
curl_setopt($curl, CURLOPT_URL, preg_replace('#[//]{2,}#', '/', MINETEST_MAPSERVER . '/api/stats'));
|
||||
curl_setopt($curl, CURLOPT_VERBOSE, false);
|
||||
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
|
||||
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
|
||||
curl_setopt($curl, CURLOPT_ENCODING, true);
|
||||
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 10);
|
||||
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
|
||||
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
|
||||
$return = curl_exec($curl);
|
||||
}catch(Exception $e){}
|
||||
if(!empty($return) || $return != "EOF"):
|
||||
$data = json_decode($return);
|
||||
foreach($data->trains as $train):
|
||||
$line = (!empty($train->line)) ? $train->line : '---';
|
||||
if(!isset($Listtrains[$line])):
|
||||
$Listtrains[$line] = array();
|
||||
endif;
|
||||
if(!isset($Listtrains[$line]['total'])):
|
||||
$Listtrains[$line]['total'] = 0;
|
||||
endif;
|
||||
$Listtrains[$line]['total'] = $Listtrains[$line]['total'] + 1;
|
||||
endforeach;
|
||||
endif;
|
||||
?>
|
||||
<table class="blueTable" style="width:50%;">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Train</th>
|
||||
<th style="width:10%;">#Trains</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php
|
||||
$keys = array_keys($Listtrains);
|
||||
sort($keys, SORT_NATURAL);
|
||||
$total = 0;
|
||||
for($i = 0; $i < count($keys); $i++):
|
||||
$total += $Listtrains[$keys[$i]]['total'];
|
||||
?>
|
||||
<tr>
|
||||
<td><?php echo $keys[$i]; ?></td>
|
||||
<td><?php echo $Listtrains[$keys[$i]]['total']; ?></td>
|
||||
</tr>
|
||||
<?php endfor; ?>
|
||||
<tr>
|
||||
<td style="text-align:center;font-weight:bolder;">TOTAL</td>
|
||||
<td><?php echo $total; ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="text-align:center;font-weight:bolder;">TOTAL CITIES</td>
|
||||
<td><?php echo file_get_contents(__DIR__ . DIRECTORY_SEPARATOR . 'data' . DIRECTORY_SEPARATOR . 'cities_num.txt'); ?></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
|
@ -0,0 +1,6 @@
|
|||
# PhpStorm settings directory
|
||||
.idea
|
||||
|
||||
# composer stuff
|
||||
vendor/
|
||||
composer.lock
|
|
@ -0,0 +1,12 @@
|
|||
language: php
|
||||
|
||||
php:
|
||||
- 5.5
|
||||
- 5.6
|
||||
- 7.0
|
||||
|
||||
before_script:
|
||||
- composer self-update
|
||||
- composer install --prefer-source --no-interaction --dev
|
||||
|
||||
script: phpunit
|
|
@ -0,0 +1,165 @@
|
|||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
Version 3, 29 June 2007
|
||||
|
||||
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
|
||||
This version of the GNU Lesser General Public License incorporates
|
||||
the terms and conditions of version 3 of the GNU General Public
|
||||
License, supplemented by the additional permissions listed below.
|
||||
|
||||
0. Additional Definitions.
|
||||
|
||||
As used herein, "this License" refers to version 3 of the GNU Lesser
|
||||
General Public License, and the "GNU GPL" refers to version 3 of the GNU
|
||||
General Public License.
|
||||
|
||||
"The Library" refers to a covered work governed by this License,
|
||||
other than an Application or a Combined Work as defined below.
|
||||
|
||||
An "Application" is any work that makes use of an interface provided
|
||||
by the Library, but which is not otherwise based on the Library.
|
||||
Defining a subclass of a class defined by the Library is deemed a mode
|
||||
of using an interface provided by the Library.
|
||||
|
||||
A "Combined Work" is a work produced by combining or linking an
|
||||
Application with the Library. The particular version of the Library
|
||||
with which the Combined Work was made is also called the "Linked
|
||||
Version".
|
||||
|
||||
The "Minimal Corresponding Source" for a Combined Work means the
|
||||
Corresponding Source for the Combined Work, excluding any source code
|
||||
for portions of the Combined Work that, considered in isolation, are
|
||||
based on the Application, and not on the Linked Version.
|
||||
|
||||
The "Corresponding Application Code" for a Combined Work means the
|
||||
object code and/or source code for the Application, including any data
|
||||
and utility programs needed for reproducing the Combined Work from the
|
||||
Application, but excluding the System Libraries of the Combined Work.
|
||||
|
||||
1. Exception to Section 3 of the GNU GPL.
|
||||
|
||||
You may convey a covered work under sections 3 and 4 of this License
|
||||
without being bound by section 3 of the GNU GPL.
|
||||
|
||||
2. Conveying Modified Versions.
|
||||
|
||||
If you modify a copy of the Library, and, in your modifications, a
|
||||
facility refers to a function or data to be supplied by an Application
|
||||
that uses the facility (other than as an argument passed when the
|
||||
facility is invoked), then you may convey a copy of the modified
|
||||
version:
|
||||
|
||||
a) under this License, provided that you make a good faith effort to
|
||||
ensure that, in the event an Application does not supply the
|
||||
function or data, the facility still operates, and performs
|
||||
whatever part of its purpose remains meaningful, or
|
||||
|
||||
b) under the GNU GPL, with none of the additional permissions of
|
||||
this License applicable to that copy.
|
||||
|
||||
3. Object Code Incorporating Material from Library Header Files.
|
||||
|
||||
The object code form of an Application may incorporate material from
|
||||
a header file that is part of the Library. You may convey such object
|
||||
code under terms of your choice, provided that, if the incorporated
|
||||
material is not limited to numerical parameters, data structure
|
||||
layouts and accessors, or small macros, inline functions and templates
|
||||
(ten or fewer lines in length), you do both of the following:
|
||||
|
||||
a) Give prominent notice with each copy of the object code that the
|
||||
Library is used in it and that the Library and its use are
|
||||
covered by this License.
|
||||
|
||||
b) Accompany the object code with a copy of the GNU GPL and this license
|
||||
document.
|
||||
|
||||
4. Combined Works.
|
||||
|
||||
You may convey a Combined Work under terms of your choice that,
|
||||
taken together, effectively do not restrict modification of the
|
||||
portions of the Library contained in the Combined Work and reverse
|
||||
engineering for debugging such modifications, if you also do each of
|
||||
the following:
|
||||
|
||||
a) Give prominent notice with each copy of the Combined Work that
|
||||
the Library is used in it and that the Library and its use are
|
||||
covered by this License.
|
||||
|
||||
b) Accompany the Combined Work with a copy of the GNU GPL and this license
|
||||
document.
|
||||
|
||||
c) For a Combined Work that displays copyright notices during
|
||||
execution, include the copyright notice for the Library among
|
||||
these notices, as well as a reference directing the user to the
|
||||
copies of the GNU GPL and this license document.
|
||||
|
||||
d) Do one of the following:
|
||||
|
||||
0) Convey the Minimal Corresponding Source under the terms of this
|
||||
License, and the Corresponding Application Code in a form
|
||||
suitable for, and under terms that permit, the user to
|
||||
recombine or relink the Application with a modified version of
|
||||
the Linked Version to produce a modified Combined Work, in the
|
||||
manner specified by section 6 of the GNU GPL for conveying
|
||||
Corresponding Source.
|
||||
|
||||
1) Use a suitable shared library mechanism for linking with the
|
||||
Library. A suitable mechanism is one that (a) uses at run time
|
||||
a copy of the Library already present on the user's computer
|
||||
system, and (b) will operate properly with a modified version
|
||||
of the Library that is interface-compatible with the Linked
|
||||
Version.
|
||||
|
||||
e) Provide Installation Information, but only if you would otherwise
|
||||
be required to provide such information under section 6 of the
|
||||
GNU GPL, and only to the extent that such information is
|
||||
necessary to install and execute a modified version of the
|
||||
Combined Work produced by recombining or relinking the
|
||||
Application with a modified version of the Linked Version. (If
|
||||
you use option 4d0, the Installation Information must accompany
|
||||
the Minimal Corresponding Source and Corresponding Application
|
||||
Code. If you use option 4d1, you must provide the Installation
|
||||
Information in the manner specified by section 6 of the GNU GPL
|
||||
for conveying Corresponding Source.)
|
||||
|
||||
5. Combined Libraries.
|
||||
|
||||
You may place library facilities that are a work based on the
|
||||
Library side by side in a single library together with other library
|
||||
facilities that are not Applications and are not covered by this
|
||||
License, and convey such a combined library under terms of your
|
||||
choice, if you do both of the following:
|
||||
|
||||
a) Accompany the combined library with a copy of the same work based
|
||||
on the Library, uncombined with any other library facilities,
|
||||
conveyed under the terms of this License.
|
||||
|
||||
b) Give prominent notice with the combined library that part of it
|
||||
is a work based on the Library, and explaining where to find the
|
||||
accompanying uncombined form of the same work.
|
||||
|
||||
6. Revised Versions of the GNU Lesser General Public License.
|
||||
|
||||
The Free Software Foundation may publish revised and/or new versions
|
||||
of the GNU Lesser General Public License from time to time. Such new
|
||||
versions will be similar in spirit to the present version, but may
|
||||
differ in detail to address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the
|
||||
Library as you received it specifies that a certain numbered version
|
||||
of the GNU Lesser General Public License "or any later version"
|
||||
applies to it, you have the option of following the terms and
|
||||
conditions either of that published version or of any later version
|
||||
published by the Free Software Foundation. If the Library as you
|
||||
received it does not specify a version number of the GNU Lesser
|
||||
General Public License, you may choose any version of the GNU Lesser
|
||||
General Public License ever published by the Free Software Foundation.
|
||||
|
||||
If the Library as you received it specifies that a proxy can decide
|
||||
whether future versions of the GNU Lesser General Public License shall
|
||||
apply, that proxy's public statement of acceptance of any version is
|
||||
permanent authorization for you to choose that version for the
|
||||
Library.
|
|
@ -0,0 +1,91 @@
|
|||
sudoku-php
|
||||
=====
|
||||
|
||||
[![Build Status](https://travis-ci.org/AbcAeffchen/sudoku-php.svg?branch=master)](https://travis-ci.org/AbcAeffchen/sudoku-php)
|
||||
[![Latest Stable Version](https://poser.pugx.org/abcaeffchen/sudoku-php/v/stable.svg)](https://packagist.org/packages/abcaeffchen/sudoku-php)
|
||||
[![Total Downloads](https://poser.pugx.org/abcaeffchen/sudoku-php/downloads.svg)](https://packagist.org/packages/abcaeffchen/sudoku-php)
|
||||
[![License](https://poser.pugx.org/abcaeffchen/sudoku-php/license.svg)](https://packagist.org/packages/abcaeffchen/sudoku-php)
|
||||
|
||||
Genral
|
||||
-----
|
||||
Generate random Sudokus of different size and difficulty and check the solution. Features:
|
||||
|
||||
- Choose from the following sizes: 4, 9, 16, 25, 36.
|
||||
- Choose from fife degrees of difficulty.
|
||||
- Sudokus are reproducible via a integer seed.
|
||||
- Check if a input is a solution of any Sudoku or a solution to a specific task.
|
||||
- Solve Sudokus.
|
||||
- works with PHP 5.5, 5.6 and 7.0 (maybe also with PHP < 5.5, but no one should use that old PHP versions)
|
||||
- backend only, so you can build your own frontend however you like it.
|
||||
|
||||
Installation
|
||||
-----
|
||||
You can install this via composer using
|
||||
```json
|
||||
{
|
||||
"require": {
|
||||
"abcaeffchen/sudoku-php": "~1.0.0"
|
||||
}
|
||||
}
|
||||
```
|
||||
or just download the `Sudoku.php` file and include it to your project.
|
||||
Make sure to use the namespace `AbcAeffchen\sudoku`.
|
||||
|
||||
How to use
|
||||
------
|
||||
#### Generate a task
|
||||
```
|
||||
use AbcAeffchen\sudoku\Sudoku;
|
||||
$task = Sudoku::generate(9, Sudoku::NORMAL);
|
||||
```
|
||||
Generates a standard 9x9 Sudoku with normal difficulty. You can use the difficulties
|
||||
`VERY_EASY`, `EASY`, `NORMAL`, `MEDIUM`, `HARD`.
|
||||
|
||||
`$task` contains a two dimensional array of integers, where the gaps are set to `null`.
|
||||
You can use
|
||||
```
|
||||
list($task,$solution) = Sudoku::generateWithSolution(9, Sudoku::NORMAL)
|
||||
```
|
||||
to generate a task and a possible solution. Maybe to give hints?
|
||||
|
||||
You can reproduce the Sudoku by providing a seed.
|
||||
```
|
||||
$seed = 0;
|
||||
$task = Sudoku::generate(9, Sudoku::NORMAL, $seed);
|
||||
```
|
||||
This way cou could store a seed seed and reproduce the task at any time.
|
||||
The seed can be any positive integer.
|
||||
|
||||
#### Check a solution
|
||||
|
||||
You can check a solution by using
|
||||
```
|
||||
if(Sudoku::checkSolution($solution))
|
||||
{
|
||||
echo 'Nice done!';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo 'Try again!';
|
||||
}
|
||||
```
|
||||
|
||||
If you also want to also check if the solution relates to the task, you can just also provide the task like this:
|
||||
```
|
||||
if(Sudoku::checkSolution($solution,$task))
|
||||
...
|
||||
```
|
||||
|
||||
Solve Sudokus
|
||||
----
|
||||
|
||||
This function is used to generate the Sudokus, but you can also use it to solve some you generated by hand (or get it from somewhere else).
|
||||
```
|
||||
$solution = Sudoku::solve($task);
|
||||
```
|
||||
You only have to make sure, that `$task` is a two dimensional int array containing only numbers
|
||||
from 1 to the size and all gaps contain `null`.
|
||||
|
||||
License
|
||||
----
|
||||
Licensed under the LGPL v3.0 License.
|
|
@ -0,0 +1,27 @@
|
|||
{
|
||||
"name": "abcaeffchen/sudoku-php",
|
||||
"description": "Generate random Sudokus of different size and difficulty and check the solution.",
|
||||
"minimum-stability": "stable",
|
||||
"license": "LGPL v3.0",
|
||||
"authors": [
|
||||
{
|
||||
"name": "Alexander Schickedanz (AbcAeffchen)",
|
||||
"email": "abcaeffchen@gmail.com",
|
||||
"role": "Developer"
|
||||
}
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/AbcAeffchen/sudoku-php/issues"
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.5.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "4.8.*"
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"AbcAeffchen\\sudoku\\": ["src/"]
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<phpunit backupGlobals="false"
|
||||
backupStaticAttributes="false"
|
||||
bootstrap="vendor/autoload.php"
|
||||
colors="true"
|
||||
convertErrorsToExceptions="true"
|
||||
convertNoticesToExceptions="true"
|
||||
convertWarningsToExceptions="true"
|
||||
processIsolation="false"
|
||||
stopOnFailure="false"
|
||||
syntaxCheck="false">
|
||||
<testsuites>
|
||||
<testsuite name="sudoku-php Tests">
|
||||
<directory suffix=".php">./tests/</directory>
|
||||
</testsuite>
|
||||
</testsuites>
|
||||
</phpunit>
|
|
@ -0,0 +1,377 @@
|
|||
<?php
|
||||
/**
|
||||
* sudoku-php
|
||||
*
|
||||
* @licence GNU LGPL v3.0 - For details have a look at the LICENSE file
|
||||
* @copyright 2016 Alexander Schickedanz
|
||||
* @link https://github.com/AbcAeffchen/sudoku-php
|
||||
* @author Alexander Schickedanz (AbcAeffchen) <abcaeffchen@gmail.com>
|
||||
*/
|
||||
namespace AbcAeffchen\sudoku;
|
||||
//use AbcAeffchen\sudoku\Sudoku;
|
||||
|
||||
class Sudoku
|
||||
{
|
||||
|
||||
const VERY_EASY = 0;
|
||||
const EASY = 5;
|
||||
const NORMAL = 10;
|
||||
const MEDIUM = 15;
|
||||
const HARD = 20;
|
||||
|
||||
private static $blockSizes = [4 => 2, 9 => 3, 16 => 4, 25 => 5, 36 => 6];
|
||||
private static $dimensions = [4, 9, 16, 25, 36];
|
||||
|
||||
/**
|
||||
* Solves the Sudoku.
|
||||
*
|
||||
* @param array $sudoku
|
||||
* @param bool $checkInput If true, the input gets checked for a valid Sudoku array, i.e.
|
||||
* if it's a two dimensional square array containing only int and
|
||||
* null values
|
||||
* @return array|false Returns the solution or false if the sudoku is not solvable.
|
||||
* @throws \InvalidArgumentException
|
||||
*/
|
||||
public static function solve(array $sudoku, $checkInput = false)
|
||||
{
|
||||
if($checkInput && !self::checkInput($sudoku))
|
||||
{
|
||||
throw new \InvalidArgumentException('The input is no valid Sudoku array.');
|
||||
}
|
||||
|
||||
return self::recursive_solve($sudoku, count($sudoku));
|
||||
}
|
||||
|
||||
private static function recursive_solve(array $sudoku, $size, $row = 0, $col = 0)
|
||||
{
|
||||
do
|
||||
{
|
||||
while( $sudoku[$row][$col] !== null )
|
||||
{
|
||||
if(!self::nextCoordinates($size,$row,$col))
|
||||
return $sudoku;
|
||||
}
|
||||
|
||||
$possibilities = self::getPossibilities($sudoku, $size, $row, $col);
|
||||
$numPos = count($possibilities);
|
||||
if($numPos === 0)
|
||||
return false;
|
||||
|
||||
if($numPos === 1)
|
||||
$sudoku[$row][$col] = reset($possibilities);
|
||||
else
|
||||
break;
|
||||
|
||||
} while(true);
|
||||
|
||||
self::array_shuffle($possibilities);
|
||||
$nextRow = $row;
|
||||
$nextCol = $col;
|
||||
self::nextCoordinates($size,$nextRow,$nextCol); // cannot return false here.
|
||||
foreach($possibilities as $possibility)
|
||||
{
|
||||
$sudoku[$row][$col] = $possibility;
|
||||
$res = self::recursive_solve($sudoku,$size,$nextRow,$nextCol);
|
||||
if($res !== false)
|
||||
return $res;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private static function nextCoordinates($size, &$row, &$col)
|
||||
{
|
||||
$row++;
|
||||
if( $row >= $size )
|
||||
{
|
||||
$row = 0;
|
||||
$col++;
|
||||
if( $col >= $size )
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
private static function getPossibilities(array &$sudoku, $size, $row, $col)
|
||||
{
|
||||
$possibilities = range(1,$size);
|
||||
// check row and col
|
||||
for($i = 0; $i < $size; $i++)
|
||||
{
|
||||
if($sudoku[$row][$i] !== null)
|
||||
unset($possibilities[$sudoku[$row][$i] - 1]);
|
||||
if($sudoku[$i][$col] !== null)
|
||||
unset($possibilities[$sudoku[$i][$col] - 1]);
|
||||
}
|
||||
|
||||
// check block
|
||||
$jumpRow = $row % self::$blockSizes[$size];
|
||||
$jumpCol = $col % self::$blockSizes[$size];
|
||||
$blockR = $row - $jumpRow;
|
||||
$blockC = $col - $jumpCol;
|
||||
|
||||
for($blockRow = 0; $blockRow < self::$blockSizes[$size]; $blockRow++)
|
||||
{
|
||||
if($blockRow === $jumpRow)
|
||||
continue;
|
||||
|
||||
for($blockCol = 0; $blockCol < self::$blockSizes[$size]; $blockCol++)
|
||||
{
|
||||
if($blockCol === $jumpCol || $sudoku[$blockR + $blockRow][$blockC + $blockCol] === null)
|
||||
continue;
|
||||
|
||||
unset($possibilities[$sudoku[$blockR + $blockRow][$blockC + $blockCol] - 1]);
|
||||
}
|
||||
}
|
||||
|
||||
return array_values($possibilities);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param int $size The size of the Sudoku. Notice: The size have to be one of the
|
||||
* following: 4, 9, 16, 25, 36.
|
||||
* @param int $difficulty
|
||||
* @param int|null $seed
|
||||
* @return array|false
|
||||
* @throws \InvalidArgumentException
|
||||
*/
|
||||
public static function generateWithSolution($size, $difficulty, $seed = null)
|
||||
{
|
||||
// check inputs
|
||||
if(!in_array($size,self::$dimensions,true)
|
||||
|| in_array($difficulty,range(0,5),true) // todo
|
||||
|| ($seed !== null && !is_int($seed)) )
|
||||
throw new \InvalidArgumentException('Invalid input');
|
||||
|
||||
// initialize random generator
|
||||
if($seed === null)
|
||||
$seed = time();
|
||||
|
||||
mt_srand($seed + $difficulty * 17);
|
||||
|
||||
// select blocks to fill randomly
|
||||
$cols = range(0, self::$blockSizes[$size] - 1);
|
||||
self::array_shuffle($cols);
|
||||
|
||||
// create empty sudoku
|
||||
$sudoku = array_fill(0, $size, array_fill(0, $size, null));
|
||||
$values = range(1, $size);
|
||||
|
||||
// fill randomly one block in each row (of blocks)
|
||||
for($row = 0; $row < self::$blockSizes[$size]; $row += self::$blockSizes[$size])
|
||||
{
|
||||
self::array_shuffle($values);
|
||||
for($blockRows = 0; $blockRows < self::$blockSizes[$size]; $blockRows++)
|
||||
{
|
||||
for($blockCols = 0; $blockCols < self::$blockSizes[$size]; $blockCols++)
|
||||
{
|
||||
$sudoku[$row * self::$blockSizes[$size] + $blockRows][$cols[$row] * self::$blockSizes[$size] + $blockCols] = $values[$blockRows * self::$blockSizes[$size] + $blockCols];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// fill the gaps
|
||||
$solution = self::solve($sudoku);
|
||||
$task = $solution;
|
||||
// make new gaps
|
||||
$numFields = pow($size, 2);
|
||||
$gapFields = range(0,$numFields - 1);
|
||||
self::array_shuffle($gapFields);
|
||||
|
||||
switch($difficulty)
|
||||
{
|
||||
case self::VERY_EASY:
|
||||
$min = floor($numFields * 0.43);
|
||||
$max = ceil($numFields * 0.50);
|
||||
break;
|
||||
case self::EASY:
|
||||
$min = floor($numFields * 0.37);
|
||||
$max = ceil($numFields * 0.43);
|
||||
break;
|
||||
case self::NORMAL:
|
||||
$min = floor($numFields * 0.30);
|
||||
$max = ceil($numFields * 0.37);
|
||||
break;
|
||||
case self::MEDIUM:
|
||||
$min = floor($numFields * 0.26);
|
||||
$max = ceil($numFields * 0.30);
|
||||
break;
|
||||
case self::HARD:
|
||||
// break;
|
||||
default:
|
||||
$min = floor($numFields * 0.25);
|
||||
$max = ceil($numFields * 0.27);
|
||||
}
|
||||
|
||||
$numGapFields = $numFields - mt_rand($min,$max);
|
||||
|
||||
for($i = 0; $i < $numGapFields; $i++)
|
||||
{
|
||||
$row = $gapFields[$i] % $size;
|
||||
$col = ($gapFields[$i] - $row) / $size;
|
||||
$task[$row][$col] = null;
|
||||
}
|
||||
|
||||
return [$task,$solution];
|
||||
}
|
||||
|
||||
/**
|
||||
* Wrapper that calls Sudoku::generateWithSolution, but returns only the task.
|
||||
* @param $size
|
||||
* @param $difficulty
|
||||
* @param null $seed
|
||||
* @return mixed
|
||||
*/
|
||||
public static function generate($size, $difficulty, $seed = null)
|
||||
{
|
||||
list($task,) = self::generateWithSolution($size, $difficulty, $seed);
|
||||
return $task;
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if the input is a valid sudoku solution.
|
||||
*
|
||||
* @param array $solution The solution to be checked
|
||||
* @param array $task The task that should be result in the solution. If provided, it
|
||||
* is checked if the solution relates to the task
|
||||
* @return bool
|
||||
* @throws \InvalidArgumentException
|
||||
*/
|
||||
public static function checkSolution(array $solution, array $task = null)
|
||||
{
|
||||
if(!self::checkInput($solution))
|
||||
{
|
||||
throw new \InvalidArgumentException('Input is no Sudoku array.');
|
||||
}
|
||||
|
||||
$dim = count($solution);
|
||||
|
||||
if($task !== null)
|
||||
{
|
||||
if(count($task) !== $dim)
|
||||
return false;
|
||||
|
||||
for($i = 0; $i < $dim; $i++)
|
||||
{
|
||||
for($j = 0; $j < $dim; $j++)
|
||||
{
|
||||
if($task[$i][$j] !== null && $solution[$i][$j] !== $task[$i][$j])
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// check rows
|
||||
for($row = 0; $row < $dim; $row++)
|
||||
{
|
||||
$valueFound = array_fill(1,$dim,false);
|
||||
for($col = 0; $col < $dim; $col++)
|
||||
{
|
||||
// null check is only needed here
|
||||
if($solution[$row][$col] === null || $valueFound[$solution[$row][$col]] === true)
|
||||
return false;
|
||||
else
|
||||
$valueFound[$solution[$row][$col]] = true;
|
||||
}
|
||||
}
|
||||
|
||||
// check columns
|
||||
for($col = 0; $col < $dim; $col++)
|
||||
{
|
||||
$valueFound = array_fill(1,$dim,false);
|
||||
for($row = 0; $row < $dim; $row++)
|
||||
{
|
||||
if($valueFound[$solution[$row][$col]] === true)
|
||||
return false;
|
||||
else
|
||||
$valueFound[$solution[$row][$col]] = true;
|
||||
}
|
||||
}
|
||||
|
||||
// check blocks
|
||||
$blockSize = self::$blockSizes[$dim];
|
||||
for($row = 0; $row < $dim; $row += $blockSize)
|
||||
{
|
||||
for($col = 0; $col < $dim; $col += $blockSize)
|
||||
{
|
||||
$valueFound = array_fill(1,$dim,false);
|
||||
for($blockRow = 0; $blockRow < $blockSize;$blockRow++)
|
||||
{
|
||||
for($blockCol = 0; $blockCol < $blockSize;$blockCol++)
|
||||
{
|
||||
if($valueFound[$solution[$row+$blockRow][$col+$blockCol]] === true)
|
||||
return false;
|
||||
else
|
||||
$valueFound[$solution[$row+$blockRow][$col+$blockCol]] = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Shuffles an array using the Fisher-Yates-Algorithm and mt_rand(). So it is affected by
|
||||
* the seed set by mt_srand(). This means the result is reproducible.
|
||||
* @param array $array
|
||||
*/
|
||||
private static function array_shuffle(array &$array)
|
||||
{
|
||||
for($i = count($array) - 1; $i > 0; $i--)
|
||||
{
|
||||
$j = mt_rand(0,$i);
|
||||
$temp = $array[$i];
|
||||
$array[$i] = $array[$j];
|
||||
$array[$j] = $temp;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if the input is an actual sudoku. i.e. The input array has two dimensions, is
|
||||
* quadratic and contains only integers between 1 and the number of rows/columns. This
|
||||
* function also casts all non null values to int, such that a valid input containing
|
||||
* stings works fine.
|
||||
*
|
||||
* @param array $inputSudoku
|
||||
* @return bool
|
||||
*/
|
||||
public static function checkInput(array &$inputSudoku)
|
||||
{
|
||||
$rowCount = count($inputSudoku);
|
||||
if(!in_array($rowCount,self::$dimensions,true))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
foreach($inputSudoku as &$row)
|
||||
{
|
||||
// check dimensions
|
||||
if(!is_array($row) || count($row) !== $rowCount)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
// check types
|
||||
foreach($row as &$item)
|
||||
{
|
||||
if($item === null)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
if(!is_int($item))
|
||||
{
|
||||
$item = (int) $item;
|
||||
}
|
||||
if($item < 1 || $item > $rowCount)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,198 @@
|
|||
<?php
|
||||
|
||||
require __DIR__ . '/../vendor/autoload.php';
|
||||
|
||||
use AbcAeffchen\sudoku\Sudoku;
|
||||
|
||||
/**
|
||||
* @author Alexander Schickedanz (AbcAeffchen) <abcaeffchen@gmail.com>
|
||||
*/
|
||||
class SudokuTest extends PHPUnit_Framework_TestCase
|
||||
{
|
||||
|
||||
public function testCheckInput()
|
||||
{
|
||||
// should be valid
|
||||
|
||||
$valid1 = [[1,2,3,4],
|
||||
[3,4,1,2],
|
||||
[2,3,null,1],
|
||||
[4,1,2,3]];
|
||||
|
||||
static::assertTrue(Sudoku::checkInput($valid1));
|
||||
|
||||
$valid2 = [['1','2','3','4'],
|
||||
['3','4','1','2'],
|
||||
['2','3','4','1'],
|
||||
['4','1','2','3']];
|
||||
|
||||
static::assertTrue(Sudoku::checkInput($valid2));
|
||||
|
||||
foreach($valid2 as $row)
|
||||
{
|
||||
static::assertContainsOnly('int', $row);
|
||||
}
|
||||
|
||||
// should be invalid
|
||||
$invalid = [[1,2,3,4],
|
||||
[3,4,1,2],
|
||||
[2,5,null,1],
|
||||
[4,1,2,3]];
|
||||
|
||||
static::assertFalse(Sudoku::checkInput($invalid));
|
||||
|
||||
$invalid = [[1,2,3,4],
|
||||
[3,4,'x',2],
|
||||
[2,5,null,1],
|
||||
[4,1,2,3]];
|
||||
|
||||
static::assertFalse(Sudoku::checkInput($invalid));
|
||||
|
||||
$invalid = [[1,2,3,4],
|
||||
[3,4,1.1,2],
|
||||
[2,5,null,1],
|
||||
[4,1,2,3]];
|
||||
|
||||
static::assertFalse(Sudoku::checkInput($invalid));
|
||||
|
||||
// different sizes
|
||||
$sudokus = [];
|
||||
foreach([1,4,9,16,25,36,49] as $size)
|
||||
{
|
||||
$row = array_fill(0,$size,1);
|
||||
$sudokus[$size] = array_fill(0,$size,$row);
|
||||
}
|
||||
|
||||
static::assertFalse(Sudoku::checkInput($sudokus[1]));
|
||||
static::assertFalse(Sudoku::checkInput($sudokus[49]));
|
||||
static::assertTrue(Sudoku::checkInput($sudokus[4]));
|
||||
static::assertTrue(Sudoku::checkInput($sudokus[9]));
|
||||
static::assertTrue(Sudoku::checkInput($sudokus[16]));
|
||||
static::assertTrue(Sudoku::checkInput($sudokus[36]));
|
||||
}
|
||||
|
||||
public function testCheckSolution()
|
||||
{
|
||||
// Valid Sudokus
|
||||
$valid1 = [[1,2,3,4],
|
||||
[3,4,1,2],
|
||||
[2,3,4,1],
|
||||
[4,1,2,3]];
|
||||
static::assertTrue(Sudoku::checkSolution($valid1));
|
||||
|
||||
$valid2 = [[5,3,4,6,7,8,9,1,2],
|
||||
[6,7,2,1,9,5,3,4,8],
|
||||
[1,9,8,3,4,2,5,6,7],
|
||||
[8,5,9,7,6,1,4,2,3],
|
||||
[4,2,6,8,5,3,7,9,1],
|
||||
[7,1,3,9,2,4,8,5,6],
|
||||
[9,6,1,5,3,7,2,8,4],
|
||||
[2,8,7,4,1,9,6,3,5],
|
||||
[3,4,5,2,8,6,1,7,9]];
|
||||
static::assertTrue(Sudoku::checkSolution($valid2));
|
||||
|
||||
static::assertFalse(Sudoku::checkSolution($valid1,$valid2));
|
||||
$task1 = [[5,3,4,6,7,8,9,1,2],
|
||||
[6,7,2,1,9,5,3,null,null],
|
||||
[1,9,8,3,4,2,5,6,7],
|
||||
[8,5,9,7,6,1,4,2,3],
|
||||
[4,2,6,8,5,3,7,9,1],
|
||||
[7,1,3,9,2,4,8,5,6],
|
||||
[9,6,1,5,3,7,2,8,4],
|
||||
[2,8,7,4,1,9,6,3,5],
|
||||
[3,4,5,2,8,6,1,7,9]];
|
||||
$task2 = [[5,3,4,6,7,8,9,1,2],
|
||||
[6,7,2,1,9,5,3,null,null],
|
||||
[1,9,8,3,4,2,5,6,7],
|
||||
[8,5,9,7,6,1,4,2,3],
|
||||
[4,2,6,8,5,3,7,9,1],
|
||||
[7,1,3,9,2,4,8,5,6],
|
||||
[9,6,1,5,3,7,2,4,8],
|
||||
[2,8,7,4,1,9,6,3,5],
|
||||
[3,4,5,2,8,6,1,7,9]];
|
||||
|
||||
static::assertTrue(Sudoku::checkSolution($valid2,$task1));
|
||||
static::assertFalse(Sudoku::checkSolution($valid2,$task2));
|
||||
|
||||
// invalid Sudokus
|
||||
$invalid1 = [[1,3,2,4],
|
||||
[3,4,1,2],
|
||||
[2,3,4,1],
|
||||
[4,1,2,3]];
|
||||
static::assertFalse(Sudoku::checkSolution($invalid1));
|
||||
$invalid2 = [[1,null,3,4],
|
||||
[3,4,1,2],
|
||||
[2,3,4,1],
|
||||
[4,1,2,3]];
|
||||
static::assertFalse(Sudoku::checkSolution($invalid2));
|
||||
|
||||
}
|
||||
|
||||
public function testSolve()
|
||||
{
|
||||
|
||||
$sudoku1 = [[1,2,3,null],
|
||||
[3,4,null,2],
|
||||
[2,null,4,1],
|
||||
[null,1,2,3]];
|
||||
$solution1 = [[1,2,3,4],
|
||||
[3,4,1,2],
|
||||
[2,3,4,1],
|
||||
[4,1,2,3]];
|
||||
|
||||
static::assertSame($solution1, Sudoku::solve($sudoku1));
|
||||
|
||||
$sudoku2 = [[null,null,null,null,null,null,null,null,null],
|
||||
[null,7,2,1,9,5,3,4,8],
|
||||
[null,9,8,3,4,2,5,6,7],
|
||||
[null,5,9,7,6,1,4,2,3],
|
||||
[null,2,6,8,5,3,7,9,1],
|
||||
[null,1,3,9,2,4,8,5,6],
|
||||
[null,6,1,5,3,7,2,8,4],
|
||||
[null,8,7,4,1,9,6,3,5],
|
||||
[null,4,5,2,8,6,1,7,9]];
|
||||
$solution2 = [[5,3,4,6,7,8,9,1,2],
|
||||
[6,7,2,1,9,5,3,4,8],
|
||||
[1,9,8,3,4,2,5,6,7],
|
||||
[8,5,9,7,6,1,4,2,3],
|
||||
[4,2,6,8,5,3,7,9,1],
|
||||
[7,1,3,9,2,4,8,5,6],
|
||||
[9,6,1,5,3,7,2,8,4],
|
||||
[2,8,7,4,1,9,6,3,5],
|
||||
[3,4,5,2,8,6,1,7,9]];
|
||||
|
||||
static::assertSame($solution2, Sudoku::solve($sudoku2));
|
||||
|
||||
static::assertFalse(Sudoku::solve([[null,null,null,2],
|
||||
[null,4,null,null],
|
||||
[null,3,null,null],
|
||||
[null,1,null,null]]));
|
||||
}
|
||||
|
||||
public function testGenerate()
|
||||
{
|
||||
// $sudoku get randomly generated
|
||||
$sudoku = Sudoku::generate(9, Sudoku::NORMAL);
|
||||
|
||||
// it is a sudoku, since:
|
||||
// - the input is valid
|
||||
static::assertTrue(Sudoku::checkInput($sudoku));
|
||||
// - it is not a solution
|
||||
static::assertFalse(Sudoku::checkSolution($sudoku));
|
||||
// - but it is solvable
|
||||
static::assertNotFalse(Sudoku::solve($sudoku));
|
||||
|
||||
// check reproducibility
|
||||
static::assertSame([[6,null,null,null,8,9,null,2,null],
|
||||
[5,null,7,4,null,2,null,1,null],
|
||||
[2,4,null,6,null,null,8,null,3],
|
||||
[3,6,null,1,null,null,null,null,null],
|
||||
[null,5,null,null,null,null,null,null,null],
|
||||
[4,9,null,3,null,null,null,null,null],
|
||||
[null,null,null,2,null,null,null,null,9],
|
||||
[null,2,4,null,null,1,5,3,null],
|
||||
[null,null,null,null,null,null,2,null,7]],Sudoku::generate(9, Sudoku::NORMAL, 0));
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,33 @@
|
|||
---
|
||||
engines:
|
||||
csslint:
|
||||
enabled: true
|
||||
duplication:
|
||||
enabled: true
|
||||
config:
|
||||
languages:
|
||||
- ruby
|
||||
- javascript
|
||||
- python
|
||||
- php
|
||||
eslint:
|
||||
enabled: true
|
||||
fixme:
|
||||
enabled: true
|
||||
phpmd:
|
||||
enabled: true
|
||||
ratings:
|
||||
paths:
|
||||
- "**.css"
|
||||
- "**.inc"
|
||||
- "**.js"
|
||||
- "**.jsx"
|
||||
- "**.module"
|
||||
- "**.php"
|
||||
- "**.py"
|
||||
- "**.rb"
|
||||
exclude_paths:
|
||||
- tests/
|
||||
- vendor/
|
||||
- SampleApp_RoadPlanner/
|
||||
- doc/
|
|
@ -0,0 +1,2 @@
|
|||
--exclude-exts=.min.css
|
||||
--ignore=adjoining-classes,box-model,ids,order-alphabetical,unqualified-attributes
|
|
@ -0,0 +1 @@
|
|||
**/*{.,-}min.js
|
|
@ -0,0 +1,213 @@
|
|||
ecmaFeatures:
|
||||
modules: true
|
||||
jsx: true
|
||||
|
||||
env:
|
||||
amd: true
|
||||
browser: true
|
||||
es6: true
|
||||
jquery: true
|
||||
node: true
|
||||
|
||||
# http://eslint.org/docs/rules/
|
||||
rules:
|
||||
# Possible Errors
|
||||
comma-dangle: [2, never]
|
||||
no-cond-assign: 2
|
||||
no-console: 0
|
||||
no-constant-condition: 2
|
||||
no-control-regex: 2
|
||||
no-debugger: 2
|
||||
no-dupe-args: 2
|
||||
no-dupe-keys: 2
|
||||
no-duplicate-case: 2
|
||||
no-empty: 2
|
||||
no-empty-character-class: 2
|
||||
no-ex-assign: 2
|
||||
no-extra-boolean-cast: 2
|
||||
no-extra-parens: 0
|
||||
no-extra-semi: 2
|
||||
no-func-assign: 2
|
||||
no-inner-declarations: [2, functions]
|
||||
no-invalid-regexp: 2
|
||||
no-irregular-whitespace: 2
|
||||
no-negated-in-lhs: 2
|
||||
no-obj-calls: 2
|
||||
no-regex-spaces: 2
|
||||
no-sparse-arrays: 2
|
||||
no-unexpected-multiline: 2
|
||||
no-unreachable: 2
|
||||
use-isnan: 2
|
||||
valid-jsdoc: 0
|
||||
valid-typeof: 2
|
||||
|
||||
# Best Practices
|
||||
accessor-pairs: 2
|
||||
block-scoped-var: 0
|
||||
complexity: [2, 6]
|
||||
consistent-return: 0
|
||||
curly: 0
|
||||
default-case: 0
|
||||
dot-location: 0
|
||||
dot-notation: 0
|
||||
eqeqeq: 2
|
||||
guard-for-in: 2
|
||||
no-alert: 2
|
||||
no-caller: 2
|
||||
no-case-declarations: 2
|
||||
no-div-regex: 2
|
||||
no-else-return: 0
|
||||
no-empty-label: 2
|
||||
no-empty-pattern: 2
|
||||
no-eq-null: 2
|
||||
no-eval: 2
|
||||
no-extend-native: 2
|
||||
no-extra-bind: 2
|
||||
no-fallthrough: 2
|
||||
no-floating-decimal: 0
|
||||
no-implicit-coercion: 0
|
||||
no-implied-eval: 2
|
||||
no-invalid-this: 0
|
||||
no-iterator: 2
|
||||
no-labels: 0
|
||||
no-lone-blocks: 2
|
||||
no-loop-func: 2
|
||||
no-magic-number: 0
|
||||
no-multi-spaces: 0
|
||||
no-multi-str: 0
|
||||
no-native-reassign: 2
|
||||
no-new-func: 2
|
||||
no-new-wrappers: 2
|
||||
no-new: 2
|
||||
no-octal-escape: 2
|
||||
no-octal: 2
|
||||
no-proto: 2
|
||||
no-redeclare: 2
|
||||
no-return-assign: 2
|
||||
no-script-url: 2
|
||||
no-self-compare: 2
|
||||
no-sequences: 0
|
||||
no-throw-literal: 0
|
||||
no-unused-expressions: 2
|
||||
no-useless-call: 2
|
||||
no-useless-concat: 2
|
||||
no-void: 2
|
||||
no-warning-comments: 0
|
||||
no-with: 2
|
||||
radix: 2
|
||||
vars-on-top: 0
|
||||
wrap-iife: 2
|
||||
yoda: 0
|
||||
|
||||
# Strict
|
||||
strict: 0
|
||||
|
||||
# Variables
|
||||
init-declarations: 0
|
||||
no-catch-shadow: 2
|
||||
no-delete-var: 2
|
||||
no-label-var: 2
|
||||
no-shadow-restricted-names: 2
|
||||
no-shadow: 0
|
||||
no-undef-init: 2
|
||||
no-undef: 0
|
||||
no-undefined: 0
|
||||
no-unused-vars: 0
|
||||
no-use-before-define: 0
|
||||
|
||||
# Node.js and CommonJS
|
||||
callback-return: 2
|
||||
global-require: 2
|
||||
handle-callback-err: 2
|
||||
no-mixed-requires: 0
|
||||
no-new-require: 0
|
||||
no-path-concat: 2
|
||||
no-process-exit: 2
|
||||
no-restricted-modules: 0
|
||||
no-sync: 0
|
||||
|
||||
# Stylistic Issues
|
||||
array-bracket-spacing: 0
|
||||
block-spacing: 0
|
||||
brace-style: 0
|
||||
camelcase: 0
|
||||
comma-spacing: 0
|
||||
comma-style: 0
|
||||
computed-property-spacing: 0
|
||||
consistent-this: 0
|
||||
eol-last: 0
|
||||
func-names: 0
|
||||
func-style: 0
|
||||
id-length: 0
|
||||
id-match: 0
|
||||
indent: 0
|
||||
jsx-quotes: 0
|
||||
key-spacing: 0
|
||||
linebreak-style: 0
|
||||
lines-around-comment: 0
|
||||
max-depth: 0
|
||||
max-len: 0
|
||||
max-nested-callbacks: 0
|
||||
max-params: 0
|
||||
max-statements: [2, 30]
|
||||
new-cap: 0
|
||||
new-parens: 0
|
||||
newline-after-var: 0
|
||||
no-array-constructor: 0
|
||||
no-bitwise: 0
|
||||
no-continue: 0
|
||||
no-inline-comments: 0
|
||||
no-lonely-if: 0
|
||||
no-mixed-spaces-and-tabs: 0
|
||||
no-multiple-empty-lines: 0
|
||||
no-negated-condition: 0
|
||||
no-nested-ternary: 0
|
||||
no-new-object: 0
|
||||
no-plusplus: 0
|
||||
no-restricted-syntax: 0
|
||||
no-spaced-func: 0
|
||||
no-ternary: 0
|
||||
no-trailing-spaces: 0
|
||||
no-underscore-dangle: 0
|
||||
no-unneeded-ternary: 0
|
||||
object-curly-spacing: 0
|
||||
one-var: 0
|
||||
operator-assignment: 0
|
||||
operator-linebreak: 0
|
||||
padded-blocks: 0
|
||||
quote-props: 0
|
||||
quotes: 0
|
||||
require-jsdoc: 0
|
||||
semi-spacing: 0
|
||||
semi: 0
|
||||
sort-vars: 0
|
||||
space-after-keywords: 0
|
||||
space-before-blocks: 0
|
||||
space-before-function-paren: 0
|
||||
space-before-keywords: 0
|
||||
space-in-parens: 0
|
||||
space-infix-ops: 0
|
||||
space-return-throw-case: 0
|
||||
space-unary-ops: 0
|
||||
spaced-comment: 0
|
||||
wrap-regex: 0
|
||||
|
||||
# ECMAScript 6
|
||||
arrow-body-style: 0
|
||||
arrow-parens: 0
|
||||
arrow-spacing: 0
|
||||
constructor-super: 0
|
||||
generator-star-spacing: 0
|
||||
no-arrow-condition: 0
|
||||
no-class-assign: 0
|
||||
no-const-assign: 0
|
||||
no-dupe-class-members: 0
|
||||
no-this-before-super: 0
|
||||
no-var: 0
|
||||
object-shorthand: 0
|
||||
prefer-arrow-callback: 0
|
||||
prefer-const: 0
|
||||
prefer-reflect: 0
|
||||
prefer-spread: 0
|
||||
prefer-template: 0
|
||||
require-yield: 0
|
|
@ -0,0 +1,5 @@
|
|||
vendor/
|
||||
.DS_Store
|
||||
test.php
|
||||
test.graphml
|
||||
build
|
|
@ -0,0 +1,19 @@
|
|||
env:
|
||||
global:
|
||||
- CC_TEST_REPORTER_ID=af2053e44f0ad6a8e045593ee7bca05ea7e95cefe142ac82770729b481003779
|
||||
- GIT_COMMITTED_AT=$(if [ "$TRAVIS_PULL_REQUEST" == "false" ]; then git log -1 --pretty=format:%ct; else git log -1 --skip 1 --pretty=format:%ct; fi)
|
||||
language: php
|
||||
php:
|
||||
- '5.4'
|
||||
- '5.6'
|
||||
- '7.0'
|
||||
- '7.1'
|
||||
- '7.2'
|
||||
before_script:
|
||||
- composer install --no-dev
|
||||
- curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
|
||||
- chmod +x ./cc-test-reporter
|
||||
- ./cc-test-reporter before-build
|
||||
script:
|
||||
- "phpunit --coverage-text --coverage-clover build/logs/clover.xml"
|
||||
- if [ "$TRAVIS_PULL_REQUEST" == "false" ]; then ./cc-test-reporter after-build -t clover --exit-code $TRAVIS_TEST_RESULT; fi
|
|
@ -0,0 +1,9 @@
|
|||
FROM composer:latest
|
||||
|
||||
ADD . /app
|
||||
|
||||
RUN php --version
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
RUN composer install --no-interaction --no-plugins --no-scripts --prefer-dist
|
|
@ -0,0 +1,21 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2016
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
|
@ -0,0 +1,257 @@
|
|||
# GraphDS
|
||||
[![Code Climate](https://codeclimate.com/github/algb12/GraphDS/badges/gpa.svg)](https://codeclimate.com/github/algb12/GraphDS)
|
||||
[![Test Coverage](https://api.codeclimate.com/v1/badges/32f8e63ddde4282fd14a/test_coverage)](https://codeclimate.com/github/AchoArnold/GraphDS/test_coverage)
|
||||
|
||||
## What is GraphDS and why was it created?
|
||||
GraphDS is an object-oriented, lightweight implementation of the graph data-structure in PHP.
|
||||
|
||||
In a project of mine, I needed a way to represent graphs in PHP. None of the existing solutions suited me, so I have decided to write my own graph library from scratch. The original implementation used in my project contains additional functions for graph traversal and refactoring of graphs, but these functions are specific to my project.
|
||||
|
||||
This version of GraphDS used to be a toned-down version of my original implementation, but has now grown into a separate project. It makes use of OOP practices to allow on-demand loading of algorithms, making GraphDS fast, extendable and lightweight at the same time.
|
||||
|
||||
GraphDS requires at least PHP version 5.3. Unit tests can be run from PHP 5.4 onwards. Although compatibility with older PHP versions tries to be maintained, unit tests are only run officially for the last 3 major PHP versions.
|
||||
|
||||
## How to install
|
||||
Simply require the Composer package. In the directory of your project, run:
|
||||
|
||||
`composer require algb12/graph-ds`
|
||||
|
||||
## What is it even useful for?
|
||||
Graphs are useful for many things, ranging from transportation to social networks. In this regard, GraphDS makes working with graphs in PHP a lot easier.
|
||||
|
||||
Please see the RoadPlanner sample app in the `SampleApp_RoadPlanner` directory to find a primitive application of GraphDS. The RoadPlanner app calculates the shortest road between two cities, using Dijkstra's, multi-path Dijkstra's and the Floyd-Warshall algorithm. Computed paths are represented visually on the source map. To test GraphDS out with your own map, take a look at the `roads.json` file in `src/data`, where you can add in your own map/"country".
|
||||
|
||||
## Basic syntax
|
||||
GraphDS has functions to create vertices and edges for both, undirected and directed graphs. The user does not need to worry about which type of edge/vertex is created, as this is all abstracted away under the relevant classes.
|
||||
|
||||
The following is a quick primer on the usage of GraphDS:
|
||||
|
||||
### Directed and undirected graphs
|
||||
In graph theory, there are two main types of graphs. On one hand, there are directed graphs. A directed graph has vertices connected with by one-way edges. Think of a edges of a directed graph as a one-way lanes – you can start at any vertex, but can then only follow along the directionality of the edge to the neighboring vertex.
|
||||
|
||||
On the other hand, there are undirected graphs. They allow you to get from any vertex to any neighbor, as in undirected graphs, there is no concept of ancestors and descendants. Think of edges of an undirected graph as normal roads, with traffic in both directions. Vertices are simply connected with each other by directionless edges.
|
||||
|
||||
The following shows how to initialize a directed graph:
|
||||
|
||||
```
|
||||
<?php
|
||||
|
||||
$g = new DirectedGraph();
|
||||
```
|
||||
|
||||
Note that a graph is an object, and any vertices and edges are contained within this object.
|
||||
|
||||
In a similar manner, an undirected graph can be initialized, by creating an instance of the `UndirectedGraph` object in place of `DirectedGraph`.
|
||||
|
||||
### Transpose graphs
|
||||
The _transpose graph_ of a directed graph is when all edges `(u, v)` become `(v, u)`, where `u` and `v` are vertices connected by a directed edge.
|
||||
|
||||
To get the transpose of a directed graph `$g` as a `DirectedGraph` object, call:
|
||||
|
||||
`$g->getTranspose()`
|
||||
|
||||
This may be useful for algorithms which require graph transposition, and now, GraphDS provides a method to achieve it.
|
||||
|
||||
### Vertices
|
||||
In any graph, all vertices can be accessed through the `$g->vertices` array, where `$g` is an instance of a graph object. So, to access vertex `A`, the syntax would be `$g->vertices['A']`.
|
||||
|
||||
#### Adding and removing vertices
|
||||
Adding and removing vertices can be accomplished using the `$g->addVertex('v')` and `$g->removeVertex('v')` methods, where `v` is the name of the vertex to be added/removed.
|
||||
|
||||
#### Getting and setting the value of a vertex
|
||||
To get the value of a vertex, `$g->vertices['v']->getValue()` can be called. To set the value of a vertex, `$g->vertices['v']->setValue(value)` can be called, where `value` can be any storable data-type.
|
||||
|
||||
#### Getting neighbors of a vertex
|
||||
Getting the neighbors of a vertex in an undirected graph can be accomplished by using `$g->vertices['v']->getNeighbors()`.
|
||||
|
||||
In a directed graph, `$g->vertices['v']->getInNeighbors()` returns an array of all vertices connected by an incoming edge, whereas `$g->vertices['v']->getOutNeighbors()` returns an array of all vertices connected by an outgoing edge from the current vertex. `$g->vertices['v']->getNeighbors()` returns an array of two subarrays, `in` and `out`, for incoming and outgoing vertices, respectively.
|
||||
|
||||
#### Indegrees and outdegrees
|
||||
The indegree and outdegree of a vertex is simply how many incoming and outgoing vertices are connected to a vertex, respectively.
|
||||
|
||||
Indegrees and outdegrees only apply to directed graphs, since undirected graphs cannot have incoming or outgoing edges.
|
||||
|
||||
The indegree and outdegree of a vertex can be easily determined using `$g->vertices['v']->getIndegree()` and `$g->vertices['v']->getOutdegree()`.
|
||||
|
||||
#### Asserting vertex adjacency
|
||||
In any graph, asserting that vertex `B` is adjacent to `A` can be done by calling `$g->vertices['A']->adjacent('B')`. If the vertex is adjacent, then `true` is returned, otherwise, `false`. Note that in a directed graph, a vertex will be considered as adjacent using the `adjacent` method, no matter whether it is incoming or outgoing.
|
||||
|
||||
In a directed graph, inward and outward adjacency can be asserted by using `$g->vertices['A']->inAdjacent('B')` and `$g->vertices['A']->outAdjacent('B')`, respectively.
|
||||
|
||||
### Edges
|
||||
Edges are the objects that connect vertices together. Note that in GraphDS, edges are stored as separate objects to the vertices, meaning that they exist independently. It is the GraphDS core that manages the relationship between edges and vertices within the graph.
|
||||
|
||||
Edges can be accessed easily via `$g->edge('A', 'B')`, where `A` and `B` are the vertices connected by the edge. Note that in an undirected graph, `$g->edge('A', 'B')` and `$g->edge('B', 'A')` are equivalent, whereas in directed graphs, they represent 2 distinct edges.
|
||||
|
||||
#### Real and virtual edges
|
||||
In GraphDS, edges are stored as objects, and each object takes up memory space. To reduce the spatial footprint, the `edge` function was introduced in version 1.0.3, which returns both, real edges and "virtual" edges.
|
||||
|
||||
Real edges are actual `DirectedEdge` or `UndirectedEdge` objects, whereas virtual edges are _not_ actually edge objects, but merely a result of the `edge` function returning edge `('A', 'B')`, even when `('B', 'A')` is requested. A virtual edge can be modified just like a real edge. Virtual edges are not part of directed graphs, since every directed edge is distinct.
|
||||
|
||||
This is desired behavior, as in undirected graphs, edge `('A', 'B')` would be equivalent to `('B', 'A')`. Virtual edges also eliminate the problem of edge duplication in undirected graphs, and therefore also reduce the memory GraphDS takes up.
|
||||
|
||||
#### Adding and removing edges
|
||||
To add an edge, simply call `$g->addEdge('A', 'B', 'value')`, where `A` and `B` are the vertices in graph `$g` to be connected by this edge, and `value` is an optional value of the edge. The value could be used as the weight of the edge. The default value of edges is `null`.
|
||||
|
||||
Note that in undirected graphs, this will result in the "virtual" edge `('B', 'A')` being returned, even if `('A', 'B')` is requested.
|
||||
|
||||
Removing an edge can be accomplished via `$g->removeEdge('A', 'B')`. Due to the behavior of virtual edges, this will remove both, the real edge `('A', 'B')` and the virtual edge `('B', 'A')` in an undirected graph, but only the real edge in a directed graph. In undirected graphs, edge removal is order-agnostic, meaning that regardless whether a real or virtual edge is supplied, the correct edge will still be removed.
|
||||
|
||||
#### Getting and setting the value of an edge
|
||||
To get the value of an edge, `$g->edge('A', 'B')->getValue()` can be called. To set the value of an edge, `$g->edge('A', 'B')->setValue(value)` can be called, where `value` can be any storable data-type.
|
||||
|
||||
## Algorithms
|
||||
Since version 1.0.1, GraphDS has support for algorithms. `GraphDS\Algo` is the namespace for algorithms in GraphDS.
|
||||
|
||||
In GraphDS, algorithms are treated as separate objects modifying the graph. They accept the graph and work on it, but do not impact the graph's core functionality.
|
||||
|
||||
This is what makes GraphDS lean and streamlined, as algorithms only have to be loaded into memory whenever they are needed, as they are not intrinsic to a graph object.
|
||||
|
||||
### Running algorithms
|
||||
1. Any algorithm first has to be "used" by PHP, e.g. `use GraphDS\Algo\Algorithm`
|
||||
2. An new instance of the algorithm on the relevant graph (`$g`) has to be created, e.g. `$a = new Algorithm($g)`
|
||||
3. The algorithm can now be run using `$a->run(args)`, where `args` are arguments which differ from algorithm to algorithm
|
||||
4. Getting the results of an algorithm is done using `$a->get(args)`, where args are arguments which differ from algorithm to algorithm
|
||||
|
||||
The "run-and-get" pragma eases the use of algorithms, as these are the only two public exposed methods an algorithm should have. From now on, the documentation will only refer to the those two methods accept.
|
||||
|
||||
### Writing GraphDS algorithms
|
||||
In order to ease the writing of algorithms, PHP's Standard PHP Library (SPL) provides useful helper classes, such as:
|
||||
- SplQueue: An implementation of a FIFO queue
|
||||
- SplStack: An implementation of a LIFO stack
|
||||
|
||||
These classes greatly simplify the writing of algorithms, such as depth-first search (DFS) and breadth-first search (BFS), which can be found in the directory with the algorithms.
|
||||
|
||||
The following outlines the basic structure of GraphDS algorithms. For the sake of brevity, docblocks have been left out, although it is most recommended to properly document the algorithm:
|
||||
|
||||
```php
|
||||
<?php
|
||||
namespace GraphDS\Algo;
|
||||
|
||||
use GraphDS\Graph\Graph;
|
||||
use GraphDS\Graph\DirectedGraph;
|
||||
use GraphDS\Graph\UndirectedGraph;
|
||||
use InvalidArgumentException;
|
||||
|
||||
// Class defining an algorithm named "Algorithm"
|
||||
class Algorithm
|
||||
{
|
||||
// Reference to the graph
|
||||
public $graph;
|
||||
|
||||
// Any global variables...
|
||||
|
||||
// Constructor accepts a GraphDS graph and validates it
|
||||
public function __construct($graph)
|
||||
{
|
||||
if (!($graph instanceof DirectedGraph) && !($graph instanceof UndirectedGraph)) {
|
||||
throw new InvalidArgumentException(
|
||||
"Algorithm requires a directed or undirected graph"
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
// Running the algorithm
|
||||
public function run(args)
|
||||
{
|
||||
code...
|
||||
}
|
||||
|
||||
// Getting the results of the algorithm
|
||||
public function get(args)
|
||||
{
|
||||
code...
|
||||
}
|
||||
|
||||
// Any private helper methods...
|
||||
}
|
||||
```
|
||||
|
||||
The above, outlined in words again:
|
||||
- Check if graph is actually a graph and use it, otherwise throw `InvalidArgumentException`
|
||||
- `run(args)` executes the algorithm, where `args` are arguments
|
||||
- `get(args)` gets the results of the algorithm, where `args` are arguments
|
||||
|
||||
Do note that the way the results variable is handled is left flexible, as different algorithms may require access to it form different parts of the code.
|
||||
|
||||
### Breadth-first search (BFS)
|
||||
BFS, a path traversal algorithm, is in the class `GraphDS\Algo\BFS`. It visits every vertex in the graph, and goes along the breadth of the graph. As such, level by level, it visits every vertex in the graph.
|
||||
|
||||
- `$bfs->run(root)` accepts `root` as a compulsory argument, this is the name of the starting vertex for the BFS
|
||||
- `$bfs->get()` accepts no arguments. It returns an array, `$arr`, with 3 subarrays:
|
||||
- `$arr['discovered']` (vertices discovered in BFS order)
|
||||
- `$arr['dist']` (the distances of each vertex to the root vertex, in hops)
|
||||
- `$arr['parent']` (each vertex's parent vertex when using BFS)
|
||||
|
||||
### Depth-first search (DFS)
|
||||
DFS, a path traversal algorithm, is in the class `GraphDS\Algo\DFS`. It visits every vertex in the graph, and goes along the depth of the graph. As such, it visits every vertex in the graph, and only moves from one vertex to another vertex once all the vertex's descendants have been visited to their full depth.
|
||||
|
||||
- `$dfs->run(root)` accepts `root` as a compulsory argument, this is the name of the starting vertex for the DFS
|
||||
- `$dfs->get()` accepts no arguments. It returns an array, `arr`, with 3 subarrays:
|
||||
- `$arr['discovered']` (vertices discovered in DFS order)
|
||||
- `$arr['dist']` (the distances of each vertex to the root vertex, in hops)
|
||||
- `$arr['parent']` (each vertex's parent vertex when using DFS)
|
||||
|
||||
### Dijkstra's shortest path algorithm
|
||||
Dijkstra's shortest path algorithm finds the shortest path between a vertex and all other vertices. It is in the class `GraphDS\Algo\Dijkstra`.
|
||||
|
||||
- `$dijkstra->run(start)` accepts `start` as a compulsory argument, this is the name of the vertex from which Dijkstra should start
|
||||
- `$dijkstra->get(dest)` accepts `dest` as a compulsory argument, which is the name of the destination vertex to which the shortest path should be returned. It returns an array, `arr`, with 2 subarrays:
|
||||
- `$arr['path']` (the shortest path to the vertex `dest` from `start`)
|
||||
- `$arr['dist']` (the shortest distances of each vertex to the root vertex, in edge weights)
|
||||
|
||||
### Multi-path Dijkstra's shortest path algorithm
|
||||
Unlike the single-path version, the multi-path Dijkstra's shortest path algorithm finds _all_ the shortest path between a vertex and all other vertices. It is in the class `GraphDS\Algo\DijkstraMulti`.
|
||||
|
||||
- `$dijkstra_mult->run(start)` accepts `start` as a compulsory argument, this is the name of the vertex from which the multi-path Dijkstra should start
|
||||
- `$dijkstra_mult->get(dest)` accepts `dest` as a compulsory argument, which is the destination vertex to which all the shortest paths should be computed. It returns an array, `$arr`, with 2 subarrays:
|
||||
- `$arr['paths']` (an array of all the shortest paths to the vertex `$dest` from `$start`)
|
||||
- `$arr['dist']` (the shortest distances of each vertex to the root vertex, in edge weights)
|
||||
|
||||
### Floyd-Warshall algorithm
|
||||
The Floyd-Warshall algorithm calculates the shortest path between every single vertex in the graph. It is in the class `GraphDS\Algo\FloydWarshall`.
|
||||
|
||||
- `$fw->run()` accepts no arguments, and simply runs then algorithm on the graph
|
||||
- `$fw->get(startVertex, sestVertex)` accepts `startVertex` and `destVertex` as a compulsory argument, which are the start vertex and the destination vertex, respectively, between which the shortest path should be worked out. It returns an array `arr`, with subarrays:
|
||||
- `$arr['path']` (the shortest path to the vertex `$dest` from `start`)
|
||||
- `$arr['dist']` (the shortest distance of the destination vertex to the start vertex, in edge weights)
|
||||
|
||||
### Yen's algorithm
|
||||
Yen's algorithm computes single-source K-shortest loopless paths in the graph. It is in the class `GraphDS\Algo\Yen`.
|
||||
|
||||
- `$yen->run(start, dest, k)` accepts `start` as a compulsory argument, this is the name of the vertex from which Yen should start. Accepts `dest` as a compulsory argument, which is the name of the destination vertex to which the shortest K paths should be returned. Accepts `k` as an optional argument with a default of 3, this is the maximum amount of paths to return.
|
||||
- `$yen->get()` accepts no arguments. It returns a sorted array `arr`, with subarrays:
|
||||
- `$arr[i]['path']` (the path to the vertex `dest` from `start`)
|
||||
- `$arr[i]['dist']` (the distance of the destination vertex to the start vertex, in edge weights)
|
||||
|
||||
## Persistence
|
||||
GraphDS has the ability to export and import graphs using the popular GraphML format. Note that for graph persistence to function correctly, the correct read/write permissions should be set on the server, which is beyond the scope of this README.
|
||||
|
||||
Examples of GraphML files are `graphUndirected.graphml` and `graphDirected.graphml`, both found in this repository.
|
||||
|
||||
### Exporting graphs
|
||||
To export a graph to a GraphML file, use the `GraphDS\Persistence\ExportGraph` class, and run `$e = new ExportGraph($g)`, where `$e` is the graph exporter object, and `$g` is a graph. `$graphml = $e->getGraphML()` sets `$graphml` to the GraphML markup of the graph, and `$e->saveToFile($graphml, 'graph.graphml')` writes this markup to the file `graph.graphml`.
|
||||
|
||||
### Importing graphs
|
||||
To import a graph from a GraphML file, use the `GraphDS\Persistence\ImportGraph` class, and run `$i = new ImportGraph()`, where `$i` is the graph importer object. `$g = $i->fromGraphML('graph.graphml')` sets `$g` to a GraphDS graph object represented by the GraphML markup in the file `graph.graphml`.
|
||||
|
||||
The object `$g` is now a conventional GraphDS, reconstructed from the GraphML markup in the file of `graph.graphml`.
|
||||
|
||||
## Testing
|
||||
This app can be tested locally on php 7.2 using `docker`
|
||||
|
||||
|
||||
1. Build the docker container using the command below
|
||||
|
||||
```bash
|
||||
docker build -t docker-graph-ds .
|
||||
```
|
||||
2. Run php unit inside the docker container using the command below.
|
||||
```bash
|
||||
docker run --rm docker-graph-ds "./vendor/bin/phpunit"
|
||||
```
|
||||
|
||||
## In case of bugs and/or suggestions
|
||||
If, for any reason, there is a bug found in GraphDS, please message me on GitHub or send me an email to: <algb12.19@gmail.com>. The same goes for any suggestions.
|
||||
|
||||
Despite thorough unit testing, bugs will inevitably appear, so please open up any issues on GitHub if they arise! Currently, PHP 5.3 and onwards is supported, although at least PHP 5.6 is recommended.
|
After Width: | Height: | Size: 548 KiB |
|
@ -0,0 +1,251 @@
|
|||
{
|
||||
"countries": {
|
||||
"Germany": {
|
||||
"map_img": "germany.png",
|
||||
"locations": {
|
||||
"Hamburg": {
|
||||
"map_x": 275,
|
||||
"map_y": 77
|
||||
},
|
||||
"Bremen": {
|
||||
"map_x": 205,
|
||||
"map_y": 107
|
||||
},
|
||||
"Berlin": {
|
||||
"map_x": 452,
|
||||
"map_y": 163
|
||||
},
|
||||
"Hannover": {
|
||||
"map_x": 262,
|
||||
"map_y": 168
|
||||
},
|
||||
"Dortmund": {
|
||||
"map_x": 139,
|
||||
"map_y": 238
|
||||
},
|
||||
"Cologne": {
|
||||
"map_x": 109,
|
||||
"map_y": 290
|
||||
},
|
||||
"Bonn": {
|
||||
"map_x": 116,
|
||||
"map_y": 318
|
||||
},
|
||||
"Frankfurt": {
|
||||
"map_x": 203,
|
||||
"map_y": 368
|
||||
},
|
||||
"Nurnberg": {
|
||||
"map_x": 333,
|
||||
"map_y": 427
|
||||
},
|
||||
"Stuttgart": {
|
||||
"map_x": 231,
|
||||
"map_y": 478
|
||||
},
|
||||
"Munich": {
|
||||
"map_x": 361,
|
||||
"map_y": 528
|
||||
}
|
||||
},
|
||||
"paths": {
|
||||
"Hamburg": {
|
||||
"Bremen": {
|
||||
"distance": "130"
|
||||
},
|
||||
"Hannover": {
|
||||
"distance": "170"
|
||||
},
|
||||
"Berlin": {
|
||||
"distance": "290"
|
||||
}
|
||||
},
|
||||
"Bremen": {
|
||||
"Hannover": {
|
||||
"distance": "140"
|
||||
}
|
||||
},
|
||||
"Berlin": {
|
||||
"Hannover": {
|
||||
"distance": "290"
|
||||
},
|
||||
"Nurnberg": {
|
||||
"distance": "440"
|
||||
}
|
||||
},
|
||||
"Hannover": {
|
||||
"Dortmund": {
|
||||
"distance": "210"
|
||||
},
|
||||
"Frankfurt": {
|
||||
"distance": "350"
|
||||
},
|
||||
"Nurnberg": {
|
||||
"distance": "470"
|
||||
}
|
||||
},
|
||||
"Dortmund": {
|
||||
"Cologne": {
|
||||
"distance": "90"
|
||||
}
|
||||
},
|
||||
"Cologne": {
|
||||
"Bonn": {
|
||||
"distance": "30"
|
||||
}
|
||||
},
|
||||
"Bonn": {
|
||||
"Frankfurt": {
|
||||
"distance": "160"
|
||||
}
|
||||
},
|
||||
"Frankfurt": {
|
||||
"Stuttgart": {
|
||||
"distance": "200"
|
||||
}
|
||||
},
|
||||
"Nurnberg": {
|
||||
"Stuttgart": {
|
||||
"distance": "30"
|
||||
},
|
||||
"Munich": {
|
||||
"distance": "170"
|
||||
}
|
||||
},
|
||||
"Stuttgart": {
|
||||
"Munich": {
|
||||
"distance": "240"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"X": {
|
||||
"map_img": "X.png",
|
||||
"locations": {
|
||||
"A": {
|
||||
"map_x": 57,
|
||||
"map_y": 473
|
||||
},
|
||||
"B": {
|
||||
"map_x": 423,
|
||||
"map_y": 303
|
||||
},
|
||||
"C": {
|
||||
"map_x": 272,
|
||||
"map_y": 470
|
||||
},
|
||||
"D": {
|
||||
"map_x": 426,
|
||||
"map_y": 415
|
||||
},
|
||||
"E": {
|
||||
"map_x": 423,
|
||||
"map_y": 527
|
||||
},
|
||||
"F": {
|
||||
"map_x": 559,
|
||||
"map_y": 468
|
||||
},
|
||||
"G": {
|
||||
"map_x": 284,
|
||||
"map_y": 588
|
||||
},
|
||||
"H": {
|
||||
"map_x": 423,
|
||||
"map_y": 660
|
||||
},
|
||||
"I": {
|
||||
"map_x": 557,
|
||||
"map_y": 661
|
||||
},
|
||||
"J": {
|
||||
"map_x": 740,
|
||||
"map_y": 465
|
||||
},
|
||||
"K": {
|
||||
"map_x": 970,
|
||||
"map_y": 462
|
||||
}
|
||||
},
|
||||
"paths": {
|
||||
"A": {
|
||||
"B": {
|
||||
"distance": "5"
|
||||
},
|
||||
"C": {
|
||||
"distance": "3"
|
||||
},
|
||||
"G": {
|
||||
"distance": "3"
|
||||
}
|
||||
},
|
||||
"B": {
|
||||
"F": {
|
||||
"distance": "3"
|
||||
},
|
||||
"J": {
|
||||
"distance": "5"
|
||||
},
|
||||
"K": {
|
||||
"distance": "2"
|
||||
}
|
||||
},
|
||||
"C": {
|
||||
"B": {
|
||||
"distance": "3"
|
||||
},
|
||||
"D": {
|
||||
"distance": "2"
|
||||
},
|
||||
"E": {
|
||||
"distance": "1"
|
||||
}
|
||||
},
|
||||
"D": {
|
||||
"F": {
|
||||
"distance": "2"
|
||||
}
|
||||
},
|
||||
"E": {
|
||||
"F": {
|
||||
"distance": "3"
|
||||
}
|
||||
},
|
||||
"F": {
|
||||
"I": {
|
||||
"distance": "2"
|
||||
},
|
||||
"J": {
|
||||
"distance": "3"
|
||||
}
|
||||
},
|
||||
"G": {
|
||||
"E": {
|
||||
"distance": "4"
|
||||
},
|
||||
"H": {
|
||||
"distance": "3"
|
||||
}
|
||||
},
|
||||
"H": {
|
||||
"I": {
|
||||
"distance": "2"
|
||||
}
|
||||
},
|
||||
"I": {
|
||||
"J": {
|
||||
"distance": "2"
|
||||
},
|
||||
"K": {
|
||||
"distance": "3"
|
||||
}
|
||||
},
|
||||
"J": {
|
||||
"K": {
|
||||
"distance": "7"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,278 @@
|
|||
<?php
|
||||
/**
|
||||
* This is the RoadPlanner sample app for GraphDS.
|
||||
* It may be primitive and incomplete, but it demonstrates nicely how GraphDS makes life easier when working with graphs.
|
||||
*/
|
||||
// Force reporting of all errors/warnings/notices
|
||||
error_reporting(E_ALL);
|
||||
ini_set('display_errors', 1);
|
||||
|
||||
// Composer's autoload
|
||||
require '../../../../../vendor/autoload.php';
|
||||
|
||||
// Declare GraphDS libraries
|
||||
use GraphDS\Graph\UndirectedGraph;
|
||||
use GraphDS\Algo\Dijkstra;
|
||||
use GraphDS\Algo\DijkstraMulti;
|
||||
use GraphDS\Algo\FloydWarshall;
|
||||
|
||||
// Load JSON datafile and create array with data
|
||||
$datafile = file_get_contents('data/roads.json');
|
||||
$data = json_decode($datafile, true);
|
||||
|
||||
// Initial submit button text
|
||||
$submit_btn_text = 'Set country';
|
||||
|
||||
// Clear query string on reset
|
||||
if (isset($_GET['reset'])) {
|
||||
header('Location:'.$_SERVER['PHP_SELF']);
|
||||
}
|
||||
|
||||
// If country set
|
||||
if (isset($_GET['country'])) {
|
||||
$country = $_GET['country'];
|
||||
$submit_btn_text = 'Set cities';
|
||||
}
|
||||
|
||||
// If country and cities set
|
||||
if (isset($_GET['country']) && isset($_GET['start']) && isset($_GET['destination'])) {
|
||||
$start_city = $_GET['start'];
|
||||
$dest_city = $_GET['destination'];
|
||||
|
||||
// Initialize GraphDS undirected graph
|
||||
$g = new UndirectedGraph();
|
||||
|
||||
// Populate graph with vertices from JSON
|
||||
foreach ($data['countries'][$country]['locations'] as $location => $location_data) {
|
||||
$g->addVertex($location);
|
||||
$g->vertices[$location]->setValue($location_data);
|
||||
}
|
||||
|
||||
// Populate graph with edges from JSON
|
||||
foreach ($data['countries'][$country]['paths'] as $start => $s) {
|
||||
foreach ($s as $destination => $d) {
|
||||
$g->addEdge($start, $destination, $d['distance']);
|
||||
}
|
||||
}
|
||||
|
||||
// Floyd-Warshall
|
||||
// --------------
|
||||
$fw = new FloydWarshall($g);
|
||||
$fw_starttime = round(microtime(true) * 1000000);
|
||||
$fw->run();
|
||||
$fw_res = $fw->get($start_city, $dest_city);
|
||||
$fw_benchmark = (round(microtime(true) * 1000000)) - $fw_starttime;
|
||||
|
||||
// Create path info text
|
||||
$info_fw_path = 'To get from '.$start_city.' to '.$dest_city.':<br>';
|
||||
$stops = $fw_res['path'];
|
||||
$last = count($stops) - 1;
|
||||
|
||||
// Initialise image creation
|
||||
$img = imagecreatefrompng('data/'.$data['countries'][$country]['map_img']);
|
||||
$color = imagecolorallocate($img, 20, 210, 40);
|
||||
imagesetthickness($img, 3);
|
||||
|
||||
$prev_stop = null;
|
||||
|
||||
foreach ($stops as $k => $stop) {
|
||||
if ($prev_stop !== null) {
|
||||
$v1 = $g->vertices[$prev_stop]->getValue();
|
||||
$x1 = $v1['map_x'];
|
||||
$y1 = $v1['map_y'];
|
||||
$v2 = $g->vertices[$stop]->getValue();
|
||||
$x2 = $v2['map_x'];
|
||||
$y2 = $v2['map_y'];
|
||||
imageline($img, $x1, $y1, $x2, $y2, $color);
|
||||
}
|
||||
if ($k !== $last) {
|
||||
$info_fw_path .= $stop.' → ';
|
||||
} else {
|
||||
$info_fw_path .= $stop;
|
||||
}
|
||||
$prev_stop = $stop;
|
||||
}
|
||||
|
||||
// Create distance info text
|
||||
$info_fw_dist = 'The distance is ';
|
||||
$info_fw_dist .= $fw_res['dist'];
|
||||
$info_fw_dist .= ' km.';
|
||||
|
||||
// Save generated image
|
||||
imagepng($img, "data/map_fw.png");
|
||||
|
||||
// Dijkstra
|
||||
// --------
|
||||
$dijk = new Dijkstra($g);
|
||||
$dijk_starttime = round(microtime(true) * 1000000);
|
||||
$dijk->run($start_city);
|
||||
$dijk_res = $dijk->get($dest_city);
|
||||
$dijk_benchmark = (round(microtime(true) * 1000000)) - $dijk_starttime;
|
||||
|
||||
// Create path info text
|
||||
$info_dijk_path = 'To get from '.$start_city.' to '.$dest_city.':<br>';
|
||||
$stops = $dijk_res['path'];
|
||||
$last = count($stops) - 1;
|
||||
|
||||
// Initialise image creation
|
||||
$img = imagecreatefrompng('data/'.$data['countries'][$country]['map_img']);
|
||||
$color = imagecolorallocate($img, 20, 210, 40);
|
||||
imagesetthickness($img, 3);
|
||||
|
||||
$prev_stop = null;
|
||||
|
||||
foreach ($stops as $k => $stop) {
|
||||
if ($prev_stop !== null) {
|
||||
$v1 = $g->vertices[$prev_stop]->getValue();
|
||||
$x1 = $v1['map_x'];
|
||||
$y1 = $v1['map_y'];
|
||||
$v2 = $g->vertices[$stop]->getValue();
|
||||
$x2 = $v2['map_x'];
|
||||
$y2 = $v2['map_y'];
|
||||
imageline($img, $x1, $y1, $x2, $y2, $color);
|
||||
}
|
||||
if ($k !== $last) {
|
||||
$info_dijk_path .= $stop.' → ';
|
||||
} else {
|
||||
$info_dijk_path .= $stop;
|
||||
}
|
||||
$prev_stop = $stop;
|
||||
}
|
||||
|
||||
// Create distance info text
|
||||
$info_dijk_dist = 'The distance is ';
|
||||
$info_dijk_dist .= $dijk_res['dist'];
|
||||
$info_dijk_dist .= ' km.';
|
||||
|
||||
// Save generated image
|
||||
imagepng($img, "data/map_dijk.png");
|
||||
|
||||
// Multi-path Dijkstra
|
||||
// --------
|
||||
$dijk_mult = new DijkstraMulti($g);
|
||||
$dijk_mult_starttime = round(microtime(true) * 1000000);
|
||||
$dijk_mult->run($start_city);
|
||||
$dijk_mult_res = $dijk_mult->get($dest_city);
|
||||
$dijk_mult_benchmark = (round(microtime(true) * 1000000)) - $dijk_mult_starttime;
|
||||
|
||||
// Initialise image creation
|
||||
$img = imagecreatefrompng('data/'.$data['countries'][$country]['map_img']);
|
||||
$color = imagecolorallocate($img, 20, 210, 40);
|
||||
imagesetthickness($img, 3);
|
||||
|
||||
// Create path info text
|
||||
$info_dijk_mult_path = 'To get from '.$start_city.' to '.$dest_city.':<br>';
|
||||
foreach ($dijk_mult_res['paths'] as $path) {
|
||||
$stops = $path;
|
||||
$prev_stop = null;
|
||||
$last = count($stops) - 1;
|
||||
foreach ($stops as $k => $stop) {
|
||||
if ($prev_stop !== null) {
|
||||
$v1 = $g->vertices[$prev_stop]->getValue();
|
||||
$x1 = $v1['map_x'];
|
||||
$y1 = $v1['map_y'];
|
||||
$v2 = $g->vertices[$stop]->getValue();
|
||||
$x2 = $v2['map_x'];
|
||||
$y2 = $v2['map_y'];
|
||||
imageline($img, $x1, $y1, $x2, $y2, $color);
|
||||
}
|
||||
if ($k !== $last) {
|
||||
$info_dijk_mult_path .= $stop.' → ';
|
||||
} else {
|
||||
$info_dijk_mult_path .= $stop;
|
||||
}
|
||||
$prev_stop = $stop;
|
||||
}
|
||||
$info_dijk_mult_path .= '<br>';
|
||||
}
|
||||
|
||||
// Create distance info text
|
||||
$info_dijk_mult_dist = 'The distance is ';
|
||||
$info_dijk_mult_dist .= $dijk_mult_res['dist'];
|
||||
$info_dijk_mult_dist .= ' km.';
|
||||
|
||||
// Save generated image
|
||||
imagepng($img, "data/map_dijk_mult.png");
|
||||
}
|
||||
?>
|
||||
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<title>GraphDS sample app - RoadPlanner</title>
|
||||
</head>
|
||||
<body>
|
||||
<h1>RoadPlanner</h1>
|
||||
<p>This sample app demonstrates shortest path finding betweem two destinations using GraphDS.</p>
|
||||
<p>It uses 2 algorithms for shortest path detection: Dijkstra's and Floyd-Warshall algorithm.</p>
|
||||
<p>Check the <tt>data</tt> folder for the reference map of Germany and the JSON file, which is easily modifiable to include any country.</p>
|
||||
<p>All the graph-related logic is handled by GraphDS and the relevant algorithms, which act as extensions to the core GraphDS library.</p>
|
||||
<p>For more about GraphDS, please see <a href="https://github.com/algb12/GraphDS">https://github.com/algb12/GraphDS</a>.</p>
|
||||
<hr>
|
||||
<p>Please select the start and destination city below, and the calculated shortest path to get to the destination city will be shown.</p>
|
||||
<p>To try the multi-path Dijkstra shortest path algorithm, choose country X, with start city A and destination city J.</p>
|
||||
<form action="<?=$_SERVER['PHP_SELF']?>" method="GET">
|
||||
<?php
|
||||
if (empty($_GET['country'])) {
|
||||
$country_selector = '';
|
||||
foreach ($data['countries'] as $country => $cdata) {
|
||||
$country_selector .= '<option value="'.$country.'">'.$country.'</option>';
|
||||
}
|
||||
|
||||
echo '<div id="countryselect">
|
||||
<label for="country">Country:</label>
|
||||
<select name="country">'.$country_selector.'</select>
|
||||
</div>';
|
||||
} else {
|
||||
echo '<input type="hidden" name="country" value="'.$_GET['country'].'">';
|
||||
}
|
||||
|
||||
if (isset($_GET['country'])) {
|
||||
echo '<h3>Country: '.$country.'</h3>';
|
||||
$city_selector = '';
|
||||
foreach ($data['countries'][$country]['locations'] as $location => $location_data) {
|
||||
$city_selector .= '<option value="'.$location.'">'.$location.'</option>';
|
||||
}
|
||||
|
||||
echo '<div id="startselect">
|
||||
<label for="start">Start city:</label>
|
||||
<select name="start">'.$city_selector.'</select>
|
||||
</div>';
|
||||
|
||||
echo '<div id="destinationselect">
|
||||
<label for="destination">Destination city:</label>
|
||||
<select name="destination">'.$city_selector.'</select>
|
||||
</div>';
|
||||
}
|
||||
?>
|
||||
<input type="submit" value="<?=$submit_btn_text?>">
|
||||
<input type="submit" name="reset" value="Reset">
|
||||
</form>
|
||||
<?php
|
||||
if (isset($_GET['country']) && isset($_GET['start']) && isset($_GET['destination'])) {
|
||||
echo '<h4>Dijkstra calculation:</h4>
|
||||
<p>'.$info_dijk_path.'</p>
|
||||
<p>'.$info_dijk_dist.'</p>
|
||||
<p>Path traced (in green):</p>
|
||||
<img style="width: 500px;" src="data/map_dijk.png">
|
||||
<p>Algorithm execution took '.$dijk_benchmark.'μs.</p>
|
||||
<h4>Multi-path Dijkstra calculation:</h4>
|
||||
<p>'.$info_dijk_mult_path.'</p>
|
||||
<p>'.$info_dijk_mult_dist.'</p>
|
||||
<p>Path traced (in green):</p>
|
||||
<img style="width: 500px;" src="data/map_dijk_mult.png">
|
||||
<p>Algorithm execution took '.$dijk_mult_benchmark.'μs.</p>
|
||||
<h4>Floyd-Warshall calculation:</h4>
|
||||
<p>'.$info_fw_path.'</p>
|
||||
<p>'.$info_fw_dist.'</p>
|
||||
<p>Path traced (in green):</p>
|
||||
<img style="width: 500px;" src="data/map_fw.png">
|
||||
<p>Algorithm execution took '.$fw_benchmark.'μs.</p>';
|
||||
}
|
||||
?>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,28 @@
|
|||
{
|
||||
"name": "algb12/graph-ds",
|
||||
"description": "A fast implementation of the graph data-structure in PHP",
|
||||
"license": "MIT",
|
||||
"authors": [
|
||||
{
|
||||
"name": "Alex Gilburg",
|
||||
"email": "algb12.19@gmail.com"
|
||||
}
|
||||
],
|
||||
"minimum-stability": "dev",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"GraphDS\\": "src",
|
||||
"Tests\\": "tests"
|
||||
}
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.0",
|
||||
"ext-dom": "*",
|
||||
"ext-simplexml": "*"
|
||||
},
|
||||
"require-dev": {
|
||||
"php": ">=5.4",
|
||||
"phpunit/phpunit": "7.0.*",
|
||||
"codeclimate/php-test-reporter": "^0.4.4"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,5 @@
|
|||
# Fixes a vulnerability in CentOS: http://stackoverflow.com/questions/20533279/prevent-php-from-parsing-non-php-files-such-as-somefile-php-txt
|
||||
<FilesMatch \.php\.txt$>
|
||||
RemoveHandler .php
|
||||
ForceType text/plain
|
||||
</FilesMatch>
|
|
@ -0,0 +1,646 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
||||
<meta charset="utf-8"/>
|
||||
<title>API Documentation</title>
|
||||
<meta name="author" content=""/>
|
||||
<meta name="description" content=""/>
|
||||
|
||||
<link href="../css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
|
||||
<link href="../css/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="../css/prism.css" rel="stylesheet" media="all"/>
|
||||
<link href="../css/template.css" rel="stylesheet" media="all"/>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="../js/jquery-1.11.0.min.js"></script>
|
||||
<script src="../js/ui/1.10.4/jquery-ui.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.smooth-scroll.js"></script>
|
||||
<script src="../js/prism.min.js"></script>
|
||||
<!-- TODO: Add http://jscrollpane.kelvinluck.com/ to style the scrollbars for browsers not using webkit-->
|
||||
<script type="text/javascript">
|
||||
function loadExternalCodeSnippets() {
|
||||
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach(function (pre) {
|
||||
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
|
||||
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
|
||||
var language = 'php';
|
||||
|
||||
var code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
|
||||
pre.textContent = '';
|
||||
|
||||
code.textContent = 'Loading…';
|
||||
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
|
||||
Prism.highlightElement(code);
|
||||
}
|
||||
else if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
}
|
||||
else {
|
||||
code.textContent = '✖ Error: File does not exist or is empty';
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
loadExternalCodeSnippets();
|
||||
});
|
||||
$('#source-view').on('shown', function () {
|
||||
loadExternalCodeSnippets();
|
||||
})
|
||||
</script>
|
||||
|
||||
<link rel="shortcut icon" href="../images/favicon.ico"/>
|
||||
<link rel="apple-touch-icon" href="../images/apple-touch-icon.png"/>
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../images/apple-touch-icon-72x72.png"/>
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="../images/apple-touch-icon-114x114.png"/>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<i class="icon-ellipsis-vertical"></i>
|
||||
</a>
|
||||
<a class="brand" href="../index.html">API Documentation</a>
|
||||
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav pull-right">
|
||||
<li class="dropdown">
|
||||
<a href="../index.html" class="dropdown-toggle" data-toggle="dropdown">
|
||||
API Documentation <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="charts-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Charts <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../graphs/class.html">
|
||||
<i class="icon-list-alt"></i> Class hierarchy diagram
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="reports-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Reports <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../reports/errors.html">
|
||||
<i class="icon-list-alt"></i> Errors <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/markers.html">
|
||||
<i class="icon-list-alt"></i> Markers <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/deprecated.html">
|
||||
<i class="icon-list-alt"></i> Deprecated <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="go_to_top">-->
|
||||
<!--<a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a>-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
|
||||
<div id="___" class="container-fluid">
|
||||
<section class="row-fluid">
|
||||
<div class="span2 sidebar">
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-2062999728"></a>
|
||||
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
|
||||
</div>
|
||||
<div id="namespace-2062999728" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1969840730"></a>
|
||||
<a href="../namespaces/GraphDS.html" style="margin-left: 30px; padding-left: 0">GraphDS</a>
|
||||
</div>
|
||||
<div id="namespace-1969840730" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-946089610"></a>
|
||||
<a href="../namespaces/GraphDS.Algo.html" style="margin-left: 30px; padding-left: 0">Algo</a>
|
||||
</div>
|
||||
<div id="namespace-946089610" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1049983947"></a>
|
||||
<a href="../namespaces/GraphDS.Edge.html" style="margin-left: 30px; padding-left: 0">Edge</a>
|
||||
</div>
|
||||
<div id="namespace-1049983947" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.DirectedEdge.html">DirectedEdge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.Edge.html">Edge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.UndirectedEdge.html">UndirectedEdge</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-846338393"></a>
|
||||
<a href="../namespaces/GraphDS.Graph.html" style="margin-left: 30px; padding-left: 0">Graph</a>
|
||||
</div>
|
||||
<div id="namespace-846338393" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.DirectedGraph.html">DirectedGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.Graph.html">Graph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.UndirectedGraph.html">UndirectedGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1700427181"></a>
|
||||
<a href="../namespaces/GraphDS.Persistence.html" style="margin-left: 30px; padding-left: 0">Persistence</a>
|
||||
</div>
|
||||
<div id="namespace-1700427181" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ExportGraph.html">ExportGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ImportGraph.html">ImportGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-637147880"></a>
|
||||
<a href="../namespaces/GraphDS.Vertex.html" style="margin-left: 30px; padding-left: 0">Vertex</a>
|
||||
</div>
|
||||
<div id="namespace-637147880" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.DirectedVertex.html">DirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.UndirectedVertex.html">UndirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.Vertex.html">Vertex</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<div class="span10 offset2">
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<nav>
|
||||
<a href="../namespaces/GraphDS.Algo.html">\GraphDS\Algo</a> <i class="icon-level-up"></i>
|
||||
</nav>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal"><i class="icon-code"></i></a>
|
||||
|
||||
<h1><small>\GraphDS\Algo</small>BFS</h1>
|
||||
<p><em>Class defining the breadth-dirst search.</em></p>
|
||||
|
||||
|
||||
|
||||
<section id="summary">
|
||||
<h2>Summary</h2>
|
||||
<section class="row-fluid heading">
|
||||
<section class="span4">
|
||||
<a href="#methods">Methods</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#properties">Properties</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#constants">Constants</a>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid public">
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Algo.BFS.html#method___construct" class="">__construct()</a><br />
|
||||
<a href="../classes/GraphDS.Algo.BFS.html#method_run" class="">run()</a><br />
|
||||
<a href="../classes/GraphDS.Algo.BFS.html#method_get" class="">get()</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Algo.BFS.html#property_graph" class="">$graph</a><br />
|
||||
<a href="../classes/GraphDS.Algo.BFS.html#property_dist" class="">$dist</a><br />
|
||||
<a href="../classes/GraphDS.Algo.BFS.html#property_parent" class="">$parent</a><br />
|
||||
<a href="../classes/GraphDS.Algo.BFS.html#property_discovered" class="">$discovered</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No constants found</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid protected">
|
||||
<section class="span4">
|
||||
<em>No protected methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No protected properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid private">
|
||||
<section class="span4">
|
||||
<em>No private methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No private properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>File</dt>
|
||||
<dd><a href="../files/Algo.BFS.html"><div class="path-wrapper">Algo/BFS.php</div></a></dd>
|
||||
<dt>Package</dt>
|
||||
<dd><div class="namespace-wrapper">Default</div></dd>
|
||||
<dt>Class hierarchy</dt>
|
||||
<dd class="hierarchy">
|
||||
<div class="namespace-wrapper">\GraphDS\Algo\BFS</div>
|
||||
</dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="properties" name="properties"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<h2>Properties</h2>
|
||||
</div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_graph" name="property_graph" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$graph</h3>
|
||||
<pre class="signature">$graph : object</pre>
|
||||
<p><em>Reference to the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
object
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_dist" name="property_dist" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$dist</h3>
|
||||
<pre class="signature">$dist : array</pre>
|
||||
<p><em>Distances for each node to root in hops.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_parent" name="property_parent" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$parent</h3>
|
||||
<pre class="signature">$parent : array</pre>
|
||||
<p><em>Parents for each vertex.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_discovered" name="property_discovered" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$discovered</h3>
|
||||
<pre class="signature">$discovered : array</pre>
|
||||
<p><em>Discovered vertices, in BFS order.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="methods" name="methods"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class"><h2>Methods</h2></div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method___construct" name="method___construct" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">__construct()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">__construct(object <span class="argument">$graph</span>) </pre>
|
||||
<p><em>Constructor for the BFS algorithm.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>object</td>
|
||||
<td>$graph </td>
|
||||
<td><p>The graph to which the BFS algorithm should be applied</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Algo.BFS.html"><div class="path-wrapper">\GraphDS\Algo\BFS</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_run" name="method_run" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">run()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">run(mixed <span class="argument">$root</span>) </pre>
|
||||
<p><em>Runs the BFS from a given vertex $vertex on the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>mixed</td>
|
||||
<td>$root </td>
|
||||
<td><p>ID of the vertex from which the BFS should begin</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Algo.BFS.html"><div class="path-wrapper">\GraphDS\Algo\BFS</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_get" name="method_get" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">get()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">get() : array</pre>
|
||||
<p><em>Returns the result of the BFS.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
array
|
||||
— <p>Array of vertex distance to root, parents and vertices in BFS order</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Algo.BFS.html"><div class="path-wrapper">\GraphDS\Algo\BFS</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="source-view" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="source-view-label" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="source-view-label">BFS.php</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<pre data-src="../files/Algo/BFS.php.txt" class="language-php line-numbers"></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="row-fluid">
|
||||
<section class="span10 offset2">
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<section class="row-fluid footer-sections">
|
||||
<section class="span4">
|
||||
<h1><i class="icon-code"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-bar-chart"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../graphs/class.html">Class Hierarchy Diagram</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-pushpin"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../reports/errors.html">Errors</a></li>
|
||||
<li><a href="../reports/markers.html">Markers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<hr />
|
||||
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
|
||||
on April 2nd, 2018 at 23:46.
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,651 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
||||
<meta charset="utf-8"/>
|
||||
<title>API Documentation</title>
|
||||
<meta name="author" content=""/>
|
||||
<meta name="description" content=""/>
|
||||
|
||||
<link href="../css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
|
||||
<link href="../css/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="../css/prism.css" rel="stylesheet" media="all"/>
|
||||
<link href="../css/template.css" rel="stylesheet" media="all"/>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="../js/jquery-1.11.0.min.js"></script>
|
||||
<script src="../js/ui/1.10.4/jquery-ui.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.smooth-scroll.js"></script>
|
||||
<script src="../js/prism.min.js"></script>
|
||||
<!-- TODO: Add http://jscrollpane.kelvinluck.com/ to style the scrollbars for browsers not using webkit-->
|
||||
<script type="text/javascript">
|
||||
function loadExternalCodeSnippets() {
|
||||
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach(function (pre) {
|
||||
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
|
||||
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
|
||||
var language = 'php';
|
||||
|
||||
var code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
|
||||
pre.textContent = '';
|
||||
|
||||
code.textContent = 'Loading…';
|
||||
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
|
||||
Prism.highlightElement(code);
|
||||
}
|
||||
else if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
}
|
||||
else {
|
||||
code.textContent = '✖ Error: File does not exist or is empty';
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
loadExternalCodeSnippets();
|
||||
});
|
||||
$('#source-view').on('shown', function () {
|
||||
loadExternalCodeSnippets();
|
||||
})
|
||||
</script>
|
||||
|
||||
<link rel="shortcut icon" href="../images/favicon.ico"/>
|
||||
<link rel="apple-touch-icon" href="../images/apple-touch-icon.png"/>
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../images/apple-touch-icon-72x72.png"/>
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="../images/apple-touch-icon-114x114.png"/>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<i class="icon-ellipsis-vertical"></i>
|
||||
</a>
|
||||
<a class="brand" href="../index.html">API Documentation</a>
|
||||
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav pull-right">
|
||||
<li class="dropdown">
|
||||
<a href="../index.html" class="dropdown-toggle" data-toggle="dropdown">
|
||||
API Documentation <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="charts-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Charts <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../graphs/class.html">
|
||||
<i class="icon-list-alt"></i> Class hierarchy diagram
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="reports-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Reports <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../reports/errors.html">
|
||||
<i class="icon-list-alt"></i> Errors <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/markers.html">
|
||||
<i class="icon-list-alt"></i> Markers <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/deprecated.html">
|
||||
<i class="icon-list-alt"></i> Deprecated <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="go_to_top">-->
|
||||
<!--<a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a>-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
|
||||
<div id="___" class="container-fluid">
|
||||
<section class="row-fluid">
|
||||
<div class="span2 sidebar">
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-1502258798"></a>
|
||||
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
|
||||
</div>
|
||||
<div id="namespace-1502258798" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1475172441"></a>
|
||||
<a href="../namespaces/GraphDS.html" style="margin-left: 30px; padding-left: 0">GraphDS</a>
|
||||
</div>
|
||||
<div id="namespace-1475172441" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-441917093"></a>
|
||||
<a href="../namespaces/GraphDS.Algo.html" style="margin-left: 30px; padding-left: 0">Algo</a>
|
||||
</div>
|
||||
<div id="namespace-441917093" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1756546669"></a>
|
||||
<a href="../namespaces/GraphDS.Edge.html" style="margin-left: 30px; padding-left: 0">Edge</a>
|
||||
</div>
|
||||
<div id="namespace-1756546669" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.DirectedEdge.html">DirectedEdge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.Edge.html">Edge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.UndirectedEdge.html">UndirectedEdge</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1057398781"></a>
|
||||
<a href="../namespaces/GraphDS.Graph.html" style="margin-left: 30px; padding-left: 0">Graph</a>
|
||||
</div>
|
||||
<div id="namespace-1057398781" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.DirectedGraph.html">DirectedGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.Graph.html">Graph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.UndirectedGraph.html">UndirectedGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1541888673"></a>
|
||||
<a href="../namespaces/GraphDS.Persistence.html" style="margin-left: 30px; padding-left: 0">Persistence</a>
|
||||
</div>
|
||||
<div id="namespace-1541888673" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ExportGraph.html">ExportGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ImportGraph.html">ImportGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-378690318"></a>
|
||||
<a href="../namespaces/GraphDS.Vertex.html" style="margin-left: 30px; padding-left: 0">Vertex</a>
|
||||
</div>
|
||||
<div id="namespace-378690318" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.DirectedVertex.html">DirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.UndirectedVertex.html">UndirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.Vertex.html">Vertex</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<div class="span10 offset2">
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<nav>
|
||||
<a href="../namespaces/GraphDS.Algo.html">\GraphDS\Algo</a> <i class="icon-level-up"></i>
|
||||
</nav>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal"><i class="icon-code"></i></a>
|
||||
|
||||
<h1><small>\GraphDS\Algo</small>DFS</h1>
|
||||
<p><em>Class defining depth-first search.</em></p>
|
||||
|
||||
|
||||
|
||||
<section id="summary">
|
||||
<h2>Summary</h2>
|
||||
<section class="row-fluid heading">
|
||||
<section class="span4">
|
||||
<a href="#methods">Methods</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#properties">Properties</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#constants">Constants</a>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid public">
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Algo.DFS.html#method___construct" class="">__construct()</a><br />
|
||||
<a href="../classes/GraphDS.Algo.DFS.html#method_run" class="">run()</a><br />
|
||||
<a href="../classes/GraphDS.Algo.DFS.html#method_get" class="">get()</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Algo.DFS.html#property_graph" class="">$graph</a><br />
|
||||
<a href="../classes/GraphDS.Algo.DFS.html#property_dist" class="">$dist</a><br />
|
||||
<a href="../classes/GraphDS.Algo.DFS.html#property_parent" class="">$parent</a><br />
|
||||
<a href="../classes/GraphDS.Algo.DFS.html#property_discovered" class="">$discovered</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No constants found</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid protected">
|
||||
<section class="span4">
|
||||
<em>No protected methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No protected properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid private">
|
||||
<section class="span4">
|
||||
<em>No private methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No private properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>File</dt>
|
||||
<dd><a href="../files/Algo.DFS.html"><div class="path-wrapper">Algo/DFS.php</div></a></dd>
|
||||
<dt>Package</dt>
|
||||
<dd><div class="namespace-wrapper">Default</div></dd>
|
||||
<dt>Class hierarchy</dt>
|
||||
<dd class="hierarchy">
|
||||
<div class="namespace-wrapper">\GraphDS\Algo\DFS</div>
|
||||
</dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="properties" name="properties"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<h2>Properties</h2>
|
||||
</div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_graph" name="property_graph" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$graph</h3>
|
||||
<pre class="signature">$graph : object</pre>
|
||||
<p><em>Reference to the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
object
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_dist" name="property_dist" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$dist</h3>
|
||||
<pre class="signature">$dist : array</pre>
|
||||
<p><em>Distances for each node to root in hops.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_parent" name="property_parent" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$parent</h3>
|
||||
<pre class="signature">$parent : array</pre>
|
||||
<p><em>Parents for each vertex.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_discovered" name="property_discovered" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$discovered</h3>
|
||||
<pre class="signature">$discovered : array</pre>
|
||||
<p><em>Discovered vertices, in DFS order.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="methods" name="methods"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class"><h2>Methods</h2></div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method___construct" name="method___construct" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">__construct()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">__construct(object <span class="argument">$graph</span>) </pre>
|
||||
<p><em>Constructor for the DFS algorithm.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>object</td>
|
||||
<td>$graph </td>
|
||||
<td><p>The graph to which the DFS algorithm should be applied</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h4>Throws</h4>
|
||||
<dl>
|
||||
<dt>\InvalidArgumentException</dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Algo.DFS.html"><div class="path-wrapper">\GraphDS\Algo\DFS</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_run" name="method_run" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">run()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">run(mixed <span class="argument">$root</span>) </pre>
|
||||
<p><em>Runs the DFS from a given vertex $vertex on the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>mixed</td>
|
||||
<td>$root </td>
|
||||
<td><p>ID of the vertex from which the DFS should begin</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Algo.DFS.html"><div class="path-wrapper">\GraphDS\Algo\DFS</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_get" name="method_get" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">get()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">get() : array</pre>
|
||||
<p><em>Returns the result of the DFS.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
array
|
||||
— <p>Array of vertex distance to root, parents and vertices in DFS order</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Algo.DFS.html"><div class="path-wrapper">\GraphDS\Algo\DFS</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="source-view" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="source-view-label" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="source-view-label">DFS.php</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<pre data-src="../files/Algo/DFS.php.txt" class="language-php line-numbers"></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="row-fluid">
|
||||
<section class="span10 offset2">
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<section class="row-fluid footer-sections">
|
||||
<section class="span4">
|
||||
<h1><i class="icon-code"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-bar-chart"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../graphs/class.html">Class Hierarchy Diagram</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-pushpin"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../reports/errors.html">Errors</a></li>
|
||||
<li><a href="../reports/markers.html">Markers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<hr />
|
||||
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
|
||||
on April 2nd, 2018 at 23:46.
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,689 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
||||
<meta charset="utf-8"/>
|
||||
<title>API Documentation</title>
|
||||
<meta name="author" content=""/>
|
||||
<meta name="description" content=""/>
|
||||
|
||||
<link href="../css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
|
||||
<link href="../css/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="../css/prism.css" rel="stylesheet" media="all"/>
|
||||
<link href="../css/template.css" rel="stylesheet" media="all"/>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="../js/jquery-1.11.0.min.js"></script>
|
||||
<script src="../js/ui/1.10.4/jquery-ui.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.smooth-scroll.js"></script>
|
||||
<script src="../js/prism.min.js"></script>
|
||||
<!-- TODO: Add http://jscrollpane.kelvinluck.com/ to style the scrollbars for browsers not using webkit-->
|
||||
<script type="text/javascript">
|
||||
function loadExternalCodeSnippets() {
|
||||
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach(function (pre) {
|
||||
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
|
||||
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
|
||||
var language = 'php';
|
||||
|
||||
var code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
|
||||
pre.textContent = '';
|
||||
|
||||
code.textContent = 'Loading…';
|
||||
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
|
||||
Prism.highlightElement(code);
|
||||
}
|
||||
else if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
}
|
||||
else {
|
||||
code.textContent = '✖ Error: File does not exist or is empty';
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
loadExternalCodeSnippets();
|
||||
});
|
||||
$('#source-view').on('shown', function () {
|
||||
loadExternalCodeSnippets();
|
||||
})
|
||||
</script>
|
||||
|
||||
<link rel="shortcut icon" href="../images/favicon.ico"/>
|
||||
<link rel="apple-touch-icon" href="../images/apple-touch-icon.png"/>
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../images/apple-touch-icon-72x72.png"/>
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="../images/apple-touch-icon-114x114.png"/>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<i class="icon-ellipsis-vertical"></i>
|
||||
</a>
|
||||
<a class="brand" href="../index.html">API Documentation</a>
|
||||
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav pull-right">
|
||||
<li class="dropdown">
|
||||
<a href="../index.html" class="dropdown-toggle" data-toggle="dropdown">
|
||||
API Documentation <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="charts-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Charts <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../graphs/class.html">
|
||||
<i class="icon-list-alt"></i> Class hierarchy diagram
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="reports-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Reports <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../reports/errors.html">
|
||||
<i class="icon-list-alt"></i> Errors <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/markers.html">
|
||||
<i class="icon-list-alt"></i> Markers <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/deprecated.html">
|
||||
<i class="icon-list-alt"></i> Deprecated <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="go_to_top">-->
|
||||
<!--<a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a>-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
|
||||
<div id="___" class="container-fluid">
|
||||
<section class="row-fluid">
|
||||
<div class="span2 sidebar">
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-575418948"></a>
|
||||
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
|
||||
</div>
|
||||
<div id="namespace-575418948" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1757390633"></a>
|
||||
<a href="../namespaces/GraphDS.html" style="margin-left: 30px; padding-left: 0">GraphDS</a>
|
||||
</div>
|
||||
<div id="namespace-1757390633" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-2025072228"></a>
|
||||
<a href="../namespaces/GraphDS.Algo.html" style="margin-left: 30px; padding-left: 0">Algo</a>
|
||||
</div>
|
||||
<div id="namespace-2025072228" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1460027761"></a>
|
||||
<a href="../namespaces/GraphDS.Edge.html" style="margin-left: 30px; padding-left: 0">Edge</a>
|
||||
</div>
|
||||
<div id="namespace-1460027761" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.DirectedEdge.html">DirectedEdge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.Edge.html">Edge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.UndirectedEdge.html">UndirectedEdge</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1017639948"></a>
|
||||
<a href="../namespaces/GraphDS.Graph.html" style="margin-left: 30px; padding-left: 0">Graph</a>
|
||||
</div>
|
||||
<div id="namespace-1017639948" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.DirectedGraph.html">DirectedGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.Graph.html">Graph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.UndirectedGraph.html">UndirectedGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1717299290"></a>
|
||||
<a href="../namespaces/GraphDS.Persistence.html" style="margin-left: 30px; padding-left: 0">Persistence</a>
|
||||
</div>
|
||||
<div id="namespace-1717299290" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ExportGraph.html">ExportGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ImportGraph.html">ImportGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-387806902"></a>
|
||||
<a href="../namespaces/GraphDS.Vertex.html" style="margin-left: 30px; padding-left: 0">Vertex</a>
|
||||
</div>
|
||||
<div id="namespace-387806902" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.DirectedVertex.html">DirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.UndirectedVertex.html">UndirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.Vertex.html">Vertex</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<div class="span10 offset2">
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<nav>
|
||||
<a href="../namespaces/GraphDS.Algo.html">\GraphDS\Algo</a> <i class="icon-level-up"></i>
|
||||
</nav>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal"><i class="icon-code"></i></a>
|
||||
|
||||
<h1><small>\GraphDS\Algo</small>Dijkstra</h1>
|
||||
<p><em>Class defining Dijkstra's shortest path algorithm.</em></p>
|
||||
|
||||
|
||||
|
||||
<section id="summary">
|
||||
<h2>Summary</h2>
|
||||
<section class="row-fluid heading">
|
||||
<section class="span4">
|
||||
<a href="#methods">Methods</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#properties">Properties</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#constants">Constants</a>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid public">
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Algo.Dijkstra.html#method___construct" class="">__construct()</a><br />
|
||||
<a href="../classes/GraphDS.Algo.Dijkstra.html#method_run" class="">run()</a><br />
|
||||
<a href="../classes/GraphDS.Algo.Dijkstra.html#method_get" class="">get()</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Algo.Dijkstra.html#property_graph" class="">$graph</a><br />
|
||||
<a href="../classes/GraphDS.Algo.Dijkstra.html#property_dist" class="">$dist</a><br />
|
||||
<a href="../classes/GraphDS.Algo.Dijkstra.html#property_prev" class="">$prev</a><br />
|
||||
<a href="../classes/GraphDS.Algo.Dijkstra.html#property_unvisitedVertices" class="">$unvisitedVertices</a><br />
|
||||
<a href="../classes/GraphDS.Algo.Dijkstra.html#property_start" class="">$start</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No constants found</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid protected">
|
||||
<section class="span4">
|
||||
<em>No protected methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No protected properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid private">
|
||||
<section class="span4">
|
||||
<em>No private methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No private properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>File</dt>
|
||||
<dd><a href="../files/Algo.Dijkstra.html"><div class="path-wrapper">Algo/Dijkstra.php</div></a></dd>
|
||||
<dt>Package</dt>
|
||||
<dd><div class="namespace-wrapper">Default</div></dd>
|
||||
<dt>Class hierarchy</dt>
|
||||
<dd class="hierarchy">
|
||||
<div class="namespace-wrapper">\GraphDS\Algo\Dijkstra</div>
|
||||
</dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="properties" name="properties"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<h2>Properties</h2>
|
||||
</div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_graph" name="property_graph" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$graph</h3>
|
||||
<pre class="signature">$graph : \GraphDS\Graph\Graph</pre>
|
||||
<p><em>Reference to the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
<a href="../classes/GraphDS.Graph.Graph.html">\GraphDS\Graph\Graph</a>
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_dist" name="property_dist" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$dist</h3>
|
||||
<pre class="signature">$dist : array</pre>
|
||||
<p><em>Array holding the shortest distances to each vertex from the source.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_prev" name="property_prev" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$prev</h3>
|
||||
<pre class="signature">$prev : array</pre>
|
||||
<p><em>Array holding the previous vertices for each vertex for the shortest path.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_unvisitedVertices" name="property_unvisitedVertices" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$unvisitedVertices</h3>
|
||||
<pre class="signature">$unvisitedVertices : array</pre>
|
||||
<p><em>Array holding the unvisited vertices in the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_start" name="property_start" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$start</h3>
|
||||
<pre class="signature">$start : array</pre>
|
||||
<p><em>ID of the start vertex.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="methods" name="methods"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class"><h2>Methods</h2></div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method___construct" name="method___construct" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">__construct()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">__construct(\GraphDS\Graph\Graph <span class="argument">$graph</span>) </pre>
|
||||
<p><em>Constructor for the Dijkstra algorithm.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td><a href="../classes/GraphDS.Graph.Graph.html">\GraphDS\Graph\Graph</a></td>
|
||||
<td>$graph </td>
|
||||
<td><p>The graph to which the Dijkstra algorithm should be applied</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h4>Throws</h4>
|
||||
<dl>
|
||||
<dt>\InvalidArgumentException</dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Algo.Dijkstra.html"><div class="path-wrapper">\GraphDS\Algo\Dijkstra</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_run" name="method_run" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">run()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">run(mixed <span class="argument">$start</span>) : void</pre>
|
||||
<p><em>Calculates the shortest path to every vertex from vertex $start.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>mixed</td>
|
||||
<td>$start </td>
|
||||
<td><p>ID of the starting vertex for Dijkstra's algorithm</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h4>Throws</h4>
|
||||
<dl>
|
||||
<dt>\InvalidArgumentException</dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Algo.Dijkstra.html"><div class="path-wrapper">\GraphDS\Algo\Dijkstra</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_get" name="method_get" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">get()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">get(string <span class="argument">$dest</span>) : array</pre>
|
||||
<p><em>Returns the shortest path to $dest from the origin vertex in the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$dest </td>
|
||||
<td><p>ID of the destination vertex</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
array
|
||||
— <p>An array containing the shortest path and distance</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Algo.Dijkstra.html"><div class="path-wrapper">\GraphDS\Algo\Dijkstra</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="source-view" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="source-view-label" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="source-view-label">Dijkstra.php</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<pre data-src="../files/Algo/Dijkstra.php.txt" class="language-php line-numbers"></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="row-fluid">
|
||||
<section class="span10 offset2">
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<section class="row-fluid footer-sections">
|
||||
<section class="span4">
|
||||
<h1><i class="icon-code"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-bar-chart"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../graphs/class.html">Class Hierarchy Diagram</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-pushpin"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../reports/errors.html">Errors</a></li>
|
||||
<li><a href="../reports/markers.html">Markers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<hr />
|
||||
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
|
||||
on April 2nd, 2018 at 23:46.
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,778 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
||||
<meta charset="utf-8"/>
|
||||
<title>API Documentation</title>
|
||||
<meta name="author" content=""/>
|
||||
<meta name="description" content=""/>
|
||||
|
||||
<link href="../css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
|
||||
<link href="../css/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="../css/prism.css" rel="stylesheet" media="all"/>
|
||||
<link href="../css/template.css" rel="stylesheet" media="all"/>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="../js/jquery-1.11.0.min.js"></script>
|
||||
<script src="../js/ui/1.10.4/jquery-ui.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.smooth-scroll.js"></script>
|
||||
<script src="../js/prism.min.js"></script>
|
||||
<!-- TODO: Add http://jscrollpane.kelvinluck.com/ to style the scrollbars for browsers not using webkit-->
|
||||
<script type="text/javascript">
|
||||
function loadExternalCodeSnippets() {
|
||||
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach(function (pre) {
|
||||
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
|
||||
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
|
||||
var language = 'php';
|
||||
|
||||
var code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
|
||||
pre.textContent = '';
|
||||
|
||||
code.textContent = 'Loading…';
|
||||
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
|
||||
Prism.highlightElement(code);
|
||||
}
|
||||
else if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
}
|
||||
else {
|
||||
code.textContent = '✖ Error: File does not exist or is empty';
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
loadExternalCodeSnippets();
|
||||
});
|
||||
$('#source-view').on('shown', function () {
|
||||
loadExternalCodeSnippets();
|
||||
})
|
||||
</script>
|
||||
|
||||
<link rel="shortcut icon" href="../images/favicon.ico"/>
|
||||
<link rel="apple-touch-icon" href="../images/apple-touch-icon.png"/>
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../images/apple-touch-icon-72x72.png"/>
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="../images/apple-touch-icon-114x114.png"/>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<i class="icon-ellipsis-vertical"></i>
|
||||
</a>
|
||||
<a class="brand" href="../index.html">API Documentation</a>
|
||||
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav pull-right">
|
||||
<li class="dropdown">
|
||||
<a href="../index.html" class="dropdown-toggle" data-toggle="dropdown">
|
||||
API Documentation <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="charts-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Charts <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../graphs/class.html">
|
||||
<i class="icon-list-alt"></i> Class hierarchy diagram
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="reports-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Reports <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../reports/errors.html">
|
||||
<i class="icon-list-alt"></i> Errors <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/markers.html">
|
||||
<i class="icon-list-alt"></i> Markers <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/deprecated.html">
|
||||
<i class="icon-list-alt"></i> Deprecated <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="go_to_top">-->
|
||||
<!--<a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a>-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
|
||||
<div id="___" class="container-fluid">
|
||||
<section class="row-fluid">
|
||||
<div class="span2 sidebar">
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-898152202"></a>
|
||||
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
|
||||
</div>
|
||||
<div id="namespace-898152202" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1468243957"></a>
|
||||
<a href="../namespaces/GraphDS.html" style="margin-left: 30px; padding-left: 0">GraphDS</a>
|
||||
</div>
|
||||
<div id="namespace-1468243957" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1768327117"></a>
|
||||
<a href="../namespaces/GraphDS.Algo.html" style="margin-left: 30px; padding-left: 0">Algo</a>
|
||||
</div>
|
||||
<div id="namespace-1768327117" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-281457902"></a>
|
||||
<a href="../namespaces/GraphDS.Edge.html" style="margin-left: 30px; padding-left: 0">Edge</a>
|
||||
</div>
|
||||
<div id="namespace-281457902" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.DirectedEdge.html">DirectedEdge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.Edge.html">Edge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.UndirectedEdge.html">UndirectedEdge</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1906571841"></a>
|
||||
<a href="../namespaces/GraphDS.Graph.html" style="margin-left: 30px; padding-left: 0">Graph</a>
|
||||
</div>
|
||||
<div id="namespace-1906571841" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.DirectedGraph.html">DirectedGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.Graph.html">Graph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.UndirectedGraph.html">UndirectedGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1748666372"></a>
|
||||
<a href="../namespaces/GraphDS.Persistence.html" style="margin-left: 30px; padding-left: 0">Persistence</a>
|
||||
</div>
|
||||
<div id="namespace-1748666372" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ExportGraph.html">ExportGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ImportGraph.html">ImportGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1664470321"></a>
|
||||
<a href="../namespaces/GraphDS.Vertex.html" style="margin-left: 30px; padding-left: 0">Vertex</a>
|
||||
</div>
|
||||
<div id="namespace-1664470321" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.DirectedVertex.html">DirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.UndirectedVertex.html">UndirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.Vertex.html">Vertex</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<div class="span10 offset2">
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<nav>
|
||||
<a href="../namespaces/GraphDS.Algo.html">\GraphDS\Algo</a> <i class="icon-level-up"></i>
|
||||
</nav>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal"><i class="icon-code"></i></a>
|
||||
|
||||
<h1><small>\GraphDS\Algo</small>DijkstraMulti</h1>
|
||||
<p><em>Class defining the multi-path version of Dijkstra's shortest path algorithm.</em></p>
|
||||
|
||||
|
||||
|
||||
<section id="summary">
|
||||
<h2>Summary</h2>
|
||||
<section class="row-fluid heading">
|
||||
<section class="span4">
|
||||
<a href="#methods">Methods</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#properties">Properties</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#constants">Constants</a>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid public">
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Algo.DijkstraMulti.html#method___construct" class="">__construct()</a><br />
|
||||
<a href="../classes/GraphDS.Algo.DijkstraMulti.html#method_run" class="">run()</a><br />
|
||||
<a href="../classes/GraphDS.Algo.DijkstraMulti.html#method_get" class="">get()</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Algo.DijkstraMulti.html#property_graph" class="">$graph</a><br />
|
||||
<a href="../classes/GraphDS.Algo.DijkstraMulti.html#property_dist" class="">$dist</a><br />
|
||||
<a href="../classes/GraphDS.Algo.DijkstraMulti.html#property_prev" class="">$prev</a><br />
|
||||
<a href="../classes/GraphDS.Algo.DijkstraMulti.html#property_unvisitedVertices" class="">$unvisitedVertices</a><br />
|
||||
<a href="../classes/GraphDS.Algo.DijkstraMulti.html#property_start" class="">$start</a><br />
|
||||
<a href="../classes/GraphDS.Algo.DijkstraMulti.html#property_path" class="">$path</a><br />
|
||||
<a href="../classes/GraphDS.Algo.DijkstraMulti.html#property_paths" class="">$paths</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No constants found</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid protected">
|
||||
<section class="span4">
|
||||
<em>No protected methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No protected properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid private">
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Algo.DijkstraMulti.html#method_enumerate" class="">enumerate()</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No private properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>File</dt>
|
||||
<dd><a href="../files/Algo.DijkstraMulti.html"><div class="path-wrapper">Algo/DijkstraMulti.php</div></a></dd>
|
||||
<dt>Package</dt>
|
||||
<dd><div class="namespace-wrapper">Default</div></dd>
|
||||
<dt>Class hierarchy</dt>
|
||||
<dd class="hierarchy">
|
||||
<div class="namespace-wrapper">\GraphDS\Algo\DijkstraMulti</div>
|
||||
</dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="properties" name="properties"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<h2>Properties</h2>
|
||||
</div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_graph" name="property_graph" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$graph</h3>
|
||||
<pre class="signature">$graph : \GraphDS\Graph\Graph</pre>
|
||||
<p><em>Reference to the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
<a href="../classes/GraphDS.Graph.Graph.html">\GraphDS\Graph\Graph</a>
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_dist" name="property_dist" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$dist</h3>
|
||||
<pre class="signature">$dist : array</pre>
|
||||
<p><em>Array holding the shortest distances to each vertex from the source.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_prev" name="property_prev" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$prev</h3>
|
||||
<pre class="signature">$prev : array</pre>
|
||||
<p><em>Array holding the previous vertices for each vertex for the shortest path.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_unvisitedVertices" name="property_unvisitedVertices" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$unvisitedVertices</h3>
|
||||
<pre class="signature">$unvisitedVertices : array</pre>
|
||||
<p><em>Array holding the unvisited vertices in the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_start" name="property_start" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$start</h3>
|
||||
<pre class="signature">$start : mixed</pre>
|
||||
<p><em>ID of the start vertex.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
mixed
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_path" name="property_path" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$path</h3>
|
||||
<pre class="signature">$path : array</pre>
|
||||
<p><em>Array holding a single shortest path.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_paths" name="property_paths" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$paths</h3>
|
||||
<pre class="signature">$paths : array</pre>
|
||||
<p><em>Array holding the shortest paths in the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="methods" name="methods"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class"><h2>Methods</h2></div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method___construct" name="method___construct" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">__construct()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">__construct(\GraphDS\Graph\Graph <span class="argument">$graph</span>) </pre>
|
||||
<p><em>Constructor for the multi-path version of Dijkstra algorithm.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td><a href="../classes/GraphDS.Graph.Graph.html">\GraphDS\Graph\Graph</a></td>
|
||||
<td>$graph </td>
|
||||
<td><p>The graph to which the multi-path Dijkstra algorithm should be applied</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Algo.DijkstraMulti.html"><div class="path-wrapper">\GraphDS\Algo\DijkstraMulti</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_run" name="method_run" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">run()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">run(mixed <span class="argument">$start</span>) : array</pre>
|
||||
<p><em>Calculates the shortest path to every vertex from vertex $start.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>mixed</td>
|
||||
<td>$start </td>
|
||||
<td><p>ID of the starting vertex for multi-path Dijkstra's algorithm</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h4>Throws</h4>
|
||||
<dl>
|
||||
<dt>\InvalidArgumentException</dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
<h4>Returns</h4>
|
||||
array
|
||||
— <p>Array holding the distances and previous vertices as calculated by Dijkstra's algorithm</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Algo.DijkstraMulti.html"><div class="path-wrapper">\GraphDS\Algo\DijkstraMulti</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_get" name="method_get" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">get()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">get(string <span class="argument">$dest</span>) : array</pre>
|
||||
<p><em>Returns all shortest paths to $dest from the origin vertex $this->start in the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$dest </td>
|
||||
<td><p>ID of the destination vertex</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
array
|
||||
— <p>An array containing the shortest path and distance</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Algo.DijkstraMulti.html"><div class="path-wrapper">\GraphDS\Algo\DijkstraMulti</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_enumerate" name="method_enumerate" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="private ">enumerate()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">enumerate(string <span class="argument">$source</span>, string <span class="argument">$dest</span>) </pre>
|
||||
<p><em>Enumerates the result of the multi-path Dijkstra as paths.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$source </td>
|
||||
<td><p>ID of the source vertex</p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$dest </td>
|
||||
<td><p>ID of the destination vertex</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Algo.DijkstraMulti.html"><div class="path-wrapper">\GraphDS\Algo\DijkstraMulti</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="source-view" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="source-view-label" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="source-view-label">DijkstraMulti.php</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<pre data-src="../files/Algo/DijkstraMulti.php.txt" class="language-php line-numbers"></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="row-fluid">
|
||||
<section class="span10 offset2">
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<section class="row-fluid footer-sections">
|
||||
<section class="span4">
|
||||
<h1><i class="icon-code"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-bar-chart"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../graphs/class.html">Class Hierarchy Diagram</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-pushpin"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../reports/errors.html">Errors</a></li>
|
||||
<li><a href="../reports/markers.html">Markers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<hr />
|
||||
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
|
||||
on April 2nd, 2018 at 23:46.
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,631 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
||||
<meta charset="utf-8"/>
|
||||
<title>API Documentation</title>
|
||||
<meta name="author" content=""/>
|
||||
<meta name="description" content=""/>
|
||||
|
||||
<link href="../css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
|
||||
<link href="../css/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="../css/prism.css" rel="stylesheet" media="all"/>
|
||||
<link href="../css/template.css" rel="stylesheet" media="all"/>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="../js/jquery-1.11.0.min.js"></script>
|
||||
<script src="../js/ui/1.10.4/jquery-ui.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.smooth-scroll.js"></script>
|
||||
<script src="../js/prism.min.js"></script>
|
||||
<!-- TODO: Add http://jscrollpane.kelvinluck.com/ to style the scrollbars for browsers not using webkit-->
|
||||
<script type="text/javascript">
|
||||
function loadExternalCodeSnippets() {
|
||||
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach(function (pre) {
|
||||
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
|
||||
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
|
||||
var language = 'php';
|
||||
|
||||
var code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
|
||||
pre.textContent = '';
|
||||
|
||||
code.textContent = 'Loading…';
|
||||
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
|
||||
Prism.highlightElement(code);
|
||||
}
|
||||
else if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
}
|
||||
else {
|
||||
code.textContent = '✖ Error: File does not exist or is empty';
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
loadExternalCodeSnippets();
|
||||
});
|
||||
$('#source-view').on('shown', function () {
|
||||
loadExternalCodeSnippets();
|
||||
})
|
||||
</script>
|
||||
|
||||
<link rel="shortcut icon" href="../images/favicon.ico"/>
|
||||
<link rel="apple-touch-icon" href="../images/apple-touch-icon.png"/>
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../images/apple-touch-icon-72x72.png"/>
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="../images/apple-touch-icon-114x114.png"/>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<i class="icon-ellipsis-vertical"></i>
|
||||
</a>
|
||||
<a class="brand" href="../index.html">API Documentation</a>
|
||||
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav pull-right">
|
||||
<li class="dropdown">
|
||||
<a href="../index.html" class="dropdown-toggle" data-toggle="dropdown">
|
||||
API Documentation <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="charts-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Charts <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../graphs/class.html">
|
||||
<i class="icon-list-alt"></i> Class hierarchy diagram
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="reports-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Reports <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../reports/errors.html">
|
||||
<i class="icon-list-alt"></i> Errors <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/markers.html">
|
||||
<i class="icon-list-alt"></i> Markers <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/deprecated.html">
|
||||
<i class="icon-list-alt"></i> Deprecated <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="go_to_top">-->
|
||||
<!--<a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a>-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
|
||||
<div id="___" class="container-fluid">
|
||||
<section class="row-fluid">
|
||||
<div class="span2 sidebar">
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-474878444"></a>
|
||||
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
|
||||
</div>
|
||||
<div id="namespace-474878444" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1299895603"></a>
|
||||
<a href="../namespaces/GraphDS.html" style="margin-left: 30px; padding-left: 0">GraphDS</a>
|
||||
</div>
|
||||
<div id="namespace-1299895603" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1596033657"></a>
|
||||
<a href="../namespaces/GraphDS.Algo.html" style="margin-left: 30px; padding-left: 0">Algo</a>
|
||||
</div>
|
||||
<div id="namespace-1596033657" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-976178834"></a>
|
||||
<a href="../namespaces/GraphDS.Edge.html" style="margin-left: 30px; padding-left: 0">Edge</a>
|
||||
</div>
|
||||
<div id="namespace-976178834" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.DirectedEdge.html">DirectedEdge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.Edge.html">Edge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.UndirectedEdge.html">UndirectedEdge</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-683830584"></a>
|
||||
<a href="../namespaces/GraphDS.Graph.html" style="margin-left: 30px; padding-left: 0">Graph</a>
|
||||
</div>
|
||||
<div id="namespace-683830584" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.DirectedGraph.html">DirectedGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.Graph.html">Graph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.UndirectedGraph.html">UndirectedGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-882639970"></a>
|
||||
<a href="../namespaces/GraphDS.Persistence.html" style="margin-left: 30px; padding-left: 0">Persistence</a>
|
||||
</div>
|
||||
<div id="namespace-882639970" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ExportGraph.html">ExportGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ImportGraph.html">ImportGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1212004111"></a>
|
||||
<a href="../namespaces/GraphDS.Vertex.html" style="margin-left: 30px; padding-left: 0">Vertex</a>
|
||||
</div>
|
||||
<div id="namespace-1212004111" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.DirectedVertex.html">DirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.UndirectedVertex.html">UndirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.Vertex.html">Vertex</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<div class="span10 offset2">
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<nav>
|
||||
<a href="../namespaces/GraphDS.Algo.html">\GraphDS\Algo</a> <i class="icon-level-up"></i>
|
||||
</nav>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal"><i class="icon-code"></i></a>
|
||||
|
||||
<h1><small>\GraphDS\Algo</small>FloydWarshall</h1>
|
||||
<p><em>Class defining the Floyd-Warshall algorithm.</em></p>
|
||||
|
||||
|
||||
|
||||
<section id="summary">
|
||||
<h2>Summary</h2>
|
||||
<section class="row-fluid heading">
|
||||
<section class="span4">
|
||||
<a href="#methods">Methods</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#properties">Properties</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#constants">Constants</a>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid public">
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Algo.FloydWarshall.html#method___construct" class="">__construct()</a><br />
|
||||
<a href="../classes/GraphDS.Algo.FloydWarshall.html#method_run" class="">run()</a><br />
|
||||
<a href="../classes/GraphDS.Algo.FloydWarshall.html#method_get" class="">get()</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Algo.FloydWarshall.html#property_graph" class="">$graph</a><br />
|
||||
<a href="../classes/GraphDS.Algo.FloydWarshall.html#property_dist" class="">$dist</a><br />
|
||||
<a href="../classes/GraphDS.Algo.FloydWarshall.html#property_next" class="">$next</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No constants found</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid protected">
|
||||
<section class="span4">
|
||||
<em>No protected methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No protected properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid private">
|
||||
<section class="span4">
|
||||
<em>No private methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No private properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>File</dt>
|
||||
<dd><a href="../files/Algo.FloydWarshall.html"><div class="path-wrapper">Algo/FloydWarshall.php</div></a></dd>
|
||||
<dt>Package</dt>
|
||||
<dd><div class="namespace-wrapper">Default</div></dd>
|
||||
<dt>Class hierarchy</dt>
|
||||
<dd class="hierarchy">
|
||||
<div class="namespace-wrapper">\GraphDS\Algo\FloydWarshall</div>
|
||||
</dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="properties" name="properties"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<h2>Properties</h2>
|
||||
</div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_graph" name="property_graph" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$graph</h3>
|
||||
<pre class="signature">$graph : object</pre>
|
||||
<p><em>Reference to the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
object
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_dist" name="property_dist" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$dist</h3>
|
||||
<pre class="signature">$dist : array</pre>
|
||||
<p><em>Array holding the shortest distances to each vertex from the source.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_next" name="property_next" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$next</h3>
|
||||
<pre class="signature">$next : array</pre>
|
||||
<p><em>Array holding the next vertices for each vertex for the shortest path.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="methods" name="methods"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class"><h2>Methods</h2></div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method___construct" name="method___construct" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">__construct()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">__construct(\GraphDS\Graph\Graph <span class="argument">$graph</span>) </pre>
|
||||
<p><em>Constructor for the Floyd-Warshall algorithm.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td><a href="../classes/GraphDS.Graph.Graph.html">\GraphDS\Graph\Graph</a></td>
|
||||
<td>$graph </td>
|
||||
<td><p>The graph to which the Floyd-Warshall should be applied</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h4>Throws</h4>
|
||||
<dl>
|
||||
<dt>\InvalidArgumentException</dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Algo.FloydWarshall.html"><div class="path-wrapper">\GraphDS\Algo\FloydWarshall</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_run" name="method_run" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">run()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">run() </pre>
|
||||
<p><em>Calculates the shortest paths in the graph using the Floyd-Warshall algorithm.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Algo.FloydWarshall.html"><div class="path-wrapper">\GraphDS\Algo\FloydWarshall</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_get" name="method_get" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">get()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">get(string <span class="argument">$start</span>, string <span class="argument">$dest</span>) : array</pre>
|
||||
<p><em>Returns the shortest path from vertex $start to $dest in the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$start </td>
|
||||
<td><p>ID of the start vertex</p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$dest </td>
|
||||
<td><p>ID of the destination vertex</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
array
|
||||
— <p>An array containing the shortest path and distance</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Algo.FloydWarshall.html"><div class="path-wrapper">\GraphDS\Algo\FloydWarshall</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="source-view" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="source-view-label" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="source-view-label">FloydWarshall.php</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<pre data-src="../files/Algo/FloydWarshall.php.txt" class="language-php line-numbers"></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="row-fluid">
|
||||
<section class="span10 offset2">
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<section class="row-fluid footer-sections">
|
||||
<section class="span4">
|
||||
<h1><i class="icon-code"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-bar-chart"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../graphs/class.html">Class Hierarchy Diagram</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-pushpin"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../reports/errors.html">Errors</a></li>
|
||||
<li><a href="../reports/markers.html">Markers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<hr />
|
||||
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
|
||||
on April 2nd, 2018 at 23:46.
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,643 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
||||
<meta charset="utf-8"/>
|
||||
<title>API Documentation</title>
|
||||
<meta name="author" content=""/>
|
||||
<meta name="description" content=""/>
|
||||
|
||||
<link href="../css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
|
||||
<link href="../css/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="../css/prism.css" rel="stylesheet" media="all"/>
|
||||
<link href="../css/template.css" rel="stylesheet" media="all"/>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="../js/jquery-1.11.0.min.js"></script>
|
||||
<script src="../js/ui/1.10.4/jquery-ui.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.smooth-scroll.js"></script>
|
||||
<script src="../js/prism.min.js"></script>
|
||||
<!-- TODO: Add http://jscrollpane.kelvinluck.com/ to style the scrollbars for browsers not using webkit-->
|
||||
<script type="text/javascript">
|
||||
function loadExternalCodeSnippets() {
|
||||
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach(function (pre) {
|
||||
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
|
||||
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
|
||||
var language = 'php';
|
||||
|
||||
var code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
|
||||
pre.textContent = '';
|
||||
|
||||
code.textContent = 'Loading…';
|
||||
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
|
||||
Prism.highlightElement(code);
|
||||
}
|
||||
else if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
}
|
||||
else {
|
||||
code.textContent = '✖ Error: File does not exist or is empty';
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
loadExternalCodeSnippets();
|
||||
});
|
||||
$('#source-view').on('shown', function () {
|
||||
loadExternalCodeSnippets();
|
||||
})
|
||||
</script>
|
||||
|
||||
<link rel="shortcut icon" href="../images/favicon.ico"/>
|
||||
<link rel="apple-touch-icon" href="../images/apple-touch-icon.png"/>
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../images/apple-touch-icon-72x72.png"/>
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="../images/apple-touch-icon-114x114.png"/>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<i class="icon-ellipsis-vertical"></i>
|
||||
</a>
|
||||
<a class="brand" href="../index.html">API Documentation</a>
|
||||
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav pull-right">
|
||||
<li class="dropdown">
|
||||
<a href="../index.html" class="dropdown-toggle" data-toggle="dropdown">
|
||||
API Documentation <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="charts-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Charts <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../graphs/class.html">
|
||||
<i class="icon-list-alt"></i> Class hierarchy diagram
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="reports-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Reports <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../reports/errors.html">
|
||||
<i class="icon-list-alt"></i> Errors <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/markers.html">
|
||||
<i class="icon-list-alt"></i> Markers <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/deprecated.html">
|
||||
<i class="icon-list-alt"></i> Deprecated <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="go_to_top">-->
|
||||
<!--<a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a>-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
|
||||
<div id="___" class="container-fluid">
|
||||
<section class="row-fluid">
|
||||
<div class="span2 sidebar">
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-1980349661"></a>
|
||||
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
|
||||
</div>
|
||||
<div id="namespace-1980349661" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-701396961"></a>
|
||||
<a href="../namespaces/GraphDS.html" style="margin-left: 30px; padding-left: 0">GraphDS</a>
|
||||
</div>
|
||||
<div id="namespace-701396961" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-911175818"></a>
|
||||
<a href="../namespaces/GraphDS.Algo.html" style="margin-left: 30px; padding-left: 0">Algo</a>
|
||||
</div>
|
||||
<div id="namespace-911175818" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1060681690"></a>
|
||||
<a href="../namespaces/GraphDS.Edge.html" style="margin-left: 30px; padding-left: 0">Edge</a>
|
||||
</div>
|
||||
<div id="namespace-1060681690" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.DirectedEdge.html">DirectedEdge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.Edge.html">Edge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.UndirectedEdge.html">UndirectedEdge</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1479146525"></a>
|
||||
<a href="../namespaces/GraphDS.Graph.html" style="margin-left: 30px; padding-left: 0">Graph</a>
|
||||
</div>
|
||||
<div id="namespace-1479146525" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.DirectedGraph.html">DirectedGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.Graph.html">Graph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.UndirectedGraph.html">UndirectedGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-705694379"></a>
|
||||
<a href="../namespaces/GraphDS.Persistence.html" style="margin-left: 30px; padding-left: 0">Persistence</a>
|
||||
</div>
|
||||
<div id="namespace-705694379" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ExportGraph.html">ExportGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ImportGraph.html">ImportGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-997145886"></a>
|
||||
<a href="../namespaces/GraphDS.Vertex.html" style="margin-left: 30px; padding-left: 0">Vertex</a>
|
||||
</div>
|
||||
<div id="namespace-997145886" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.DirectedVertex.html">DirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.UndirectedVertex.html">UndirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.Vertex.html">Vertex</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<div class="span10 offset2">
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<nav>
|
||||
<a href="../namespaces/GraphDS.Edge.html">\GraphDS\Edge</a> <i class="icon-level-up"></i>
|
||||
</nav>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal"><i class="icon-code"></i></a>
|
||||
|
||||
<h1><small>\GraphDS\Edge</small>DirectedEdge</h1>
|
||||
<p><em>Class defining a directed edge object.</em></p>
|
||||
|
||||
|
||||
|
||||
<section id="summary">
|
||||
<h2>Summary</h2>
|
||||
<section class="row-fluid heading">
|
||||
<section class="span4">
|
||||
<a href="#methods">Methods</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#properties">Properties</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#constants">Constants</a>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid public">
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Edge.DirectedEdge.html#method___construct" class="">__construct()</a><br />
|
||||
<a href="../classes/GraphDS.Edge.Edge.html#method_getValue" class="">getValue()</a><br />
|
||||
<a href="../classes/GraphDS.Edge.Edge.html#method_setValue" class="">setValue()</a><br />
|
||||
<a href="../classes/GraphDS.Edge.Edge.html#method_getConnectedVertices" class="">getConnectedVertices()</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Edge.Edge.html#property_vertices" class="">$vertices</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No constants found</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid protected">
|
||||
<section class="span4">
|
||||
<em>No protected methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Edge.Edge.html#property_value" class="">$value</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid private">
|
||||
<section class="span4">
|
||||
<em>No private methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No private properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>File</dt>
|
||||
<dd><a href="../files/Edge.DirectedEdge.html"><div class="path-wrapper">Edge/DirectedEdge.php</div></a></dd>
|
||||
<dt>Package</dt>
|
||||
<dd><div class="namespace-wrapper">Default</div></dd>
|
||||
<dt>Class hierarchy</dt>
|
||||
<dd class="hierarchy">
|
||||
|
||||
<div class="namespace-wrapper"><a href="../classes/GraphDS.Edge.Edge.html">\GraphDS\Edge\Edge</a></div>
|
||||
<div class="namespace-wrapper">\GraphDS\Edge\DirectedEdge</div>
|
||||
</dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="properties" name="properties"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<h2>Properties</h2>
|
||||
</div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_vertices" name="property_vertices" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$vertices</h3>
|
||||
<pre class="signature">$vertices : array</pre>
|
||||
<p><em>$vertices An array of vertices associated with the edge.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Edge.Edge.html"><div class="path-wrapper">\GraphDS\Edge\Edge</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_value" name="property_value" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="protected ">$value</h3>
|
||||
<pre class="signature">$value : float</pre>
|
||||
<p><em>$value A value/weight held by the edge.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
float
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Edge.Edge.html"><div class="path-wrapper">\GraphDS\Edge\Edge</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="methods" name="methods"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class"><h2>Methods</h2></div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method___construct" name="method___construct" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">__construct()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">__construct(string <span class="argument">$vertex1</span>, string <span class="argument">$vertex2</span>, float <span class="argument">$value = null</span>) </pre>
|
||||
<p><em>Constructor for DirectedEdge object.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex1 </td>
|
||||
<td><p>ID of first vertex</p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex2 </td>
|
||||
<td><p>ID of second vertex</p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>float</td>
|
||||
<td>$value </td>
|
||||
<td><p>The value/weight the edge should hold</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Edge.DirectedEdge.html"><div class="path-wrapper">\GraphDS\Edge\DirectedEdge</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_getValue" name="method_getValue" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">getValue()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">getValue() : float</pre>
|
||||
<p><em>Returns value/weight associated with this edge.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
float
|
||||
— <p>Value/weight associated with this edge</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Edge.Edge.html"><div class="path-wrapper">\GraphDS\Edge\Edge</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_setValue" name="method_setValue" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">setValue()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">setValue(float <span class="argument">$value = null</span>) </pre>
|
||||
<p><em>Sets the value/weight associated with this edge.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>float</td>
|
||||
<td>$value </td>
|
||||
<td><p>Value/weight to be associated with this edge</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Edge.Edge.html"><div class="path-wrapper">\GraphDS\Edge\Edge</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_getConnectedVertices" name="method_getConnectedVertices" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">getConnectedVertices()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">getConnectedVertices() : array</pre>
|
||||
<p><em>Returns an array of vertices connected by this edge.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
array
|
||||
— <p>Vertices connected by this edge</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Edge.Edge.html"><div class="path-wrapper">\GraphDS\Edge\Edge</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="source-view" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="source-view-label" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="source-view-label">DirectedEdge.php</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<pre data-src="../files/Edge/DirectedEdge.php.txt" class="language-php line-numbers"></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="row-fluid">
|
||||
<section class="span10 offset2">
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<section class="row-fluid footer-sections">
|
||||
<section class="span4">
|
||||
<h1><i class="icon-code"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-bar-chart"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../graphs/class.html">Class Hierarchy Diagram</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-pushpin"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../reports/errors.html">Errors</a></li>
|
||||
<li><a href="../reports/markers.html">Markers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<hr />
|
||||
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
|
||||
on April 2nd, 2018 at 23:46.
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,619 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
||||
<meta charset="utf-8"/>
|
||||
<title>API Documentation</title>
|
||||
<meta name="author" content=""/>
|
||||
<meta name="description" content=""/>
|
||||
|
||||
<link href="../css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
|
||||
<link href="../css/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="../css/prism.css" rel="stylesheet" media="all"/>
|
||||
<link href="../css/template.css" rel="stylesheet" media="all"/>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="../js/jquery-1.11.0.min.js"></script>
|
||||
<script src="../js/ui/1.10.4/jquery-ui.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.smooth-scroll.js"></script>
|
||||
<script src="../js/prism.min.js"></script>
|
||||
<!-- TODO: Add http://jscrollpane.kelvinluck.com/ to style the scrollbars for browsers not using webkit-->
|
||||
<script type="text/javascript">
|
||||
function loadExternalCodeSnippets() {
|
||||
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach(function (pre) {
|
||||
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
|
||||
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
|
||||
var language = 'php';
|
||||
|
||||
var code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
|
||||
pre.textContent = '';
|
||||
|
||||
code.textContent = 'Loading…';
|
||||
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
|
||||
Prism.highlightElement(code);
|
||||
}
|
||||
else if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
}
|
||||
else {
|
||||
code.textContent = '✖ Error: File does not exist or is empty';
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
loadExternalCodeSnippets();
|
||||
});
|
||||
$('#source-view').on('shown', function () {
|
||||
loadExternalCodeSnippets();
|
||||
})
|
||||
</script>
|
||||
|
||||
<link rel="shortcut icon" href="../images/favicon.ico"/>
|
||||
<link rel="apple-touch-icon" href="../images/apple-touch-icon.png"/>
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../images/apple-touch-icon-72x72.png"/>
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="../images/apple-touch-icon-114x114.png"/>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<i class="icon-ellipsis-vertical"></i>
|
||||
</a>
|
||||
<a class="brand" href="../index.html">API Documentation</a>
|
||||
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav pull-right">
|
||||
<li class="dropdown">
|
||||
<a href="../index.html" class="dropdown-toggle" data-toggle="dropdown">
|
||||
API Documentation <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="charts-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Charts <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../graphs/class.html">
|
||||
<i class="icon-list-alt"></i> Class hierarchy diagram
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="reports-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Reports <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../reports/errors.html">
|
||||
<i class="icon-list-alt"></i> Errors <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/markers.html">
|
||||
<i class="icon-list-alt"></i> Markers <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/deprecated.html">
|
||||
<i class="icon-list-alt"></i> Deprecated <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="go_to_top">-->
|
||||
<!--<a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a>-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
|
||||
<div id="___" class="container-fluid">
|
||||
<section class="row-fluid">
|
||||
<div class="span2 sidebar">
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-484695923"></a>
|
||||
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
|
||||
</div>
|
||||
<div id="namespace-484695923" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1477850883"></a>
|
||||
<a href="../namespaces/GraphDS.html" style="margin-left: 30px; padding-left: 0">GraphDS</a>
|
||||
</div>
|
||||
<div id="namespace-1477850883" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-809938228"></a>
|
||||
<a href="../namespaces/GraphDS.Algo.html" style="margin-left: 30px; padding-left: 0">Algo</a>
|
||||
</div>
|
||||
<div id="namespace-809938228" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-369423765"></a>
|
||||
<a href="../namespaces/GraphDS.Edge.html" style="margin-left: 30px; padding-left: 0">Edge</a>
|
||||
</div>
|
||||
<div id="namespace-369423765" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.DirectedEdge.html">DirectedEdge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.Edge.html">Edge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.UndirectedEdge.html">UndirectedEdge</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1390836110"></a>
|
||||
<a href="../namespaces/GraphDS.Graph.html" style="margin-left: 30px; padding-left: 0">Graph</a>
|
||||
</div>
|
||||
<div id="namespace-1390836110" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.DirectedGraph.html">DirectedGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.Graph.html">Graph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.UndirectedGraph.html">UndirectedGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1603624969"></a>
|
||||
<a href="../namespaces/GraphDS.Persistence.html" style="margin-left: 30px; padding-left: 0">Persistence</a>
|
||||
</div>
|
||||
<div id="namespace-1603624969" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ExportGraph.html">ExportGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ImportGraph.html">ImportGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-817144333"></a>
|
||||
<a href="../namespaces/GraphDS.Vertex.html" style="margin-left: 30px; padding-left: 0">Vertex</a>
|
||||
</div>
|
||||
<div id="namespace-817144333" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.DirectedVertex.html">DirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.UndirectedVertex.html">UndirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.Vertex.html">Vertex</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<div class="span10 offset2">
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<nav>
|
||||
<a href="../namespaces/GraphDS.Edge.html">\GraphDS\Edge</a> <i class="icon-level-up"></i>
|
||||
</nav>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal"><i class="icon-code"></i></a>
|
||||
|
||||
<h1><small>\GraphDS\Edge</small>Edge</h1>
|
||||
<p><em>Class defining a generic, extendable edge object.</em></p>
|
||||
|
||||
|
||||
|
||||
<section id="summary">
|
||||
<h2>Summary</h2>
|
||||
<section class="row-fluid heading">
|
||||
<section class="span4">
|
||||
<a href="#methods">Methods</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#properties">Properties</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#constants">Constants</a>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid public">
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Edge.Edge.html#method___construct" class="">__construct()</a><br />
|
||||
<a href="../classes/GraphDS.Edge.Edge.html#method_getValue" class="">getValue()</a><br />
|
||||
<a href="../classes/GraphDS.Edge.Edge.html#method_setValue" class="">setValue()</a><br />
|
||||
<a href="../classes/GraphDS.Edge.Edge.html#method_getConnectedVertices" class="">getConnectedVertices()</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Edge.Edge.html#property_vertices" class="">$vertices</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No constants found</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid protected">
|
||||
<section class="span4">
|
||||
<em>No protected methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Edge.Edge.html#property_value" class="">$value</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid private">
|
||||
<section class="span4">
|
||||
<em>No private methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No private properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>File</dt>
|
||||
<dd><a href="../files/Edge.Edge.html"><div class="path-wrapper">Edge/Edge.php</div></a></dd>
|
||||
<dt>Package</dt>
|
||||
<dd><div class="namespace-wrapper">Default</div></dd>
|
||||
<dt>Class hierarchy</dt>
|
||||
<dd class="hierarchy">
|
||||
<div class="namespace-wrapper">\GraphDS\Edge\Edge</div>
|
||||
</dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="properties" name="properties"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<h2>Properties</h2>
|
||||
</div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_vertices" name="property_vertices" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$vertices</h3>
|
||||
<pre class="signature">$vertices : array</pre>
|
||||
<p><em>$vertices An array of vertices associated with the edge.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_value" name="property_value" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="protected ">$value</h3>
|
||||
<pre class="signature">$value : float</pre>
|
||||
<p><em>$value A value/weight held by the edge.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
float
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="methods" name="methods"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class"><h2>Methods</h2></div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method___construct" name="method___construct" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">__construct()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">__construct() </pre>
|
||||
<p><em>Constructor for general Edge object.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Edge.Edge.html"><div class="path-wrapper">\GraphDS\Edge\Edge</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_getValue" name="method_getValue" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">getValue()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">getValue() : float</pre>
|
||||
<p><em>Returns value/weight associated with this edge.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
float
|
||||
— <p>Value/weight associated with this edge</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Edge.Edge.html"><div class="path-wrapper">\GraphDS\Edge\Edge</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_setValue" name="method_setValue" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">setValue()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">setValue(float <span class="argument">$value = null</span>) </pre>
|
||||
<p><em>Sets the value/weight associated with this edge.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>float</td>
|
||||
<td>$value </td>
|
||||
<td><p>Value/weight to be associated with this edge</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Edge.Edge.html"><div class="path-wrapper">\GraphDS\Edge\Edge</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_getConnectedVertices" name="method_getConnectedVertices" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">getConnectedVertices()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">getConnectedVertices() : array</pre>
|
||||
<p><em>Returns an array of vertices connected by this edge.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
array
|
||||
— <p>Vertices connected by this edge</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Edge.Edge.html"><div class="path-wrapper">\GraphDS\Edge\Edge</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="source-view" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="source-view-label" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="source-view-label">Edge.php</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<pre data-src="../files/Edge/Edge.php.txt" class="language-php line-numbers"></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="row-fluid">
|
||||
<section class="span10 offset2">
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<section class="row-fluid footer-sections">
|
||||
<section class="span4">
|
||||
<h1><i class="icon-code"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-bar-chart"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../graphs/class.html">Class Hierarchy Diagram</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-pushpin"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../reports/errors.html">Errors</a></li>
|
||||
<li><a href="../reports/markers.html">Markers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<hr />
|
||||
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
|
||||
on April 2nd, 2018 at 23:46.
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,643 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
||||
<meta charset="utf-8"/>
|
||||
<title>API Documentation</title>
|
||||
<meta name="author" content=""/>
|
||||
<meta name="description" content=""/>
|
||||
|
||||
<link href="../css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
|
||||
<link href="../css/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="../css/prism.css" rel="stylesheet" media="all"/>
|
||||
<link href="../css/template.css" rel="stylesheet" media="all"/>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="../js/jquery-1.11.0.min.js"></script>
|
||||
<script src="../js/ui/1.10.4/jquery-ui.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.smooth-scroll.js"></script>
|
||||
<script src="../js/prism.min.js"></script>
|
||||
<!-- TODO: Add http://jscrollpane.kelvinluck.com/ to style the scrollbars for browsers not using webkit-->
|
||||
<script type="text/javascript">
|
||||
function loadExternalCodeSnippets() {
|
||||
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach(function (pre) {
|
||||
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
|
||||
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
|
||||
var language = 'php';
|
||||
|
||||
var code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
|
||||
pre.textContent = '';
|
||||
|
||||
code.textContent = 'Loading…';
|
||||
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
|
||||
Prism.highlightElement(code);
|
||||
}
|
||||
else if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
}
|
||||
else {
|
||||
code.textContent = '✖ Error: File does not exist or is empty';
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
loadExternalCodeSnippets();
|
||||
});
|
||||
$('#source-view').on('shown', function () {
|
||||
loadExternalCodeSnippets();
|
||||
})
|
||||
</script>
|
||||
|
||||
<link rel="shortcut icon" href="../images/favicon.ico"/>
|
||||
<link rel="apple-touch-icon" href="../images/apple-touch-icon.png"/>
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../images/apple-touch-icon-72x72.png"/>
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="../images/apple-touch-icon-114x114.png"/>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<i class="icon-ellipsis-vertical"></i>
|
||||
</a>
|
||||
<a class="brand" href="../index.html">API Documentation</a>
|
||||
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav pull-right">
|
||||
<li class="dropdown">
|
||||
<a href="../index.html" class="dropdown-toggle" data-toggle="dropdown">
|
||||
API Documentation <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="charts-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Charts <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../graphs/class.html">
|
||||
<i class="icon-list-alt"></i> Class hierarchy diagram
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="reports-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Reports <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../reports/errors.html">
|
||||
<i class="icon-list-alt"></i> Errors <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/markers.html">
|
||||
<i class="icon-list-alt"></i> Markers <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/deprecated.html">
|
||||
<i class="icon-list-alt"></i> Deprecated <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="go_to_top">-->
|
||||
<!--<a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a>-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
|
||||
<div id="___" class="container-fluid">
|
||||
<section class="row-fluid">
|
||||
<div class="span2 sidebar">
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-1891884740"></a>
|
||||
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
|
||||
</div>
|
||||
<div id="namespace-1891884740" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-961780764"></a>
|
||||
<a href="../namespaces/GraphDS.html" style="margin-left: 30px; padding-left: 0">GraphDS</a>
|
||||
</div>
|
||||
<div id="namespace-961780764" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1520926752"></a>
|
||||
<a href="../namespaces/GraphDS.Algo.html" style="margin-left: 30px; padding-left: 0">Algo</a>
|
||||
</div>
|
||||
<div id="namespace-1520926752" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-812397646"></a>
|
||||
<a href="../namespaces/GraphDS.Edge.html" style="margin-left: 30px; padding-left: 0">Edge</a>
|
||||
</div>
|
||||
<div id="namespace-812397646" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.DirectedEdge.html">DirectedEdge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.Edge.html">Edge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.UndirectedEdge.html">UndirectedEdge</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1463724421"></a>
|
||||
<a href="../namespaces/GraphDS.Graph.html" style="margin-left: 30px; padding-left: 0">Graph</a>
|
||||
</div>
|
||||
<div id="namespace-1463724421" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.DirectedGraph.html">DirectedGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.Graph.html">Graph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.UndirectedGraph.html">UndirectedGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1566534988"></a>
|
||||
<a href="../namespaces/GraphDS.Persistence.html" style="margin-left: 30px; padding-left: 0">Persistence</a>
|
||||
</div>
|
||||
<div id="namespace-1566534988" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ExportGraph.html">ExportGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ImportGraph.html">ImportGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-83473477"></a>
|
||||
<a href="../namespaces/GraphDS.Vertex.html" style="margin-left: 30px; padding-left: 0">Vertex</a>
|
||||
</div>
|
||||
<div id="namespace-83473477" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.DirectedVertex.html">DirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.UndirectedVertex.html">UndirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.Vertex.html">Vertex</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<div class="span10 offset2">
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<nav>
|
||||
<a href="../namespaces/GraphDS.Edge.html">\GraphDS\Edge</a> <i class="icon-level-up"></i>
|
||||
</nav>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal"><i class="icon-code"></i></a>
|
||||
|
||||
<h1><small>\GraphDS\Edge</small>UndirectedEdge</h1>
|
||||
<p><em>Class defining an undirected edge object.</em></p>
|
||||
|
||||
|
||||
|
||||
<section id="summary">
|
||||
<h2>Summary</h2>
|
||||
<section class="row-fluid heading">
|
||||
<section class="span4">
|
||||
<a href="#methods">Methods</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#properties">Properties</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#constants">Constants</a>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid public">
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Edge.UndirectedEdge.html#method___construct" class="">__construct()</a><br />
|
||||
<a href="../classes/GraphDS.Edge.Edge.html#method_getValue" class="">getValue()</a><br />
|
||||
<a href="../classes/GraphDS.Edge.Edge.html#method_setValue" class="">setValue()</a><br />
|
||||
<a href="../classes/GraphDS.Edge.Edge.html#method_getConnectedVertices" class="">getConnectedVertices()</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Edge.Edge.html#property_vertices" class="">$vertices</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No constants found</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid protected">
|
||||
<section class="span4">
|
||||
<em>No protected methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Edge.Edge.html#property_value" class="">$value</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid private">
|
||||
<section class="span4">
|
||||
<em>No private methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No private properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>File</dt>
|
||||
<dd><a href="../files/Edge.UndirectedEdge.html"><div class="path-wrapper">Edge/UndirectedEdge.php</div></a></dd>
|
||||
<dt>Package</dt>
|
||||
<dd><div class="namespace-wrapper">Default</div></dd>
|
||||
<dt>Class hierarchy</dt>
|
||||
<dd class="hierarchy">
|
||||
|
||||
<div class="namespace-wrapper"><a href="../classes/GraphDS.Edge.Edge.html">\GraphDS\Edge\Edge</a></div>
|
||||
<div class="namespace-wrapper">\GraphDS\Edge\UndirectedEdge</div>
|
||||
</dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="properties" name="properties"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<h2>Properties</h2>
|
||||
</div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_vertices" name="property_vertices" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$vertices</h3>
|
||||
<pre class="signature">$vertices : array</pre>
|
||||
<p><em>$vertices An array of vertices associated with the edge.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Edge.Edge.html"><div class="path-wrapper">\GraphDS\Edge\Edge</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_value" name="property_value" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="protected ">$value</h3>
|
||||
<pre class="signature">$value : float</pre>
|
||||
<p><em>$value A value/weight held by the edge.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
float
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Edge.Edge.html"><div class="path-wrapper">\GraphDS\Edge\Edge</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="methods" name="methods"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class"><h2>Methods</h2></div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method___construct" name="method___construct" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">__construct()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">__construct(string <span class="argument">$vertex1</span>, string <span class="argument">$vertex2</span>, float <span class="argument">$value = null</span>) </pre>
|
||||
<p><em>Constructor for UndirectedEdge object.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex1 </td>
|
||||
<td><p>ID of first vertex</p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex2 </td>
|
||||
<td><p>ID of second vertex</p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>float</td>
|
||||
<td>$value </td>
|
||||
<td><p>The value/weight the edge should hold</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Edge.UndirectedEdge.html"><div class="path-wrapper">\GraphDS\Edge\UndirectedEdge</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_getValue" name="method_getValue" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">getValue()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">getValue() : float</pre>
|
||||
<p><em>Returns value/weight associated with this edge.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
float
|
||||
— <p>Value/weight associated with this edge</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Edge.Edge.html"><div class="path-wrapper">\GraphDS\Edge\Edge</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_setValue" name="method_setValue" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">setValue()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">setValue(float <span class="argument">$value = null</span>) </pre>
|
||||
<p><em>Sets the value/weight associated with this edge.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>float</td>
|
||||
<td>$value </td>
|
||||
<td><p>Value/weight to be associated with this edge</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Edge.Edge.html"><div class="path-wrapper">\GraphDS\Edge\Edge</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_getConnectedVertices" name="method_getConnectedVertices" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">getConnectedVertices()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">getConnectedVertices() : array</pre>
|
||||
<p><em>Returns an array of vertices connected by this edge.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
array
|
||||
— <p>Vertices connected by this edge</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Edge.Edge.html"><div class="path-wrapper">\GraphDS\Edge\Edge</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="source-view" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="source-view-label" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="source-view-label">UndirectedEdge.php</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<pre data-src="../files/Edge/UndirectedEdge.php.txt" class="language-php line-numbers"></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="row-fluid">
|
||||
<section class="span10 offset2">
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<section class="row-fluid footer-sections">
|
||||
<section class="span4">
|
||||
<h1><i class="icon-code"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-bar-chart"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../graphs/class.html">Class Hierarchy Diagram</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-pushpin"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../reports/errors.html">Errors</a></li>
|
||||
<li><a href="../reports/markers.html">Markers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<hr />
|
||||
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
|
||||
on April 2nd, 2018 at 23:46.
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,881 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
||||
<meta charset="utf-8"/>
|
||||
<title>API Documentation</title>
|
||||
<meta name="author" content=""/>
|
||||
<meta name="description" content=""/>
|
||||
|
||||
<link href="../css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
|
||||
<link href="../css/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="../css/prism.css" rel="stylesheet" media="all"/>
|
||||
<link href="../css/template.css" rel="stylesheet" media="all"/>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="../js/jquery-1.11.0.min.js"></script>
|
||||
<script src="../js/ui/1.10.4/jquery-ui.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.smooth-scroll.js"></script>
|
||||
<script src="../js/prism.min.js"></script>
|
||||
<!-- TODO: Add http://jscrollpane.kelvinluck.com/ to style the scrollbars for browsers not using webkit-->
|
||||
<script type="text/javascript">
|
||||
function loadExternalCodeSnippets() {
|
||||
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach(function (pre) {
|
||||
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
|
||||
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
|
||||
var language = 'php';
|
||||
|
||||
var code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
|
||||
pre.textContent = '';
|
||||
|
||||
code.textContent = 'Loading…';
|
||||
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
|
||||
Prism.highlightElement(code);
|
||||
}
|
||||
else if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
}
|
||||
else {
|
||||
code.textContent = '✖ Error: File does not exist or is empty';
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
loadExternalCodeSnippets();
|
||||
});
|
||||
$('#source-view').on('shown', function () {
|
||||
loadExternalCodeSnippets();
|
||||
})
|
||||
</script>
|
||||
|
||||
<link rel="shortcut icon" href="../images/favicon.ico"/>
|
||||
<link rel="apple-touch-icon" href="../images/apple-touch-icon.png"/>
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../images/apple-touch-icon-72x72.png"/>
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="../images/apple-touch-icon-114x114.png"/>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<i class="icon-ellipsis-vertical"></i>
|
||||
</a>
|
||||
<a class="brand" href="../index.html">API Documentation</a>
|
||||
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav pull-right">
|
||||
<li class="dropdown">
|
||||
<a href="../index.html" class="dropdown-toggle" data-toggle="dropdown">
|
||||
API Documentation <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="charts-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Charts <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../graphs/class.html">
|
||||
<i class="icon-list-alt"></i> Class hierarchy diagram
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="reports-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Reports <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../reports/errors.html">
|
||||
<i class="icon-list-alt"></i> Errors <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/markers.html">
|
||||
<i class="icon-list-alt"></i> Markers <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/deprecated.html">
|
||||
<i class="icon-list-alt"></i> Deprecated <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="go_to_top">-->
|
||||
<!--<a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a>-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
|
||||
<div id="___" class="container-fluid">
|
||||
<section class="row-fluid">
|
||||
<div class="span2 sidebar">
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-1956296315"></a>
|
||||
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
|
||||
</div>
|
||||
<div id="namespace-1956296315" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-318335502"></a>
|
||||
<a href="../namespaces/GraphDS.html" style="margin-left: 30px; padding-left: 0">GraphDS</a>
|
||||
</div>
|
||||
<div id="namespace-318335502" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1496466052"></a>
|
||||
<a href="../namespaces/GraphDS.Algo.html" style="margin-left: 30px; padding-left: 0">Algo</a>
|
||||
</div>
|
||||
<div id="namespace-1496466052" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1816816260"></a>
|
||||
<a href="../namespaces/GraphDS.Edge.html" style="margin-left: 30px; padding-left: 0">Edge</a>
|
||||
</div>
|
||||
<div id="namespace-1816816260" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.DirectedEdge.html">DirectedEdge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.Edge.html">Edge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.UndirectedEdge.html">UndirectedEdge</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1075773059"></a>
|
||||
<a href="../namespaces/GraphDS.Graph.html" style="margin-left: 30px; padding-left: 0">Graph</a>
|
||||
</div>
|
||||
<div id="namespace-1075773059" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.DirectedGraph.html">DirectedGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.Graph.html">Graph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.UndirectedGraph.html">UndirectedGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1841285016"></a>
|
||||
<a href="../namespaces/GraphDS.Persistence.html" style="margin-left: 30px; padding-left: 0">Persistence</a>
|
||||
</div>
|
||||
<div id="namespace-1841285016" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ExportGraph.html">ExportGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ImportGraph.html">ImportGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-480488412"></a>
|
||||
<a href="../namespaces/GraphDS.Vertex.html" style="margin-left: 30px; padding-left: 0">Vertex</a>
|
||||
</div>
|
||||
<div id="namespace-480488412" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.DirectedVertex.html">DirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.UndirectedVertex.html">UndirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.Vertex.html">Vertex</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<div class="span10 offset2">
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<nav>
|
||||
<a href="../namespaces/GraphDS.Graph.html">\GraphDS\Graph</a> <i class="icon-level-up"></i>
|
||||
</nav>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal"><i class="icon-code"></i></a>
|
||||
|
||||
<h1><small>\GraphDS\Graph</small>DirectedGraph</h1>
|
||||
<p><em>Class defining a directed graph object.</em></p>
|
||||
|
||||
|
||||
|
||||
<section id="summary">
|
||||
<h2>Summary</h2>
|
||||
<section class="row-fluid heading">
|
||||
<section class="span4">
|
||||
<a href="#methods">Methods</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#properties">Properties</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#constants">Constants</a>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid public">
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Graph.DirectedGraph.html#method___construct" class="">__construct()</a><br />
|
||||
<a href="../classes/GraphDS.Graph.Graph.html#method_getVertexCount" class="">getVertexCount()</a><br />
|
||||
<a href="../classes/GraphDS.Graph.Graph.html#method_getEdgeCount" class="">getEdgeCount()</a><br />
|
||||
<a href="../classes/GraphDS.Graph.DirectedGraph.html#method_addVertex" class="">addVertex()</a><br />
|
||||
<a href="../classes/GraphDS.Graph.DirectedGraph.html#method_removeVertex" class="">removeVertex()</a><br />
|
||||
<a href="../classes/GraphDS.Graph.DirectedGraph.html#method_edge" class="">edge()</a><br />
|
||||
<a href="../classes/GraphDS.Graph.DirectedGraph.html#method_addEdge" class="">addEdge()</a><br />
|
||||
<a href="../classes/GraphDS.Graph.DirectedGraph.html#method_removeEdge" class="">removeEdge()</a><br />
|
||||
<a href="../classes/GraphDS.Graph.DirectedGraph.html#method_getTranspose" class="">getTranspose()</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Graph.Graph.html#property_vertices" class="">$vertices</a><br />
|
||||
<a href="../classes/GraphDS.Graph.Graph.html#property_edges" class="">$edges</a><br />
|
||||
<a href="../classes/GraphDS.Graph.Graph.html#property_directed" class="">$directed</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No constants found</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid protected">
|
||||
<section class="span4">
|
||||
<em>No protected methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No protected properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid private">
|
||||
<section class="span4">
|
||||
<em>No private methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No private properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>File</dt>
|
||||
<dd><a href="../files/Graph.DirectedGraph.html"><div class="path-wrapper">Graph/DirectedGraph.php</div></a></dd>
|
||||
<dt>Package</dt>
|
||||
<dd><div class="namespace-wrapper">Default</div></dd>
|
||||
<dt>Class hierarchy</dt>
|
||||
<dd class="hierarchy">
|
||||
|
||||
<div class="namespace-wrapper"><a href="../classes/GraphDS.Graph.Graph.html">\GraphDS\Graph\Graph</a></div>
|
||||
<div class="namespace-wrapper">\GraphDS\Graph\DirectedGraph</div>
|
||||
</dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="properties" name="properties"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<h2>Properties</h2>
|
||||
</div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_vertices" name="property_vertices" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$vertices</h3>
|
||||
<pre class="signature">$vertices : array</pre>
|
||||
<p><em>An array holding all vertices of the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.Graph.html"><div class="path-wrapper">\GraphDS\Graph\Graph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_edges" name="property_edges" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$edges</h3>
|
||||
<pre class="signature">$edges : array</pre>
|
||||
<p><em>An array holding all edges of the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.Graph.html"><div class="path-wrapper">\GraphDS\Graph\Graph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_directed" name="property_directed" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$directed</h3>
|
||||
<pre class="signature">$directed : boolean</pre>
|
||||
<p><em>Defines whether the graph is directed or not.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
boolean
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.Graph.html"><div class="path-wrapper">\GraphDS\Graph\Graph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="methods" name="methods"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class"><h2>Methods</h2></div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method___construct" name="method___construct" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">__construct()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">__construct() </pre>
|
||||
<p><em>Constructor for DirectedGraph object.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.DirectedGraph.html"><div class="path-wrapper">\GraphDS\Graph\DirectedGraph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_getVertexCount" name="method_getVertexCount" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">getVertexCount()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">getVertexCount() : integer</pre>
|
||||
<p><em>Returns the number of vertices in the graph.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
integer
|
||||
— <p>Number of vertices in the graph</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.Graph.html"><div class="path-wrapper">\GraphDS\Graph\Graph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_getEdgeCount" name="method_getEdgeCount" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">getEdgeCount()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">getEdgeCount() : integer</pre>
|
||||
<p><em>Returns the number of edges in the graph.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
integer
|
||||
— <p>Number of edges in the graph</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.Graph.html"><div class="path-wrapper">\GraphDS\Graph\Graph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_addVertex" name="method_addVertex" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">addVertex()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">addVertex(string <span class="argument">$vertex</span>) </pre>
|
||||
<p><em>Adds a directed vertex to the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex </td>
|
||||
<td><p>ID of the vertex</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.DirectedGraph.html"><div class="path-wrapper">\GraphDS\Graph\DirectedGraph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_removeVertex" name="method_removeVertex" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">removeVertex()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">removeVertex(string <span class="argument">$vertex</span>) </pre>
|
||||
<p><em>Removes a directed vertex from the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex </td>
|
||||
<td><p>ID of the vertex</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h4>Throws</h4>
|
||||
<dl>
|
||||
<dt>\InvalidArgumentException</dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.DirectedGraph.html"><div class="path-wrapper">\GraphDS\Graph\DirectedGraph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_edge" name="method_edge" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">edge()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">edge(string <span class="argument">$vertex1</span>, string <span class="argument">$vertex2</span>) : object</pre>
|
||||
<p><em>Returns an edge object in the graph from $vertex1 to $vertex2.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex1 </td>
|
||||
<td><p>ID of first vertex</p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex2 </td>
|
||||
<td><p>ID of second vertex</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h4>Throws</h4>
|
||||
<dl>
|
||||
<dt>\InvalidArgumentException</dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
<h4>Returns</h4>
|
||||
object
|
||||
— <p>Instance of DirectedEdge from $vertex1 to $vertex2</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.DirectedGraph.html"><div class="path-wrapper">\GraphDS\Graph\DirectedGraph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_addEdge" name="method_addEdge" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">addEdge()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">addEdge(string <span class="argument">$vertex1</span>, string <span class="argument">$vertex2</span>, float <span class="argument">$value = null</span>) </pre>
|
||||
<p><em>Adds a directed edge between two directed vertices ($vertex1 to $vertex2).</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex1 </td>
|
||||
<td><p>ID of first vertex</p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex2 </td>
|
||||
<td><p>ID of second vertex</p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>float</td>
|
||||
<td>$value </td>
|
||||
<td><p>The value/weight the edge should hold</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h4>Throws</h4>
|
||||
<dl>
|
||||
<dt>\InvalidArgumentException</dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.DirectedGraph.html"><div class="path-wrapper">\GraphDS\Graph\DirectedGraph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_removeEdge" name="method_removeEdge" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">removeEdge()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">removeEdge(string <span class="argument">$vertex1</span>, string <span class="argument">$vertex2</span>) </pre>
|
||||
<p><em>Removes a directed edge between two directed vertices ($vertex1 to $vertex2).</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex1 </td>
|
||||
<td><p>ID of first vertex</p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex2 </td>
|
||||
<td><p>ID of second vertex</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h4>Throws</h4>
|
||||
<dl>
|
||||
<dt>\InvalidArgumentException</dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.DirectedGraph.html"><div class="path-wrapper">\GraphDS\Graph\DirectedGraph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_getTranspose" name="method_getTranspose" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">getTranspose()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">getTranspose() : \GraphDS\Graph\DirectedGraph</pre>
|
||||
<p><em>Transposes the graph, reversing each directed edge.</em></p>
|
||||
|
||||
|
||||
|
||||
<h4>Throws</h4>
|
||||
<dl>
|
||||
<dt>\InvalidArgumentException</dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
<h4>Returns</h4>
|
||||
<a href="../classes/GraphDS.Graph.DirectedGraph.html">\GraphDS\Graph\DirectedGraph</a>
|
||||
— <p>The transposed graph</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.DirectedGraph.html"><div class="path-wrapper">\GraphDS\Graph\DirectedGraph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="source-view" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="source-view-label" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="source-view-label">DirectedGraph.php</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<pre data-src="../files/Graph/DirectedGraph.php.txt" class="language-php line-numbers"></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="row-fluid">
|
||||
<section class="span10 offset2">
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<section class="row-fluid footer-sections">
|
||||
<section class="span4">
|
||||
<h1><i class="icon-code"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-bar-chart"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../graphs/class.html">Class Hierarchy Diagram</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-pushpin"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../reports/errors.html">Errors</a></li>
|
||||
<li><a href="../reports/markers.html">Markers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<hr />
|
||||
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
|
||||
on April 2nd, 2018 at 23:46.
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,608 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
||||
<meta charset="utf-8"/>
|
||||
<title>API Documentation</title>
|
||||
<meta name="author" content=""/>
|
||||
<meta name="description" content=""/>
|
||||
|
||||
<link href="../css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
|
||||
<link href="../css/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="../css/prism.css" rel="stylesheet" media="all"/>
|
||||
<link href="../css/template.css" rel="stylesheet" media="all"/>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="../js/jquery-1.11.0.min.js"></script>
|
||||
<script src="../js/ui/1.10.4/jquery-ui.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.smooth-scroll.js"></script>
|
||||
<script src="../js/prism.min.js"></script>
|
||||
<!-- TODO: Add http://jscrollpane.kelvinluck.com/ to style the scrollbars for browsers not using webkit-->
|
||||
<script type="text/javascript">
|
||||
function loadExternalCodeSnippets() {
|
||||
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach(function (pre) {
|
||||
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
|
||||
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
|
||||
var language = 'php';
|
||||
|
||||
var code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
|
||||
pre.textContent = '';
|
||||
|
||||
code.textContent = 'Loading…';
|
||||
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
|
||||
Prism.highlightElement(code);
|
||||
}
|
||||
else if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
}
|
||||
else {
|
||||
code.textContent = '✖ Error: File does not exist or is empty';
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
loadExternalCodeSnippets();
|
||||
});
|
||||
$('#source-view').on('shown', function () {
|
||||
loadExternalCodeSnippets();
|
||||
})
|
||||
</script>
|
||||
|
||||
<link rel="shortcut icon" href="../images/favicon.ico"/>
|
||||
<link rel="apple-touch-icon" href="../images/apple-touch-icon.png"/>
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../images/apple-touch-icon-72x72.png"/>
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="../images/apple-touch-icon-114x114.png"/>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<i class="icon-ellipsis-vertical"></i>
|
||||
</a>
|
||||
<a class="brand" href="../index.html">API Documentation</a>
|
||||
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav pull-right">
|
||||
<li class="dropdown">
|
||||
<a href="../index.html" class="dropdown-toggle" data-toggle="dropdown">
|
||||
API Documentation <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="charts-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Charts <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../graphs/class.html">
|
||||
<i class="icon-list-alt"></i> Class hierarchy diagram
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="reports-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Reports <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../reports/errors.html">
|
||||
<i class="icon-list-alt"></i> Errors <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/markers.html">
|
||||
<i class="icon-list-alt"></i> Markers <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/deprecated.html">
|
||||
<i class="icon-list-alt"></i> Deprecated <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="go_to_top">-->
|
||||
<!--<a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a>-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
|
||||
<div id="___" class="container-fluid">
|
||||
<section class="row-fluid">
|
||||
<div class="span2 sidebar">
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-1625438920"></a>
|
||||
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
|
||||
</div>
|
||||
<div id="namespace-1625438920" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1154556062"></a>
|
||||
<a href="../namespaces/GraphDS.html" style="margin-left: 30px; padding-left: 0">GraphDS</a>
|
||||
</div>
|
||||
<div id="namespace-1154556062" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-2076158892"></a>
|
||||
<a href="../namespaces/GraphDS.Algo.html" style="margin-left: 30px; padding-left: 0">Algo</a>
|
||||
</div>
|
||||
<div id="namespace-2076158892" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1297576016"></a>
|
||||
<a href="../namespaces/GraphDS.Edge.html" style="margin-left: 30px; padding-left: 0">Edge</a>
|
||||
</div>
|
||||
<div id="namespace-1297576016" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.DirectedEdge.html">DirectedEdge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.Edge.html">Edge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.UndirectedEdge.html">UndirectedEdge</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1478075863"></a>
|
||||
<a href="../namespaces/GraphDS.Graph.html" style="margin-left: 30px; padding-left: 0">Graph</a>
|
||||
</div>
|
||||
<div id="namespace-1478075863" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.DirectedGraph.html">DirectedGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.Graph.html">Graph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.UndirectedGraph.html">UndirectedGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1061496184"></a>
|
||||
<a href="../namespaces/GraphDS.Persistence.html" style="margin-left: 30px; padding-left: 0">Persistence</a>
|
||||
</div>
|
||||
<div id="namespace-1061496184" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ExportGraph.html">ExportGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ImportGraph.html">ImportGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1159323229"></a>
|
||||
<a href="../namespaces/GraphDS.Vertex.html" style="margin-left: 30px; padding-left: 0">Vertex</a>
|
||||
</div>
|
||||
<div id="namespace-1159323229" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.DirectedVertex.html">DirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.UndirectedVertex.html">UndirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.Vertex.html">Vertex</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<div class="span10 offset2">
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<nav>
|
||||
<a href="../namespaces/GraphDS.Graph.html">\GraphDS\Graph</a> <i class="icon-level-up"></i>
|
||||
</nav>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal"><i class="icon-code"></i></a>
|
||||
|
||||
<h1><small>\GraphDS\Graph</small>Graph</h1>
|
||||
<p><em>Class defining a generic, extendable graph object.</em></p>
|
||||
|
||||
|
||||
|
||||
<section id="summary">
|
||||
<h2>Summary</h2>
|
||||
<section class="row-fluid heading">
|
||||
<section class="span4">
|
||||
<a href="#methods">Methods</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#properties">Properties</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#constants">Constants</a>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid public">
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Graph.Graph.html#method___construct" class="">__construct()</a><br />
|
||||
<a href="../classes/GraphDS.Graph.Graph.html#method_getVertexCount" class="">getVertexCount()</a><br />
|
||||
<a href="../classes/GraphDS.Graph.Graph.html#method_getEdgeCount" class="">getEdgeCount()</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Graph.Graph.html#property_vertices" class="">$vertices</a><br />
|
||||
<a href="../classes/GraphDS.Graph.Graph.html#property_edges" class="">$edges</a><br />
|
||||
<a href="../classes/GraphDS.Graph.Graph.html#property_directed" class="">$directed</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No constants found</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid protected">
|
||||
<section class="span4">
|
||||
<em>No protected methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No protected properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid private">
|
||||
<section class="span4">
|
||||
<em>No private methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No private properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>File</dt>
|
||||
<dd><a href="../files/Graph.Graph.html"><div class="path-wrapper">Graph/Graph.php</div></a></dd>
|
||||
<dt>Package</dt>
|
||||
<dd><div class="namespace-wrapper">Default</div></dd>
|
||||
<dt>Class hierarchy</dt>
|
||||
<dd class="hierarchy">
|
||||
<div class="namespace-wrapper">\GraphDS\Graph\Graph</div>
|
||||
</dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="properties" name="properties"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<h2>Properties</h2>
|
||||
</div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_vertices" name="property_vertices" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$vertices</h3>
|
||||
<pre class="signature">$vertices : array</pre>
|
||||
<p><em>An array holding all vertices of the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_edges" name="property_edges" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$edges</h3>
|
||||
<pre class="signature">$edges : array</pre>
|
||||
<p><em>An array holding all edges of the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_directed" name="property_directed" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$directed</h3>
|
||||
<pre class="signature">$directed : boolean</pre>
|
||||
<p><em>Defines whether the graph is directed or not.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
boolean
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="methods" name="methods"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class"><h2>Methods</h2></div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method___construct" name="method___construct" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">__construct()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">__construct() </pre>
|
||||
<p><em>Constructor for general Graph object.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.Graph.html"><div class="path-wrapper">\GraphDS\Graph\Graph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_getVertexCount" name="method_getVertexCount" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">getVertexCount()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">getVertexCount() : integer</pre>
|
||||
<p><em>Returns the number of vertices in the graph.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
integer
|
||||
— <p>Number of vertices in the graph</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.Graph.html"><div class="path-wrapper">\GraphDS\Graph\Graph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_getEdgeCount" name="method_getEdgeCount" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">getEdgeCount()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">getEdgeCount() : integer</pre>
|
||||
<p><em>Returns the number of edges in the graph.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
integer
|
||||
— <p>Number of edges in the graph</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.Graph.html"><div class="path-wrapper">\GraphDS\Graph\Graph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="source-view" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="source-view-label" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="source-view-label">Graph.php</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<pre data-src="../files/Graph/Graph.php.txt" class="language-php line-numbers"></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="row-fluid">
|
||||
<section class="span10 offset2">
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<section class="row-fluid footer-sections">
|
||||
<section class="span4">
|
||||
<h1><i class="icon-code"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-bar-chart"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../graphs/class.html">Class Hierarchy Diagram</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-pushpin"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../reports/errors.html">Errors</a></li>
|
||||
<li><a href="../reports/markers.html">Markers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<hr />
|
||||
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
|
||||
on April 2nd, 2018 at 23:46.
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,844 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
||||
<meta charset="utf-8"/>
|
||||
<title>API Documentation</title>
|
||||
<meta name="author" content=""/>
|
||||
<meta name="description" content=""/>
|
||||
|
||||
<link href="../css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
|
||||
<link href="../css/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="../css/prism.css" rel="stylesheet" media="all"/>
|
||||
<link href="../css/template.css" rel="stylesheet" media="all"/>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="../js/jquery-1.11.0.min.js"></script>
|
||||
<script src="../js/ui/1.10.4/jquery-ui.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.smooth-scroll.js"></script>
|
||||
<script src="../js/prism.min.js"></script>
|
||||
<!-- TODO: Add http://jscrollpane.kelvinluck.com/ to style the scrollbars for browsers not using webkit-->
|
||||
<script type="text/javascript">
|
||||
function loadExternalCodeSnippets() {
|
||||
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach(function (pre) {
|
||||
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
|
||||
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
|
||||
var language = 'php';
|
||||
|
||||
var code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
|
||||
pre.textContent = '';
|
||||
|
||||
code.textContent = 'Loading…';
|
||||
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
|
||||
Prism.highlightElement(code);
|
||||
}
|
||||
else if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
}
|
||||
else {
|
||||
code.textContent = '✖ Error: File does not exist or is empty';
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
loadExternalCodeSnippets();
|
||||
});
|
||||
$('#source-view').on('shown', function () {
|
||||
loadExternalCodeSnippets();
|
||||
})
|
||||
</script>
|
||||
|
||||
<link rel="shortcut icon" href="../images/favicon.ico"/>
|
||||
<link rel="apple-touch-icon" href="../images/apple-touch-icon.png"/>
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../images/apple-touch-icon-72x72.png"/>
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="../images/apple-touch-icon-114x114.png"/>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<i class="icon-ellipsis-vertical"></i>
|
||||
</a>
|
||||
<a class="brand" href="../index.html">API Documentation</a>
|
||||
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav pull-right">
|
||||
<li class="dropdown">
|
||||
<a href="../index.html" class="dropdown-toggle" data-toggle="dropdown">
|
||||
API Documentation <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="charts-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Charts <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../graphs/class.html">
|
||||
<i class="icon-list-alt"></i> Class hierarchy diagram
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="reports-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Reports <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../reports/errors.html">
|
||||
<i class="icon-list-alt"></i> Errors <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/markers.html">
|
||||
<i class="icon-list-alt"></i> Markers <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/deprecated.html">
|
||||
<i class="icon-list-alt"></i> Deprecated <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="go_to_top">-->
|
||||
<!--<a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a>-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
|
||||
<div id="___" class="container-fluid">
|
||||
<section class="row-fluid">
|
||||
<div class="span2 sidebar">
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-105117339"></a>
|
||||
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
|
||||
</div>
|
||||
<div id="namespace-105117339" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1950890055"></a>
|
||||
<a href="../namespaces/GraphDS.html" style="margin-left: 30px; padding-left: 0">GraphDS</a>
|
||||
</div>
|
||||
<div id="namespace-1950890055" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1486601058"></a>
|
||||
<a href="../namespaces/GraphDS.Algo.html" style="margin-left: 30px; padding-left: 0">Algo</a>
|
||||
</div>
|
||||
<div id="namespace-1486601058" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1110217430"></a>
|
||||
<a href="../namespaces/GraphDS.Edge.html" style="margin-left: 30px; padding-left: 0">Edge</a>
|
||||
</div>
|
||||
<div id="namespace-1110217430" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.DirectedEdge.html">DirectedEdge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.Edge.html">Edge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.UndirectedEdge.html">UndirectedEdge</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1314283146"></a>
|
||||
<a href="../namespaces/GraphDS.Graph.html" style="margin-left: 30px; padding-left: 0">Graph</a>
|
||||
</div>
|
||||
<div id="namespace-1314283146" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.DirectedGraph.html">DirectedGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.Graph.html">Graph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.UndirectedGraph.html">UndirectedGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1277339002"></a>
|
||||
<a href="../namespaces/GraphDS.Persistence.html" style="margin-left: 30px; padding-left: 0">Persistence</a>
|
||||
</div>
|
||||
<div id="namespace-1277339002" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ExportGraph.html">ExportGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ImportGraph.html">ImportGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1252427913"></a>
|
||||
<a href="../namespaces/GraphDS.Vertex.html" style="margin-left: 30px; padding-left: 0">Vertex</a>
|
||||
</div>
|
||||
<div id="namespace-1252427913" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.DirectedVertex.html">DirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.UndirectedVertex.html">UndirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.Vertex.html">Vertex</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<div class="span10 offset2">
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<nav>
|
||||
<a href="../namespaces/GraphDS.Graph.html">\GraphDS\Graph</a> <i class="icon-level-up"></i>
|
||||
</nav>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal"><i class="icon-code"></i></a>
|
||||
|
||||
<h1><small>\GraphDS\Graph</small>UndirectedGraph</h1>
|
||||
<p><em>Class defining an undirected graph object.</em></p>
|
||||
|
||||
|
||||
|
||||
<section id="summary">
|
||||
<h2>Summary</h2>
|
||||
<section class="row-fluid heading">
|
||||
<section class="span4">
|
||||
<a href="#methods">Methods</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#properties">Properties</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#constants">Constants</a>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid public">
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Graph.UndirectedGraph.html#method___construct" class="">__construct()</a><br />
|
||||
<a href="../classes/GraphDS.Graph.Graph.html#method_getVertexCount" class="">getVertexCount()</a><br />
|
||||
<a href="../classes/GraphDS.Graph.Graph.html#method_getEdgeCount" class="">getEdgeCount()</a><br />
|
||||
<a href="../classes/GraphDS.Graph.UndirectedGraph.html#method_addVertex" class="">addVertex()</a><br />
|
||||
<a href="../classes/GraphDS.Graph.UndirectedGraph.html#method_removeVertex" class="">removeVertex()</a><br />
|
||||
<a href="../classes/GraphDS.Graph.UndirectedGraph.html#method_edge" class="">edge()</a><br />
|
||||
<a href="../classes/GraphDS.Graph.UndirectedGraph.html#method_addEdge" class="">addEdge()</a><br />
|
||||
<a href="../classes/GraphDS.Graph.UndirectedGraph.html#method_removeEdge" class="">removeEdge()</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Graph.Graph.html#property_vertices" class="">$vertices</a><br />
|
||||
<a href="../classes/GraphDS.Graph.Graph.html#property_edges" class="">$edges</a><br />
|
||||
<a href="../classes/GraphDS.Graph.Graph.html#property_directed" class="">$directed</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No constants found</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid protected">
|
||||
<section class="span4">
|
||||
<em>No protected methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No protected properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid private">
|
||||
<section class="span4">
|
||||
<em>No private methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No private properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>File</dt>
|
||||
<dd><a href="../files/Graph.UndirectedGraph.html"><div class="path-wrapper">Graph/UndirectedGraph.php</div></a></dd>
|
||||
<dt>Package</dt>
|
||||
<dd><div class="namespace-wrapper">Default</div></dd>
|
||||
<dt>Class hierarchy</dt>
|
||||
<dd class="hierarchy">
|
||||
|
||||
<div class="namespace-wrapper"><a href="../classes/GraphDS.Graph.Graph.html">\GraphDS\Graph\Graph</a></div>
|
||||
<div class="namespace-wrapper">\GraphDS\Graph\UndirectedGraph</div>
|
||||
</dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="properties" name="properties"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<h2>Properties</h2>
|
||||
</div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_vertices" name="property_vertices" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$vertices</h3>
|
||||
<pre class="signature">$vertices : array</pre>
|
||||
<p><em>An array holding all vertices of the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.Graph.html"><div class="path-wrapper">\GraphDS\Graph\Graph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_edges" name="property_edges" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$edges</h3>
|
||||
<pre class="signature">$edges : array</pre>
|
||||
<p><em>An array holding all edges of the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.Graph.html"><div class="path-wrapper">\GraphDS\Graph\Graph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_directed" name="property_directed" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$directed</h3>
|
||||
<pre class="signature">$directed : boolean</pre>
|
||||
<p><em>Defines whether the graph is directed or not.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
boolean
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.Graph.html"><div class="path-wrapper">\GraphDS\Graph\Graph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="methods" name="methods"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class"><h2>Methods</h2></div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method___construct" name="method___construct" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">__construct()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">__construct() </pre>
|
||||
<p><em>Constructor for UndirectedGraph object.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.UndirectedGraph.html"><div class="path-wrapper">\GraphDS\Graph\UndirectedGraph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_getVertexCount" name="method_getVertexCount" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">getVertexCount()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">getVertexCount() : integer</pre>
|
||||
<p><em>Returns the number of vertices in the graph.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
integer
|
||||
— <p>Number of vertices in the graph</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.Graph.html"><div class="path-wrapper">\GraphDS\Graph\Graph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_getEdgeCount" name="method_getEdgeCount" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">getEdgeCount()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">getEdgeCount() : integer</pre>
|
||||
<p><em>Returns the number of edges in the graph.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
integer
|
||||
— <p>Number of edges in the graph</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.Graph.html"><div class="path-wrapper">\GraphDS\Graph\Graph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_addVertex" name="method_addVertex" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">addVertex()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">addVertex(string <span class="argument">$vertex</span>) </pre>
|
||||
<p><em>Adds an undirected vertex to the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex </td>
|
||||
<td><p>ID of the vertex</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.UndirectedGraph.html"><div class="path-wrapper">\GraphDS\Graph\UndirectedGraph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_removeVertex" name="method_removeVertex" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">removeVertex()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">removeVertex(string <span class="argument">$vertex</span>) </pre>
|
||||
<p><em>Removes an undirected vertex from the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex </td>
|
||||
<td><p>ID of the vertex</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h4>Throws</h4>
|
||||
<dl>
|
||||
<dt>\InvalidArgumentException</dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.UndirectedGraph.html"><div class="path-wrapper">\GraphDS\Graph\UndirectedGraph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_edge" name="method_edge" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">edge()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">edge(string <span class="argument">$vertex1</span>, string <span class="argument">$vertex2</span>) : object</pre>
|
||||
<p><em>Returns an edge object in the graph, regardless of vertex order (undirected).</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex1 </td>
|
||||
<td><p>ID of first vertex</p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex2 </td>
|
||||
<td><p>ID of second vertex</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h4>Throws</h4>
|
||||
<dl>
|
||||
<dt>\InvalidArgumentException</dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
<h4>Returns</h4>
|
||||
object
|
||||
— <p>Instance of UndirectedEdge between $vertex1 and $vertex2</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.UndirectedGraph.html"><div class="path-wrapper">\GraphDS\Graph\UndirectedGraph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_addEdge" name="method_addEdge" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">addEdge()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">addEdge(string <span class="argument">$vertex1</span>, string <span class="argument">$vertex2</span>, float <span class="argument">$value = null</span>) </pre>
|
||||
<p><em>Adds an undirected edge between two undirected vertices.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex1 </td>
|
||||
<td><p>ID of first vertex</p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex2 </td>
|
||||
<td><p>ID of second vertex</p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>float</td>
|
||||
<td>$value </td>
|
||||
<td><p>The value/weight the edge should hold</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h4>Throws</h4>
|
||||
<dl>
|
||||
<dt>\InvalidArgumentException</dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.UndirectedGraph.html"><div class="path-wrapper">\GraphDS\Graph\UndirectedGraph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_removeEdge" name="method_removeEdge" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">removeEdge()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">removeEdge(string <span class="argument">$vertex1</span>, string <span class="argument">$vertex2</span>) </pre>
|
||||
<p><em>Removes an undirected edge between two undirected vertices.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex1 </td>
|
||||
<td><p>ID of first undirected vertex</p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex2 </td>
|
||||
<td><p>ID of second undirected vertex</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h4>Throws</h4>
|
||||
<dl>
|
||||
<dt>\InvalidArgumentException</dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Graph.UndirectedGraph.html"><div class="path-wrapper">\GraphDS\Graph\UndirectedGraph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="source-view" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="source-view-label" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="source-view-label">UndirectedGraph.php</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<pre data-src="../files/Graph/UndirectedGraph.php.txt" class="language-php line-numbers"></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="row-fluid">
|
||||
<section class="span10 offset2">
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<section class="row-fluid footer-sections">
|
||||
<section class="span4">
|
||||
<h1><i class="icon-code"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-bar-chart"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../graphs/class.html">Class Hierarchy Diagram</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-pushpin"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../reports/errors.html">Errors</a></li>
|
||||
<li><a href="../reports/markers.html">Markers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<hr />
|
||||
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
|
||||
on April 2nd, 2018 at 23:46.
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,585 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
||||
<meta charset="utf-8"/>
|
||||
<title>API Documentation</title>
|
||||
<meta name="author" content=""/>
|
||||
<meta name="description" content=""/>
|
||||
|
||||
<link href="../css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
|
||||
<link href="../css/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="../css/prism.css" rel="stylesheet" media="all"/>
|
||||
<link href="../css/template.css" rel="stylesheet" media="all"/>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="../js/jquery-1.11.0.min.js"></script>
|
||||
<script src="../js/ui/1.10.4/jquery-ui.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.smooth-scroll.js"></script>
|
||||
<script src="../js/prism.min.js"></script>
|
||||
<!-- TODO: Add http://jscrollpane.kelvinluck.com/ to style the scrollbars for browsers not using webkit-->
|
||||
<script type="text/javascript">
|
||||
function loadExternalCodeSnippets() {
|
||||
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach(function (pre) {
|
||||
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
|
||||
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
|
||||
var language = 'php';
|
||||
|
||||
var code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
|
||||
pre.textContent = '';
|
||||
|
||||
code.textContent = 'Loading…';
|
||||
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
|
||||
Prism.highlightElement(code);
|
||||
}
|
||||
else if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
}
|
||||
else {
|
||||
code.textContent = '✖ Error: File does not exist or is empty';
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
loadExternalCodeSnippets();
|
||||
});
|
||||
$('#source-view').on('shown', function () {
|
||||
loadExternalCodeSnippets();
|
||||
})
|
||||
</script>
|
||||
|
||||
<link rel="shortcut icon" href="../images/favicon.ico"/>
|
||||
<link rel="apple-touch-icon" href="../images/apple-touch-icon.png"/>
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../images/apple-touch-icon-72x72.png"/>
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="../images/apple-touch-icon-114x114.png"/>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<i class="icon-ellipsis-vertical"></i>
|
||||
</a>
|
||||
<a class="brand" href="../index.html">API Documentation</a>
|
||||
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav pull-right">
|
||||
<li class="dropdown">
|
||||
<a href="../index.html" class="dropdown-toggle" data-toggle="dropdown">
|
||||
API Documentation <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="charts-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Charts <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../graphs/class.html">
|
||||
<i class="icon-list-alt"></i> Class hierarchy diagram
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="reports-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Reports <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../reports/errors.html">
|
||||
<i class="icon-list-alt"></i> Errors <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/markers.html">
|
||||
<i class="icon-list-alt"></i> Markers <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/deprecated.html">
|
||||
<i class="icon-list-alt"></i> Deprecated <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="go_to_top">-->
|
||||
<!--<a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a>-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
|
||||
<div id="___" class="container-fluid">
|
||||
<section class="row-fluid">
|
||||
<div class="span2 sidebar">
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-831737093"></a>
|
||||
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
|
||||
</div>
|
||||
<div id="namespace-831737093" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1168369289"></a>
|
||||
<a href="../namespaces/GraphDS.html" style="margin-left: 30px; padding-left: 0">GraphDS</a>
|
||||
</div>
|
||||
<div id="namespace-1168369289" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1786486038"></a>
|
||||
<a href="../namespaces/GraphDS.Algo.html" style="margin-left: 30px; padding-left: 0">Algo</a>
|
||||
</div>
|
||||
<div id="namespace-1786486038" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-407496536"></a>
|
||||
<a href="../namespaces/GraphDS.Edge.html" style="margin-left: 30px; padding-left: 0">Edge</a>
|
||||
</div>
|
||||
<div id="namespace-407496536" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.DirectedEdge.html">DirectedEdge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.Edge.html">Edge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.UndirectedEdge.html">UndirectedEdge</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-389755054"></a>
|
||||
<a href="../namespaces/GraphDS.Graph.html" style="margin-left: 30px; padding-left: 0">Graph</a>
|
||||
</div>
|
||||
<div id="namespace-389755054" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.DirectedGraph.html">DirectedGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.Graph.html">Graph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.UndirectedGraph.html">UndirectedGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-762525962"></a>
|
||||
<a href="../namespaces/GraphDS.Persistence.html" style="margin-left: 30px; padding-left: 0">Persistence</a>
|
||||
</div>
|
||||
<div id="namespace-762525962" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ExportGraph.html">ExportGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ImportGraph.html">ImportGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1150682084"></a>
|
||||
<a href="../namespaces/GraphDS.Vertex.html" style="margin-left: 30px; padding-left: 0">Vertex</a>
|
||||
</div>
|
||||
<div id="namespace-1150682084" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.DirectedVertex.html">DirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.UndirectedVertex.html">UndirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.Vertex.html">Vertex</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<div class="span10 offset2">
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<nav>
|
||||
<a href="../namespaces/GraphDS.Persistence.html">\GraphDS\Persistence</a> <i class="icon-level-up"></i>
|
||||
</nav>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal"><i class="icon-code"></i></a>
|
||||
|
||||
<h1><small>\GraphDS\Persistence</small>ExportGraph</h1>
|
||||
<p><em>Class defining the graph exporter methods.</em></p>
|
||||
|
||||
|
||||
|
||||
<section id="summary">
|
||||
<h2>Summary</h2>
|
||||
<section class="row-fluid heading">
|
||||
<section class="span4">
|
||||
<a href="#methods">Methods</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#properties">Properties</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#constants">Constants</a>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid public">
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Persistence.ExportGraph.html#method___construct" class="">__construct()</a><br />
|
||||
<a href="../classes/GraphDS.Persistence.ExportGraph.html#method_getGraphML" class="">getGraphML()</a><br />
|
||||
<a href="../classes/GraphDS.Persistence.ExportGraph.html#method_saveToFile" class="">saveToFile()</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Persistence.ExportGraph.html#property_graph" class="">$graph</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No constants found</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid protected">
|
||||
<section class="span4">
|
||||
<em>No protected methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No protected properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid private">
|
||||
<section class="span4">
|
||||
<em>No private methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No private properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>File</dt>
|
||||
<dd><a href="../files/Persistence.ExportGraph.html"><div class="path-wrapper">Persistence/ExportGraph.php</div></a></dd>
|
||||
<dt>Package</dt>
|
||||
<dd><div class="namespace-wrapper">Default</div></dd>
|
||||
<dt>Class hierarchy</dt>
|
||||
<dd class="hierarchy">
|
||||
<div class="namespace-wrapper">\GraphDS\Persistence\ExportGraph</div>
|
||||
</dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="properties" name="properties"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<h2>Properties</h2>
|
||||
</div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_graph" name="property_graph" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$graph</h3>
|
||||
<pre class="signature">$graph : \GraphDS\Graph\Graph</pre>
|
||||
<p><em>Reference to the graph.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
<a href="../classes/GraphDS.Graph.Graph.html">\GraphDS\Graph\Graph</a>
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="methods" name="methods"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class"><h2>Methods</h2></div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method___construct" name="method___construct" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">__construct()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">__construct(\GraphDS\Graph\Graph <span class="argument">$graph</span>) </pre>
|
||||
<p><em>Constructor for the graph exporter.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td><a href="../classes/GraphDS.Graph.Graph.html">\GraphDS\Graph\Graph</a></td>
|
||||
<td>$graph </td>
|
||||
<td><p>The graph to be exported</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h4>Throws</h4>
|
||||
<dl>
|
||||
<dt>\InvalidArgumentException</dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Persistence.ExportGraph.html"><div class="path-wrapper">\GraphDS\Persistence\ExportGraph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_getGraphML" name="method_getGraphML" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">getGraphML()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">getGraphML() : string</pre>
|
||||
<p><em>Returns the GraphML output representing the graph.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
string
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Persistence.ExportGraph.html"><div class="path-wrapper">\GraphDS\Persistence\ExportGraph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_saveToFile" name="method_saveToFile" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">saveToFile()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">saveToFile(mixed <span class="argument">$data</span>, string <span class="argument">$file</span>) </pre>
|
||||
<p><em>Saves given data to a files.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>mixed</td>
|
||||
<td>$data </td>
|
||||
<td><p>The data to be saved</p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$file </td>
|
||||
<td><p>Filename where the data should be saved to</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<h4>Throws</h4>
|
||||
<dl>
|
||||
<dt>\InvalidArgumentException</dt>
|
||||
<dd></dd>
|
||||
</dl>
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Persistence.ExportGraph.html"><div class="path-wrapper">\GraphDS\Persistence\ExportGraph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="source-view" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="source-view-label" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="source-view-label">ExportGraph.php</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<pre data-src="../files/Persistence/ExportGraph.php.txt" class="language-php line-numbers"></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="row-fluid">
|
||||
<section class="span10 offset2">
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<section class="row-fluid footer-sections">
|
||||
<section class="span4">
|
||||
<h1><i class="icon-code"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-bar-chart"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../graphs/class.html">Class Hierarchy Diagram</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-pushpin"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../reports/errors.html">Errors</a></li>
|
||||
<li><a href="../reports/markers.html">Markers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<hr />
|
||||
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
|
||||
on April 2nd, 2018 at 23:46.
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,502 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
||||
<meta charset="utf-8"/>
|
||||
<title>API Documentation</title>
|
||||
<meta name="author" content=""/>
|
||||
<meta name="description" content=""/>
|
||||
|
||||
<link href="../css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
|
||||
<link href="../css/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="../css/prism.css" rel="stylesheet" media="all"/>
|
||||
<link href="../css/template.css" rel="stylesheet" media="all"/>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="../js/jquery-1.11.0.min.js"></script>
|
||||
<script src="../js/ui/1.10.4/jquery-ui.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.smooth-scroll.js"></script>
|
||||
<script src="../js/prism.min.js"></script>
|
||||
<!-- TODO: Add http://jscrollpane.kelvinluck.com/ to style the scrollbars for browsers not using webkit-->
|
||||
<script type="text/javascript">
|
||||
function loadExternalCodeSnippets() {
|
||||
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach(function (pre) {
|
||||
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
|
||||
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
|
||||
var language = 'php';
|
||||
|
||||
var code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
|
||||
pre.textContent = '';
|
||||
|
||||
code.textContent = 'Loading…';
|
||||
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
|
||||
Prism.highlightElement(code);
|
||||
}
|
||||
else if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
}
|
||||
else {
|
||||
code.textContent = '✖ Error: File does not exist or is empty';
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
loadExternalCodeSnippets();
|
||||
});
|
||||
$('#source-view').on('shown', function () {
|
||||
loadExternalCodeSnippets();
|
||||
})
|
||||
</script>
|
||||
|
||||
<link rel="shortcut icon" href="../images/favicon.ico"/>
|
||||
<link rel="apple-touch-icon" href="../images/apple-touch-icon.png"/>
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../images/apple-touch-icon-72x72.png"/>
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="../images/apple-touch-icon-114x114.png"/>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<i class="icon-ellipsis-vertical"></i>
|
||||
</a>
|
||||
<a class="brand" href="../index.html">API Documentation</a>
|
||||
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav pull-right">
|
||||
<li class="dropdown">
|
||||
<a href="../index.html" class="dropdown-toggle" data-toggle="dropdown">
|
||||
API Documentation <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="charts-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Charts <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../graphs/class.html">
|
||||
<i class="icon-list-alt"></i> Class hierarchy diagram
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="reports-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Reports <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../reports/errors.html">
|
||||
<i class="icon-list-alt"></i> Errors <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/markers.html">
|
||||
<i class="icon-list-alt"></i> Markers <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/deprecated.html">
|
||||
<i class="icon-list-alt"></i> Deprecated <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="go_to_top">-->
|
||||
<!--<a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a>-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
|
||||
<div id="___" class="container-fluid">
|
||||
<section class="row-fluid">
|
||||
<div class="span2 sidebar">
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-225590217"></a>
|
||||
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
|
||||
</div>
|
||||
<div id="namespace-225590217" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-2122174528"></a>
|
||||
<a href="../namespaces/GraphDS.html" style="margin-left: 30px; padding-left: 0">GraphDS</a>
|
||||
</div>
|
||||
<div id="namespace-2122174528" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-65590175"></a>
|
||||
<a href="../namespaces/GraphDS.Algo.html" style="margin-left: 30px; padding-left: 0">Algo</a>
|
||||
</div>
|
||||
<div id="namespace-65590175" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1957200563"></a>
|
||||
<a href="../namespaces/GraphDS.Edge.html" style="margin-left: 30px; padding-left: 0">Edge</a>
|
||||
</div>
|
||||
<div id="namespace-1957200563" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.DirectedEdge.html">DirectedEdge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.Edge.html">Edge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.UndirectedEdge.html">UndirectedEdge</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1516129640"></a>
|
||||
<a href="../namespaces/GraphDS.Graph.html" style="margin-left: 30px; padding-left: 0">Graph</a>
|
||||
</div>
|
||||
<div id="namespace-1516129640" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.DirectedGraph.html">DirectedGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.Graph.html">Graph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.UndirectedGraph.html">UndirectedGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-988724758"></a>
|
||||
<a href="../namespaces/GraphDS.Persistence.html" style="margin-left: 30px; padding-left: 0">Persistence</a>
|
||||
</div>
|
||||
<div id="namespace-988724758" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ExportGraph.html">ExportGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ImportGraph.html">ImportGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-622884507"></a>
|
||||
<a href="../namespaces/GraphDS.Vertex.html" style="margin-left: 30px; padding-left: 0">Vertex</a>
|
||||
</div>
|
||||
<div id="namespace-622884507" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.DirectedVertex.html">DirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.UndirectedVertex.html">UndirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.Vertex.html">Vertex</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<div class="span10 offset2">
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<nav>
|
||||
<a href="../namespaces/GraphDS.Persistence.html">\GraphDS\Persistence</a> <i class="icon-level-up"></i>
|
||||
</nav>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal"><i class="icon-code"></i></a>
|
||||
|
||||
<h1><small>\GraphDS\Persistence</small>ImportGraph</h1>
|
||||
<p><em>Class defining the graph importer methods.</em></p>
|
||||
|
||||
|
||||
|
||||
<section id="summary">
|
||||
<h2>Summary</h2>
|
||||
<section class="row-fluid heading">
|
||||
<section class="span4">
|
||||
<a href="#methods">Methods</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#properties">Properties</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#constants">Constants</a>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid public">
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Persistence.ImportGraph.html#method___construct" class="">__construct()</a><br />
|
||||
<a href="../classes/GraphDS.Persistence.ImportGraph.html#method_fromGraphML" class="">fromGraphML()</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No public properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No constants found</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid protected">
|
||||
<section class="span4">
|
||||
<em>No protected methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No protected properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid private">
|
||||
<section class="span4">
|
||||
<em>No private methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No private properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>File</dt>
|
||||
<dd><a href="../files/Persistence.ImportGraph.html"><div class="path-wrapper">Persistence/ImportGraph.php</div></a></dd>
|
||||
<dt>Package</dt>
|
||||
<dd><div class="namespace-wrapper">Default</div></dd>
|
||||
<dt>Class hierarchy</dt>
|
||||
<dd class="hierarchy">
|
||||
<div class="namespace-wrapper">\GraphDS\Persistence\ImportGraph</div>
|
||||
</dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<a id="methods" name="methods"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class"><h2>Methods</h2></div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method___construct" name="method___construct" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">__construct()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">__construct() </pre>
|
||||
<p><em>Constructor for the graph importer.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Persistence.ImportGraph.html"><div class="path-wrapper">\GraphDS\Persistence\ImportGraph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_fromGraphML" name="method_fromGraphML" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">fromGraphML()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">fromGraphML(string <span class="argument">$file</span>) : \GraphDS\Graph\Graph</pre>
|
||||
<p><em>Returns GraphDS graph represented by GraphML.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$file </td>
|
||||
<td><p>File containing the GraphML markup</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
<a href="../classes/GraphDS.Graph.Graph.html">\GraphDS\Graph\Graph</a>
|
||||
— <p>The graph reconstructed from the GraphML</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Persistence.ImportGraph.html"><div class="path-wrapper">\GraphDS\Persistence\ImportGraph</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="source-view" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="source-view-label" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="source-view-label">ImportGraph.php</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<pre data-src="../files/Persistence/ImportGraph.php.txt" class="language-php line-numbers"></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="row-fluid">
|
||||
<section class="span10 offset2">
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<section class="row-fluid footer-sections">
|
||||
<section class="span4">
|
||||
<h1><i class="icon-code"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-bar-chart"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../graphs/class.html">Class Hierarchy Diagram</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-pushpin"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../reports/errors.html">Errors</a></li>
|
||||
<li><a href="../reports/markers.html">Markers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<hr />
|
||||
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
|
||||
on April 2nd, 2018 at 23:46.
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,739 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
||||
<meta charset="utf-8"/>
|
||||
<title>API Documentation</title>
|
||||
<meta name="author" content=""/>
|
||||
<meta name="description" content=""/>
|
||||
|
||||
<link href="../css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
|
||||
<link href="../css/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="../css/prism.css" rel="stylesheet" media="all"/>
|
||||
<link href="../css/template.css" rel="stylesheet" media="all"/>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="../js/jquery-1.11.0.min.js"></script>
|
||||
<script src="../js/ui/1.10.4/jquery-ui.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.smooth-scroll.js"></script>
|
||||
<script src="../js/prism.min.js"></script>
|
||||
<!-- TODO: Add http://jscrollpane.kelvinluck.com/ to style the scrollbars for browsers not using webkit-->
|
||||
<script type="text/javascript">
|
||||
function loadExternalCodeSnippets() {
|
||||
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach(function (pre) {
|
||||
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
|
||||
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
|
||||
var language = 'php';
|
||||
|
||||
var code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
|
||||
pre.textContent = '';
|
||||
|
||||
code.textContent = 'Loading…';
|
||||
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
|
||||
Prism.highlightElement(code);
|
||||
}
|
||||
else if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
}
|
||||
else {
|
||||
code.textContent = '✖ Error: File does not exist or is empty';
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
loadExternalCodeSnippets();
|
||||
});
|
||||
$('#source-view').on('shown', function () {
|
||||
loadExternalCodeSnippets();
|
||||
})
|
||||
</script>
|
||||
|
||||
<link rel="shortcut icon" href="../images/favicon.ico"/>
|
||||
<link rel="apple-touch-icon" href="../images/apple-touch-icon.png"/>
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../images/apple-touch-icon-72x72.png"/>
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="../images/apple-touch-icon-114x114.png"/>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<i class="icon-ellipsis-vertical"></i>
|
||||
</a>
|
||||
<a class="brand" href="../index.html">API Documentation</a>
|
||||
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav pull-right">
|
||||
<li class="dropdown">
|
||||
<a href="../index.html" class="dropdown-toggle" data-toggle="dropdown">
|
||||
API Documentation <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="charts-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Charts <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../graphs/class.html">
|
||||
<i class="icon-list-alt"></i> Class hierarchy diagram
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="reports-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Reports <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../reports/errors.html">
|
||||
<i class="icon-list-alt"></i> Errors <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/markers.html">
|
||||
<i class="icon-list-alt"></i> Markers <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/deprecated.html">
|
||||
<i class="icon-list-alt"></i> Deprecated <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="go_to_top">-->
|
||||
<!--<a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a>-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
|
||||
<div id="___" class="container-fluid">
|
||||
<section class="row-fluid">
|
||||
<div class="span2 sidebar">
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-485681699"></a>
|
||||
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
|
||||
</div>
|
||||
<div id="namespace-485681699" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1195686066"></a>
|
||||
<a href="../namespaces/GraphDS.html" style="margin-left: 30px; padding-left: 0">GraphDS</a>
|
||||
</div>
|
||||
<div id="namespace-1195686066" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1127232077"></a>
|
||||
<a href="../namespaces/GraphDS.Algo.html" style="margin-left: 30px; padding-left: 0">Algo</a>
|
||||
</div>
|
||||
<div id="namespace-1127232077" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1366010716"></a>
|
||||
<a href="../namespaces/GraphDS.Edge.html" style="margin-left: 30px; padding-left: 0">Edge</a>
|
||||
</div>
|
||||
<div id="namespace-1366010716" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.DirectedEdge.html">DirectedEdge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.Edge.html">Edge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.UndirectedEdge.html">UndirectedEdge</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-42644890"></a>
|
||||
<a href="../namespaces/GraphDS.Graph.html" style="margin-left: 30px; padding-left: 0">Graph</a>
|
||||
</div>
|
||||
<div id="namespace-42644890" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.DirectedGraph.html">DirectedGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.Graph.html">Graph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.UndirectedGraph.html">UndirectedGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-489917661"></a>
|
||||
<a href="../namespaces/GraphDS.Persistence.html" style="margin-left: 30px; padding-left: 0">Persistence</a>
|
||||
</div>
|
||||
<div id="namespace-489917661" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ExportGraph.html">ExportGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ImportGraph.html">ImportGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1826916498"></a>
|
||||
<a href="../namespaces/GraphDS.Vertex.html" style="margin-left: 30px; padding-left: 0">Vertex</a>
|
||||
</div>
|
||||
<div id="namespace-1826916498" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.DirectedVertex.html">DirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.UndirectedVertex.html">UndirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.Vertex.html">Vertex</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<div class="span10 offset2">
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<nav>
|
||||
<a href="../namespaces/GraphDS.Vertex.html">\GraphDS\Vertex</a> <i class="icon-level-up"></i>
|
||||
</nav>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal"><i class="icon-code"></i></a>
|
||||
|
||||
<h1><small>\GraphDS\Vertex</small>UndirectedVertex</h1>
|
||||
<p><em>Class defining an undirected vertex object.</em></p>
|
||||
|
||||
|
||||
|
||||
<section id="summary">
|
||||
<h2>Summary</h2>
|
||||
<section class="row-fluid heading">
|
||||
<section class="span4">
|
||||
<a href="#methods">Methods</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#properties">Properties</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#constants">Constants</a>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid public">
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Vertex.Vertex.html#method___construct" class="">__construct()</a><br />
|
||||
<a href="../classes/GraphDS.Vertex.Vertex.html#method_getValue" class="">getValue()</a><br />
|
||||
<a href="../classes/GraphDS.Vertex.Vertex.html#method_setValue" class="">setValue()</a><br />
|
||||
<a href="../classes/GraphDS.Vertex.UndirectedVertex.html#method_addNeighbor" class="">addNeighbor()</a><br />
|
||||
<a href="../classes/GraphDS.Vertex.UndirectedVertex.html#method_removeNeighbor" class="">removeNeighbor()</a><br />
|
||||
<a href="../classes/GraphDS.Vertex.UndirectedVertex.html#method_getNeighbors" class="">getNeighbors()</a><br />
|
||||
<a href="../classes/GraphDS.Vertex.UndirectedVertex.html#method_adjacent" class="">adjacent()</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Vertex.Vertex.html#property_neighbors" class="">$neighbors</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No constants found</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid protected">
|
||||
<section class="span4">
|
||||
<em>No protected methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Vertex.Vertex.html#property_value" class="">$value</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid private">
|
||||
<section class="span4">
|
||||
<em>No private methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No private properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>File</dt>
|
||||
<dd><a href="../files/Vertex.UndirectedVertex.html"><div class="path-wrapper">Vertex/UndirectedVertex.php</div></a></dd>
|
||||
<dt>Package</dt>
|
||||
<dd><div class="namespace-wrapper">Default</div></dd>
|
||||
<dt>Class hierarchy</dt>
|
||||
<dd class="hierarchy">
|
||||
|
||||
<div class="namespace-wrapper"><a href="../classes/GraphDS.Vertex.Vertex.html">\GraphDS\Vertex\Vertex</a></div>
|
||||
<div class="namespace-wrapper">\GraphDS\Vertex\UndirectedVertex</div>
|
||||
</dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="properties" name="properties"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<h2>Properties</h2>
|
||||
</div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_neighbors" name="property_neighbors" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$neighbors</h3>
|
||||
<pre class="signature">$neighbors : array</pre>
|
||||
<p><em>Array holding references to all neighboring vertices of this vertex.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Vertex.Vertex.html"><div class="path-wrapper">\GraphDS\Vertex\Vertex</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_value" name="property_value" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="protected ">$value</h3>
|
||||
<pre class="signature">$value : mixed</pre>
|
||||
<p><em>Variable holding the value of this vertex.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
mixed
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Vertex.Vertex.html"><div class="path-wrapper">\GraphDS\Vertex\Vertex</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="methods" name="methods"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class"><h2>Methods</h2></div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method___construct" name="method___construct" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">__construct()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">__construct() </pre>
|
||||
<p><em>Constructor for general Vertex object.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Vertex.Vertex.html"><div class="path-wrapper">\GraphDS\Vertex\Vertex</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_getValue" name="method_getValue" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">getValue()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">getValue() : mixed</pre>
|
||||
<p><em>Gets the value associated with this vertex.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
mixed
|
||||
— <p>Value associated with this vertex</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Vertex.Vertex.html"><div class="path-wrapper">\GraphDS\Vertex\Vertex</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_setValue" name="method_setValue" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">setValue()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">setValue(mixed <span class="argument">$value = null</span>) </pre>
|
||||
<p><em>Sets the value associated with this vertex.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>mixed</td>
|
||||
<td>$value </td>
|
||||
<td><p>Value to be associated with this vertex</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Vertex.Vertex.html"><div class="path-wrapper">\GraphDS\Vertex\Vertex</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_addNeighbor" name="method_addNeighbor" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">addNeighbor()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">addNeighbor(string <span class="argument">$vertex</span>) </pre>
|
||||
<p><em>Adds a neighboring, undirected vertex to this vertex.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex </td>
|
||||
<td><p>ID of vertex</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Vertex.UndirectedVertex.html"><div class="path-wrapper">\GraphDS\Vertex\UndirectedVertex</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_removeNeighbor" name="method_removeNeighbor" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">removeNeighbor()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">removeNeighbor(string <span class="argument">$vertex</span>) </pre>
|
||||
<p><em>Removes a neighboring, undirected vertex from this vertex.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex </td>
|
||||
<td><p>ID of vertex</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Vertex.UndirectedVertex.html"><div class="path-wrapper">\GraphDS\Vertex\UndirectedVertex</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_getNeighbors" name="method_getNeighbors" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">getNeighbors()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">getNeighbors() : array</pre>
|
||||
<p><em>Returns an array of all neighboring vertices of this vertex.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
array
|
||||
— <p>Array of all neighboring vertices of this vertex</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Vertex.UndirectedVertex.html"><div class="path-wrapper">\GraphDS\Vertex\UndirectedVertex</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_adjacent" name="method_adjacent" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">adjacent()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">adjacent(string <span class="argument">$vertex</span>) : boolean</pre>
|
||||
<p><em>Checks if a given vertex is adjacent to this vertex.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>string</td>
|
||||
<td>$vertex </td>
|
||||
<td><p>ID of vertex</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
boolean
|
||||
— <p>Whether given vertex is adjacent to this vertex</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Vertex.UndirectedVertex.html"><div class="path-wrapper">\GraphDS\Vertex\UndirectedVertex</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="source-view" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="source-view-label" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="source-view-label">UndirectedVertex.php</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<pre data-src="../files/Vertex/UndirectedVertex.php.txt" class="language-php line-numbers"></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="row-fluid">
|
||||
<section class="span10 offset2">
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<section class="row-fluid footer-sections">
|
||||
<section class="span4">
|
||||
<h1><i class="icon-code"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-bar-chart"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../graphs/class.html">Class Hierarchy Diagram</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-pushpin"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../reports/errors.html">Errors</a></li>
|
||||
<li><a href="../reports/markers.html">Markers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<hr />
|
||||
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
|
||||
on April 2nd, 2018 at 23:46.
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,587 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
||||
<meta charset="utf-8"/>
|
||||
<title>API Documentation</title>
|
||||
<meta name="author" content=""/>
|
||||
<meta name="description" content=""/>
|
||||
|
||||
<link href="../css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
|
||||
<link href="../css/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="../css/prism.css" rel="stylesheet" media="all"/>
|
||||
<link href="../css/template.css" rel="stylesheet" media="all"/>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="../js/jquery-1.11.0.min.js"></script>
|
||||
<script src="../js/ui/1.10.4/jquery-ui.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.smooth-scroll.js"></script>
|
||||
<script src="../js/prism.min.js"></script>
|
||||
<!-- TODO: Add http://jscrollpane.kelvinluck.com/ to style the scrollbars for browsers not using webkit-->
|
||||
<script type="text/javascript">
|
||||
function loadExternalCodeSnippets() {
|
||||
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach(function (pre) {
|
||||
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
|
||||
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
|
||||
var language = 'php';
|
||||
|
||||
var code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
|
||||
pre.textContent = '';
|
||||
|
||||
code.textContent = 'Loading…';
|
||||
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
|
||||
Prism.highlightElement(code);
|
||||
}
|
||||
else if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
}
|
||||
else {
|
||||
code.textContent = '✖ Error: File does not exist or is empty';
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
loadExternalCodeSnippets();
|
||||
});
|
||||
$('#source-view').on('shown', function () {
|
||||
loadExternalCodeSnippets();
|
||||
})
|
||||
</script>
|
||||
|
||||
<link rel="shortcut icon" href="../images/favicon.ico"/>
|
||||
<link rel="apple-touch-icon" href="../images/apple-touch-icon.png"/>
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../images/apple-touch-icon-72x72.png"/>
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="../images/apple-touch-icon-114x114.png"/>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<i class="icon-ellipsis-vertical"></i>
|
||||
</a>
|
||||
<a class="brand" href="../index.html">API Documentation</a>
|
||||
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav pull-right">
|
||||
<li class="dropdown">
|
||||
<a href="../index.html" class="dropdown-toggle" data-toggle="dropdown">
|
||||
API Documentation <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="charts-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Charts <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../graphs/class.html">
|
||||
<i class="icon-list-alt"></i> Class hierarchy diagram
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="reports-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Reports <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../reports/errors.html">
|
||||
<i class="icon-list-alt"></i> Errors <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/markers.html">
|
||||
<i class="icon-list-alt"></i> Markers <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/deprecated.html">
|
||||
<i class="icon-list-alt"></i> Deprecated <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="go_to_top">-->
|
||||
<!--<a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a>-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
|
||||
<div id="___" class="container-fluid">
|
||||
<section class="row-fluid">
|
||||
<div class="span2 sidebar">
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-1231078239"></a>
|
||||
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
|
||||
</div>
|
||||
<div id="namespace-1231078239" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-500193571"></a>
|
||||
<a href="../namespaces/GraphDS.html" style="margin-left: 30px; padding-left: 0">GraphDS</a>
|
||||
</div>
|
||||
<div id="namespace-500193571" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1308884327"></a>
|
||||
<a href="../namespaces/GraphDS.Algo.html" style="margin-left: 30px; padding-left: 0">Algo</a>
|
||||
</div>
|
||||
<div id="namespace-1308884327" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-2115047370"></a>
|
||||
<a href="../namespaces/GraphDS.Edge.html" style="margin-left: 30px; padding-left: 0">Edge</a>
|
||||
</div>
|
||||
<div id="namespace-2115047370" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.DirectedEdge.html">DirectedEdge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.Edge.html">Edge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.UndirectedEdge.html">UndirectedEdge</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-858708256"></a>
|
||||
<a href="../namespaces/GraphDS.Graph.html" style="margin-left: 30px; padding-left: 0">Graph</a>
|
||||
</div>
|
||||
<div id="namespace-858708256" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.DirectedGraph.html">DirectedGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.Graph.html">Graph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.UndirectedGraph.html">UndirectedGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-316708460"></a>
|
||||
<a href="../namespaces/GraphDS.Persistence.html" style="margin-left: 30px; padding-left: 0">Persistence</a>
|
||||
</div>
|
||||
<div id="namespace-316708460" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ExportGraph.html">ExportGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ImportGraph.html">ImportGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-136993172"></a>
|
||||
<a href="../namespaces/GraphDS.Vertex.html" style="margin-left: 30px; padding-left: 0">Vertex</a>
|
||||
</div>
|
||||
<div id="namespace-136993172" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.DirectedVertex.html">DirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.UndirectedVertex.html">UndirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.Vertex.html">Vertex</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<div class="span10 offset2">
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<nav>
|
||||
<a href="../namespaces/GraphDS.Vertex.html">\GraphDS\Vertex</a> <i class="icon-level-up"></i>
|
||||
</nav>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal"><i class="icon-code"></i></a>
|
||||
|
||||
<h1><small>\GraphDS\Vertex</small>Vertex</h1>
|
||||
<p><em>Class defining a generic, extendable vertex object.</em></p>
|
||||
|
||||
|
||||
|
||||
<section id="summary">
|
||||
<h2>Summary</h2>
|
||||
<section class="row-fluid heading">
|
||||
<section class="span4">
|
||||
<a href="#methods">Methods</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#properties">Properties</a>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="#constants">Constants</a>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid public">
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Vertex.Vertex.html#method___construct" class="">__construct()</a><br />
|
||||
<a href="../classes/GraphDS.Vertex.Vertex.html#method_getValue" class="">getValue()</a><br />
|
||||
<a href="../classes/GraphDS.Vertex.Vertex.html#method_setValue" class="">setValue()</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Vertex.Vertex.html#property_neighbors" class="">$neighbors</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No constants found</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid protected">
|
||||
<section class="span4">
|
||||
<em>No protected methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<a href="../classes/GraphDS.Vertex.Vertex.html#property_value" class="">$value</a><br />
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid private">
|
||||
<section class="span4">
|
||||
<em>No private methods found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>No private properties found</em>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<em>N/A</em>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
|
||||
|
||||
<dl>
|
||||
<dt>File</dt>
|
||||
<dd><a href="../files/Vertex.Vertex.html"><div class="path-wrapper">Vertex/Vertex.php</div></a></dd>
|
||||
<dt>Package</dt>
|
||||
<dd><div class="namespace-wrapper">Default</div></dd>
|
||||
<dt>Class hierarchy</dt>
|
||||
<dd class="hierarchy">
|
||||
<div class="namespace-wrapper">\GraphDS\Vertex\Vertex</div>
|
||||
</dd>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="properties" name="properties"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<h2>Properties</h2>
|
||||
</div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_neighbors" name="property_neighbors" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="public ">$neighbors</h3>
|
||||
<pre class="signature">$neighbors : array</pre>
|
||||
<p><em>Array holding references to all neighboring vertices of this vertex.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
array
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="property_value" name="property_value" class="anchor"></a>
|
||||
<article class="property">
|
||||
<h3 class="protected ">$value</h3>
|
||||
<pre class="signature">$value : mixed</pre>
|
||||
<p><em>Variable holding the value of this vertex.</em></p>
|
||||
|
||||
|
||||
<h4>Type</h4>
|
||||
mixed
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
<a id="methods" name="methods"></a>
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class"><h2>Methods</h2></div>
|
||||
<aside class="span4 detailsbar"></aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method___construct" name="method___construct" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">__construct()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">__construct() </pre>
|
||||
<p><em>Constructor for general Vertex object.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Vertex.Vertex.html"><div class="path-wrapper">\GraphDS\Vertex\Vertex</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_getValue" name="method_getValue" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">getValue()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">getValue() : mixed</pre>
|
||||
<p><em>Gets the value associated with this vertex.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h4>Returns</h4>
|
||||
mixed
|
||||
— <p>Value associated with this vertex</p>
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Vertex.Vertex.html"><div class="path-wrapper">\GraphDS\Vertex\Vertex</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content class">
|
||||
<a id="method_setValue" name="method_setValue" class="anchor"></a>
|
||||
<article class="method">
|
||||
<h3 class="public ">setValue()</h3>
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal" style="font-size: 1.1em; padding: 9px 14px"><i class="icon-code"></i></a>
|
||||
<pre class="signature" style="margin-right: 54px;">setValue(mixed <span class="argument">$value = null</span>) </pre>
|
||||
<p><em>Sets the value associated with this vertex.</em></p>
|
||||
|
||||
|
||||
<h4>Parameters</h4>
|
||||
<table class="table table-condensed table-hover">
|
||||
<tr>
|
||||
<td>mixed</td>
|
||||
<td>$value </td>
|
||||
<td><p>Value to be associated with this vertex</p></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
</div>
|
||||
<aside class="span4 detailsbar">
|
||||
<h1><i class="icon-arrow-down"></i></h1>
|
||||
<dl>
|
||||
<dt>Inherited from</dt>
|
||||
<dd><a href="../classes/GraphDS.Vertex.Vertex.html"><div class="path-wrapper">\GraphDS\Vertex\Vertex</div></a></dd>
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="source-view" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="source-view-label" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="source-view-label">Vertex.php</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<pre data-src="../files/Vertex/Vertex.php.txt" class="language-php line-numbers"></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="row-fluid">
|
||||
<section class="span10 offset2">
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<section class="row-fluid footer-sections">
|
||||
<section class="span4">
|
||||
<h1><i class="icon-code"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-bar-chart"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../graphs/class.html">Class Hierarchy Diagram</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-pushpin"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../reports/errors.html">Errors</a></li>
|
||||
<li><a href="../reports/markers.html">Markers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<hr />
|
||||
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
|
||||
on April 2nd, 2018 at 23:46.
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,403 @@
|
|||
@font-face{font-family:'FontAwesome';src:url('../font/fontawesome-webfont.eot?v=3.2.1');src:url('../font/fontawesome-webfont.eot?#iefix&v=3.2.1') format('embedded-opentype'),url('../font/fontawesome-webfont.woff?v=3.2.1') format('woff'),url('../font/fontawesome-webfont.ttf?v=3.2.1') format('truetype'),url('../font/fontawesome-webfont.svg#fontawesomeregular?v=3.2.1') format('svg');font-weight:normal;font-style:normal;}[class^="icon-"],[class*=" icon-"]{font-family:FontAwesome;font-weight:normal;font-style:normal;text-decoration:inherit;-webkit-font-smoothing:antialiased;*margin-right:.3em;}
|
||||
[class^="icon-"]:before,[class*=" icon-"]:before{text-decoration:inherit;display:inline-block;speak:none;}
|
||||
.icon-large:before{vertical-align:-10%;font-size:1.3333333333333333em;}
|
||||
a [class^="icon-"],a [class*=" icon-"]{display:inline;}
|
||||
[class^="icon-"].icon-fixed-width,[class*=" icon-"].icon-fixed-width{display:inline-block;width:1.1428571428571428em;text-align:right;padding-right:0.2857142857142857em;}[class^="icon-"].icon-fixed-width.icon-large,[class*=" icon-"].icon-fixed-width.icon-large{width:1.4285714285714286em;}
|
||||
.icons-ul{margin-left:2.142857142857143em;list-style-type:none;}.icons-ul>li{position:relative;}
|
||||
.icons-ul .icon-li{position:absolute;left:-2.142857142857143em;width:2.142857142857143em;text-align:center;line-height:inherit;}
|
||||
[class^="icon-"].hide,[class*=" icon-"].hide{display:none;}
|
||||
.icon-muted{color:#eeeeee;}
|
||||
.icon-light{color:#ffffff;}
|
||||
.icon-dark{color:#333333;}
|
||||
.icon-border{border:solid 1px #eeeeee;padding:.2em .25em .15em;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;}
|
||||
.icon-2x{font-size:2em;}.icon-2x.icon-border{border-width:2px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;}
|
||||
.icon-3x{font-size:3em;}.icon-3x.icon-border{border-width:3px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;}
|
||||
.icon-4x{font-size:4em;}.icon-4x.icon-border{border-width:4px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;}
|
||||
.icon-5x{font-size:5em;}.icon-5x.icon-border{border-width:5px;-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px;}
|
||||
.pull-right{float:right;}
|
||||
.pull-left{float:left;}
|
||||
[class^="icon-"].pull-left,[class*=" icon-"].pull-left{margin-right:.3em;}
|
||||
[class^="icon-"].pull-right,[class*=" icon-"].pull-right{margin-left:.3em;}
|
||||
[class^="icon-"],[class*=" icon-"]{display:inline;width:auto;height:auto;line-height:normal;vertical-align:baseline;background-image:none;background-position:0% 0%;background-repeat:repeat;margin-top:0;}
|
||||
.icon-white,.nav-pills>.active>a>[class^="icon-"],.nav-pills>.active>a>[class*=" icon-"],.nav-list>.active>a>[class^="icon-"],.nav-list>.active>a>[class*=" icon-"],.navbar-inverse .nav>.active>a>[class^="icon-"],.navbar-inverse .nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^="icon-"],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>.active>a>[class^="icon-"],.dropdown-menu>.active>a>[class*=" icon-"],.dropdown-submenu:hover>a>[class^="icon-"],.dropdown-submenu:hover>a>[class*=" icon-"]{background-image:none;}
|
||||
.btn [class^="icon-"].icon-large,.nav [class^="icon-"].icon-large,.btn [class*=" icon-"].icon-large,.nav [class*=" icon-"].icon-large{line-height:.9em;}
|
||||
.btn [class^="icon-"].icon-spin,.nav [class^="icon-"].icon-spin,.btn [class*=" icon-"].icon-spin,.nav [class*=" icon-"].icon-spin{display:inline-block;}
|
||||
.nav-tabs [class^="icon-"],.nav-pills [class^="icon-"],.nav-tabs [class*=" icon-"],.nav-pills [class*=" icon-"],.nav-tabs [class^="icon-"].icon-large,.nav-pills [class^="icon-"].icon-large,.nav-tabs [class*=" icon-"].icon-large,.nav-pills [class*=" icon-"].icon-large{line-height:.9em;}
|
||||
.btn [class^="icon-"].pull-left.icon-2x,.btn [class*=" icon-"].pull-left.icon-2x,.btn [class^="icon-"].pull-right.icon-2x,.btn [class*=" icon-"].pull-right.icon-2x{margin-top:.18em;}
|
||||
.btn [class^="icon-"].icon-spin.icon-large,.btn [class*=" icon-"].icon-spin.icon-large{line-height:.8em;}
|
||||
.btn.btn-small [class^="icon-"].pull-left.icon-2x,.btn.btn-small [class*=" icon-"].pull-left.icon-2x,.btn.btn-small [class^="icon-"].pull-right.icon-2x,.btn.btn-small [class*=" icon-"].pull-right.icon-2x{margin-top:.25em;}
|
||||
.btn.btn-large [class^="icon-"],.btn.btn-large [class*=" icon-"]{margin-top:0;}.btn.btn-large [class^="icon-"].pull-left.icon-2x,.btn.btn-large [class*=" icon-"].pull-left.icon-2x,.btn.btn-large [class^="icon-"].pull-right.icon-2x,.btn.btn-large [class*=" icon-"].pull-right.icon-2x{margin-top:.05em;}
|
||||
.btn.btn-large [class^="icon-"].pull-left.icon-2x,.btn.btn-large [class*=" icon-"].pull-left.icon-2x{margin-right:.2em;}
|
||||
.btn.btn-large [class^="icon-"].pull-right.icon-2x,.btn.btn-large [class*=" icon-"].pull-right.icon-2x{margin-left:.2em;}
|
||||
.nav-list [class^="icon-"],.nav-list [class*=" icon-"]{line-height:inherit;}
|
||||
.icon-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:-35%;}.icon-stack [class^="icon-"],.icon-stack [class*=" icon-"]{display:block;text-align:center;position:absolute;width:100%;height:100%;font-size:1em;line-height:inherit;*line-height:2em;}
|
||||
.icon-stack .icon-stack-base{font-size:2em;*line-height:1em;}
|
||||
.icon-spin{display:inline-block;-moz-animation:spin 2s infinite linear;-o-animation:spin 2s infinite linear;-webkit-animation:spin 2s infinite linear;animation:spin 2s infinite linear;}
|
||||
a .icon-stack,a .icon-spin{display:inline-block;text-decoration:none;}
|
||||
@-moz-keyframes spin{0%{-moz-transform:rotate(0deg);} 100%{-moz-transform:rotate(359deg);}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg);} 100%{-webkit-transform:rotate(359deg);}}@-o-keyframes spin{0%{-o-transform:rotate(0deg);} 100%{-o-transform:rotate(359deg);}}@-ms-keyframes spin{0%{-ms-transform:rotate(0deg);} 100%{-ms-transform:rotate(359deg);}}@keyframes spin{0%{transform:rotate(0deg);} 100%{transform:rotate(359deg);}}.icon-rotate-90:before{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);}
|
||||
.icon-rotate-180:before{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);}
|
||||
.icon-rotate-270:before{-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);}
|
||||
.icon-flip-horizontal:before{-webkit-transform:scale(-1, 1);-moz-transform:scale(-1, 1);-ms-transform:scale(-1, 1);-o-transform:scale(-1, 1);transform:scale(-1, 1);}
|
||||
.icon-flip-vertical:before{-webkit-transform:scale(1, -1);-moz-transform:scale(1, -1);-ms-transform:scale(1, -1);-o-transform:scale(1, -1);transform:scale(1, -1);}
|
||||
a .icon-rotate-90:before,a .icon-rotate-180:before,a .icon-rotate-270:before,a .icon-flip-horizontal:before,a .icon-flip-vertical:before{display:inline-block;}
|
||||
.icon-glass:before{content:"\f000";}
|
||||
.icon-music:before{content:"\f001";}
|
||||
.icon-search:before{content:"\f002";}
|
||||
.icon-envelope-alt:before{content:"\f003";}
|
||||
.icon-heart:before{content:"\f004";}
|
||||
.icon-star:before{content:"\f005";}
|
||||
.icon-star-empty:before{content:"\f006";}
|
||||
.icon-user:before{content:"\f007";}
|
||||
.icon-film:before{content:"\f008";}
|
||||
.icon-th-large:before{content:"\f009";}
|
||||
.icon-th:before{content:"\f00a";}
|
||||
.icon-th-list:before{content:"\f00b";}
|
||||
.icon-ok:before{content:"\f00c";}
|
||||
.icon-remove:before{content:"\f00d";}
|
||||
.icon-zoom-in:before{content:"\f00e";}
|
||||
.icon-zoom-out:before{content:"\f010";}
|
||||
.icon-power-off:before,.icon-off:before{content:"\f011";}
|
||||
.icon-signal:before{content:"\f012";}
|
||||
.icon-gear:before,.icon-cog:before{content:"\f013";}
|
||||
.icon-trash:before{content:"\f014";}
|
||||
.icon-home:before{content:"\f015";}
|
||||
.icon-file-alt:before{content:"\f016";}
|
||||
.icon-time:before{content:"\f017";}
|
||||
.icon-road:before{content:"\f018";}
|
||||
.icon-download-alt:before{content:"\f019";}
|
||||
.icon-download:before{content:"\f01a";}
|
||||
.icon-upload:before{content:"\f01b";}
|
||||
.icon-inbox:before{content:"\f01c";}
|
||||
.icon-play-circle:before{content:"\f01d";}
|
||||
.icon-rotate-right:before,.icon-repeat:before{content:"\f01e";}
|
||||
.icon-refresh:before{content:"\f021";}
|
||||
.icon-list-alt:before{content:"\f022";}
|
||||
.icon-lock:before{content:"\f023";}
|
||||
.icon-flag:before{content:"\f024";}
|
||||
.icon-headphones:before{content:"\f025";}
|
||||
.icon-volume-off:before{content:"\f026";}
|
||||
.icon-volume-down:before{content:"\f027";}
|
||||
.icon-volume-up:before{content:"\f028";}
|
||||
.icon-qrcode:before{content:"\f029";}
|
||||
.icon-barcode:before{content:"\f02a";}
|
||||
.icon-tag:before{content:"\f02b";}
|
||||
.icon-tags:before{content:"\f02c";}
|
||||
.icon-book:before{content:"\f02d";}
|
||||
.icon-bookmark:before{content:"\f02e";}
|
||||
.icon-print:before{content:"\f02f";}
|
||||
.icon-camera:before{content:"\f030";}
|
||||
.icon-font:before{content:"\f031";}
|
||||
.icon-bold:before{content:"\f032";}
|
||||
.icon-italic:before{content:"\f033";}
|
||||
.icon-text-height:before{content:"\f034";}
|
||||
.icon-text-width:before{content:"\f035";}
|
||||
.icon-align-left:before{content:"\f036";}
|
||||
.icon-align-center:before{content:"\f037";}
|
||||
.icon-align-right:before{content:"\f038";}
|
||||
.icon-align-justify:before{content:"\f039";}
|
||||
.icon-list:before{content:"\f03a";}
|
||||
.icon-indent-left:before{content:"\f03b";}
|
||||
.icon-indent-right:before{content:"\f03c";}
|
||||
.icon-facetime-video:before{content:"\f03d";}
|
||||
.icon-picture:before{content:"\f03e";}
|
||||
.icon-pencil:before{content:"\f040";}
|
||||
.icon-map-marker:before{content:"\f041";}
|
||||
.icon-adjust:before{content:"\f042";}
|
||||
.icon-tint:before{content:"\f043";}
|
||||
.icon-edit:before{content:"\f044";}
|
||||
.icon-share:before{content:"\f045";}
|
||||
.icon-check:before{content:"\f046";}
|
||||
.icon-move:before{content:"\f047";}
|
||||
.icon-step-backward:before{content:"\f048";}
|
||||
.icon-fast-backward:before{content:"\f049";}
|
||||
.icon-backward:before{content:"\f04a";}
|
||||
.icon-play:before{content:"\f04b";}
|
||||
.icon-pause:before{content:"\f04c";}
|
||||
.icon-stop:before{content:"\f04d";}
|
||||
.icon-forward:before{content:"\f04e";}
|
||||
.icon-fast-forward:before{content:"\f050";}
|
||||
.icon-step-forward:before{content:"\f051";}
|
||||
.icon-eject:before{content:"\f052";}
|
||||
.icon-chevron-left:before{content:"\f053";}
|
||||
.icon-chevron-right:before{content:"\f054";}
|
||||
.icon-plus-sign:before{content:"\f055";}
|
||||
.icon-minus-sign:before{content:"\f056";}
|
||||
.icon-remove-sign:before{content:"\f057";}
|
||||
.icon-ok-sign:before{content:"\f058";}
|
||||
.icon-question-sign:before{content:"\f059";}
|
||||
.icon-info-sign:before{content:"\f05a";}
|
||||
.icon-screenshot:before{content:"\f05b";}
|
||||
.icon-remove-circle:before{content:"\f05c";}
|
||||
.icon-ok-circle:before{content:"\f05d";}
|
||||
.icon-ban-circle:before{content:"\f05e";}
|
||||
.icon-arrow-left:before{content:"\f060";}
|
||||
.icon-arrow-right:before{content:"\f061";}
|
||||
.icon-arrow-up:before{content:"\f062";}
|
||||
.icon-arrow-down:before{content:"\f063";}
|
||||
.icon-mail-forward:before,.icon-share-alt:before{content:"\f064";}
|
||||
.icon-resize-full:before{content:"\f065";}
|
||||
.icon-resize-small:before{content:"\f066";}
|
||||
.icon-plus:before{content:"\f067";}
|
||||
.icon-minus:before{content:"\f068";}
|
||||
.icon-asterisk:before{content:"\f069";}
|
||||
.icon-exclamation-sign:before{content:"\f06a";}
|
||||
.icon-gift:before{content:"\f06b";}
|
||||
.icon-leaf:before{content:"\f06c";}
|
||||
.icon-fire:before{content:"\f06d";}
|
||||
.icon-eye-open:before{content:"\f06e";}
|
||||
.icon-eye-close:before{content:"\f070";}
|
||||
.icon-warning-sign:before{content:"\f071";}
|
||||
.icon-plane:before{content:"\f072";}
|
||||
.icon-calendar:before{content:"\f073";}
|
||||
.icon-random:before{content:"\f074";}
|
||||
.icon-comment:before{content:"\f075";}
|
||||
.icon-magnet:before{content:"\f076";}
|
||||
.icon-chevron-up:before{content:"\f077";}
|
||||
.icon-chevron-down:before{content:"\f078";}
|
||||
.icon-retweet:before{content:"\f079";}
|
||||
.icon-shopping-cart:before{content:"\f07a";}
|
||||
.icon-folder-close:before{content:"\f07b";}
|
||||
.icon-folder-open:before{content:"\f07c";}
|
||||
.icon-resize-vertical:before{content:"\f07d";}
|
||||
.icon-resize-horizontal:before{content:"\f07e";}
|
||||
.icon-bar-chart:before{content:"\f080";}
|
||||
.icon-twitter-sign:before{content:"\f081";}
|
||||
.icon-facebook-sign:before{content:"\f082";}
|
||||
.icon-camera-retro:before{content:"\f083";}
|
||||
.icon-key:before{content:"\f084";}
|
||||
.icon-gears:before,.icon-cogs:before{content:"\f085";}
|
||||
.icon-comments:before{content:"\f086";}
|
||||
.icon-thumbs-up-alt:before{content:"\f087";}
|
||||
.icon-thumbs-down-alt:before{content:"\f088";}
|
||||
.icon-star-half:before{content:"\f089";}
|
||||
.icon-heart-empty:before{content:"\f08a";}
|
||||
.icon-signout:before{content:"\f08b";}
|
||||
.icon-linkedin-sign:before{content:"\f08c";}
|
||||
.icon-pushpin:before{content:"\f08d";}
|
||||
.icon-external-link:before{content:"\f08e";}
|
||||
.icon-signin:before{content:"\f090";}
|
||||
.icon-trophy:before{content:"\f091";}
|
||||
.icon-github-sign:before{content:"\f092";}
|
||||
.icon-upload-alt:before{content:"\f093";}
|
||||
.icon-lemon:before{content:"\f094";}
|
||||
.icon-phone:before{content:"\f095";}
|
||||
.icon-unchecked:before,.icon-check-empty:before{content:"\f096";}
|
||||
.icon-bookmark-empty:before{content:"\f097";}
|
||||
.icon-phone-sign:before{content:"\f098";}
|
||||
.icon-twitter:before{content:"\f099";}
|
||||
.icon-facebook:before{content:"\f09a";}
|
||||
.icon-github:before{content:"\f09b";}
|
||||
.icon-unlock:before{content:"\f09c";}
|
||||
.icon-credit-card:before{content:"\f09d";}
|
||||
.icon-rss:before{content:"\f09e";}
|
||||
.icon-hdd:before{content:"\f0a0";}
|
||||
.icon-bullhorn:before{content:"\f0a1";}
|
||||
.icon-bell:before{content:"\f0a2";}
|
||||
.icon-certificate:before{content:"\f0a3";}
|
||||
.icon-hand-right:before{content:"\f0a4";}
|
||||
.icon-hand-left:before{content:"\f0a5";}
|
||||
.icon-hand-up:before{content:"\f0a6";}
|
||||
.icon-hand-down:before{content:"\f0a7";}
|
||||
.icon-circle-arrow-left:before{content:"\f0a8";}
|
||||
.icon-circle-arrow-right:before{content:"\f0a9";}
|
||||
.icon-circle-arrow-up:before{content:"\f0aa";}
|
||||
.icon-circle-arrow-down:before{content:"\f0ab";}
|
||||
.icon-globe:before{content:"\f0ac";}
|
||||
.icon-wrench:before{content:"\f0ad";}
|
||||
.icon-tasks:before{content:"\f0ae";}
|
||||
.icon-filter:before{content:"\f0b0";}
|
||||
.icon-briefcase:before{content:"\f0b1";}
|
||||
.icon-fullscreen:before{content:"\f0b2";}
|
||||
.icon-group:before{content:"\f0c0";}
|
||||
.icon-link:before{content:"\f0c1";}
|
||||
.icon-cloud:before{content:"\f0c2";}
|
||||
.icon-beaker:before{content:"\f0c3";}
|
||||
.icon-cut:before{content:"\f0c4";}
|
||||
.icon-copy:before{content:"\f0c5";}
|
||||
.icon-paperclip:before,.icon-paper-clip:before{content:"\f0c6";}
|
||||
.icon-save:before{content:"\f0c7";}
|
||||
.icon-sign-blank:before{content:"\f0c8";}
|
||||
.icon-reorder:before{content:"\f0c9";}
|
||||
.icon-list-ul:before{content:"\f0ca";}
|
||||
.icon-list-ol:before{content:"\f0cb";}
|
||||
.icon-strikethrough:before{content:"\f0cc";}
|
||||
.icon-underline:before{content:"\f0cd";}
|
||||
.icon-table:before{content:"\f0ce";}
|
||||
.icon-magic:before{content:"\f0d0";}
|
||||
.icon-truck:before{content:"\f0d1";}
|
||||
.icon-pinterest:before{content:"\f0d2";}
|
||||
.icon-pinterest-sign:before{content:"\f0d3";}
|
||||
.icon-google-plus-sign:before{content:"\f0d4";}
|
||||
.icon-google-plus:before{content:"\f0d5";}
|
||||
.icon-money:before{content:"\f0d6";}
|
||||
.icon-caret-down:before{content:"\f0d7";}
|
||||
.icon-caret-up:before{content:"\f0d8";}
|
||||
.icon-caret-left:before{content:"\f0d9";}
|
||||
.icon-caret-right:before{content:"\f0da";}
|
||||
.icon-columns:before{content:"\f0db";}
|
||||
.icon-sort:before{content:"\f0dc";}
|
||||
.icon-sort-down:before{content:"\f0dd";}
|
||||
.icon-sort-up:before{content:"\f0de";}
|
||||
.icon-envelope:before{content:"\f0e0";}
|
||||
.icon-linkedin:before{content:"\f0e1";}
|
||||
.icon-rotate-left:before,.icon-undo:before{content:"\f0e2";}
|
||||
.icon-legal:before{content:"\f0e3";}
|
||||
.icon-dashboard:before{content:"\f0e4";}
|
||||
.icon-comment-alt:before{content:"\f0e5";}
|
||||
.icon-comments-alt:before{content:"\f0e6";}
|
||||
.icon-bolt:before{content:"\f0e7";}
|
||||
.icon-sitemap:before{content:"\f0e8";}
|
||||
.icon-umbrella:before{content:"\f0e9";}
|
||||
.icon-paste:before{content:"\f0ea";}
|
||||
.icon-lightbulb:before{content:"\f0eb";}
|
||||
.icon-exchange:before{content:"\f0ec";}
|
||||
.icon-cloud-download:before{content:"\f0ed";}
|
||||
.icon-cloud-upload:before{content:"\f0ee";}
|
||||
.icon-user-md:before{content:"\f0f0";}
|
||||
.icon-stethoscope:before{content:"\f0f1";}
|
||||
.icon-suitcase:before{content:"\f0f2";}
|
||||
.icon-bell-alt:before{content:"\f0f3";}
|
||||
.icon-coffee:before{content:"\f0f4";}
|
||||
.icon-food:before{content:"\f0f5";}
|
||||
.icon-file-text-alt:before{content:"\f0f6";}
|
||||
.icon-building:before{content:"\f0f7";}
|
||||
.icon-hospital:before{content:"\f0f8";}
|
||||
.icon-ambulance:before{content:"\f0f9";}
|
||||
.icon-medkit:before{content:"\f0fa";}
|
||||
.icon-fighter-jet:before{content:"\f0fb";}
|
||||
.icon-beer:before{content:"\f0fc";}
|
||||
.icon-h-sign:before{content:"\f0fd";}
|
||||
.icon-plus-sign-alt:before{content:"\f0fe";}
|
||||
.icon-double-angle-left:before{content:"\f100";}
|
||||
.icon-double-angle-right:before{content:"\f101";}
|
||||
.icon-double-angle-up:before{content:"\f102";}
|
||||
.icon-double-angle-down:before{content:"\f103";}
|
||||
.icon-angle-left:before{content:"\f104";}
|
||||
.icon-angle-right:before{content:"\f105";}
|
||||
.icon-angle-up:before{content:"\f106";}
|
||||
.icon-angle-down:before{content:"\f107";}
|
||||
.icon-desktop:before{content:"\f108";}
|
||||
.icon-laptop:before{content:"\f109";}
|
||||
.icon-tablet:before{content:"\f10a";}
|
||||
.icon-mobile-phone:before{content:"\f10b";}
|
||||
.icon-circle-blank:before{content:"\f10c";}
|
||||
.icon-quote-left:before{content:"\f10d";}
|
||||
.icon-quote-right:before{content:"\f10e";}
|
||||
.icon-spinner:before{content:"\f110";}
|
||||
.icon-circle:before{content:"\f111";}
|
||||
.icon-mail-reply:before,.icon-reply:before{content:"\f112";}
|
||||
.icon-github-alt:before{content:"\f113";}
|
||||
.icon-folder-close-alt:before{content:"\f114";}
|
||||
.icon-folder-open-alt:before{content:"\f115";}
|
||||
.icon-expand-alt:before{content:"\f116";}
|
||||
.icon-collapse-alt:before{content:"\f117";}
|
||||
.icon-smile:before{content:"\f118";}
|
||||
.icon-frown:before{content:"\f119";}
|
||||
.icon-meh:before{content:"\f11a";}
|
||||
.icon-gamepad:before{content:"\f11b";}
|
||||
.icon-keyboard:before{content:"\f11c";}
|
||||
.icon-flag-alt:before{content:"\f11d";}
|
||||
.icon-flag-checkered:before{content:"\f11e";}
|
||||
.icon-terminal:before{content:"\f120";}
|
||||
.icon-code:before{content:"\f121";}
|
||||
.icon-reply-all:before{content:"\f122";}
|
||||
.icon-mail-reply-all:before{content:"\f122";}
|
||||
.icon-star-half-full:before,.icon-star-half-empty:before{content:"\f123";}
|
||||
.icon-location-arrow:before{content:"\f124";}
|
||||
.icon-crop:before{content:"\f125";}
|
||||
.icon-code-fork:before{content:"\f126";}
|
||||
.icon-unlink:before{content:"\f127";}
|
||||
.icon-question:before{content:"\f128";}
|
||||
.icon-info:before{content:"\f129";}
|
||||
.icon-exclamation:before{content:"\f12a";}
|
||||
.icon-superscript:before{content:"\f12b";}
|
||||
.icon-subscript:before{content:"\f12c";}
|
||||
.icon-eraser:before{content:"\f12d";}
|
||||
.icon-puzzle-piece:before{content:"\f12e";}
|
||||
.icon-microphone:before{content:"\f130";}
|
||||
.icon-microphone-off:before{content:"\f131";}
|
||||
.icon-shield:before{content:"\f132";}
|
||||
.icon-calendar-empty:before{content:"\f133";}
|
||||
.icon-fire-extinguisher:before{content:"\f134";}
|
||||
.icon-rocket:before{content:"\f135";}
|
||||
.icon-maxcdn:before{content:"\f136";}
|
||||
.icon-chevron-sign-left:before{content:"\f137";}
|
||||
.icon-chevron-sign-right:before{content:"\f138";}
|
||||
.icon-chevron-sign-up:before{content:"\f139";}
|
||||
.icon-chevron-sign-down:before{content:"\f13a";}
|
||||
.icon-html5:before{content:"\f13b";}
|
||||
.icon-css3:before{content:"\f13c";}
|
||||
.icon-anchor:before{content:"\f13d";}
|
||||
.icon-unlock-alt:before{content:"\f13e";}
|
||||
.icon-bullseye:before{content:"\f140";}
|
||||
.icon-ellipsis-horizontal:before{content:"\f141";}
|
||||
.icon-ellipsis-vertical:before{content:"\f142";}
|
||||
.icon-rss-sign:before{content:"\f143";}
|
||||
.icon-play-sign:before{content:"\f144";}
|
||||
.icon-ticket:before{content:"\f145";}
|
||||
.icon-minus-sign-alt:before{content:"\f146";}
|
||||
.icon-check-minus:before{content:"\f147";}
|
||||
.icon-level-up:before{content:"\f148";}
|
||||
.icon-level-down:before{content:"\f149";}
|
||||
.icon-check-sign:before{content:"\f14a";}
|
||||
.icon-edit-sign:before{content:"\f14b";}
|
||||
.icon-external-link-sign:before{content:"\f14c";}
|
||||
.icon-share-sign:before{content:"\f14d";}
|
||||
.icon-compass:before{content:"\f14e";}
|
||||
.icon-collapse:before{content:"\f150";}
|
||||
.icon-collapse-top:before{content:"\f151";}
|
||||
.icon-expand:before{content:"\f152";}
|
||||
.icon-euro:before,.icon-eur:before{content:"\f153";}
|
||||
.icon-gbp:before{content:"\f154";}
|
||||
.icon-dollar:before,.icon-usd:before{content:"\f155";}
|
||||
.icon-rupee:before,.icon-inr:before{content:"\f156";}
|
||||
.icon-yen:before,.icon-jpy:before{content:"\f157";}
|
||||
.icon-renminbi:before,.icon-cny:before{content:"\f158";}
|
||||
.icon-won:before,.icon-krw:before{content:"\f159";}
|
||||
.icon-bitcoin:before,.icon-btc:before{content:"\f15a";}
|
||||
.icon-file:before{content:"\f15b";}
|
||||
.icon-file-text:before{content:"\f15c";}
|
||||
.icon-sort-by-alphabet:before{content:"\f15d";}
|
||||
.icon-sort-by-alphabet-alt:before{content:"\f15e";}
|
||||
.icon-sort-by-attributes:before{content:"\f160";}
|
||||
.icon-sort-by-attributes-alt:before{content:"\f161";}
|
||||
.icon-sort-by-order:before{content:"\f162";}
|
||||
.icon-sort-by-order-alt:before{content:"\f163";}
|
||||
.icon-thumbs-up:before{content:"\f164";}
|
||||
.icon-thumbs-down:before{content:"\f165";}
|
||||
.icon-youtube-sign:before{content:"\f166";}
|
||||
.icon-youtube:before{content:"\f167";}
|
||||
.icon-xing:before{content:"\f168";}
|
||||
.icon-xing-sign:before{content:"\f169";}
|
||||
.icon-youtube-play:before{content:"\f16a";}
|
||||
.icon-dropbox:before{content:"\f16b";}
|
||||
.icon-stackexchange:before{content:"\f16c";}
|
||||
.icon-instagram:before{content:"\f16d";}
|
||||
.icon-flickr:before{content:"\f16e";}
|
||||
.icon-adn:before{content:"\f170";}
|
||||
.icon-bitbucket:before{content:"\f171";}
|
||||
.icon-bitbucket-sign:before{content:"\f172";}
|
||||
.icon-tumblr:before{content:"\f173";}
|
||||
.icon-tumblr-sign:before{content:"\f174";}
|
||||
.icon-long-arrow-down:before{content:"\f175";}
|
||||
.icon-long-arrow-up:before{content:"\f176";}
|
||||
.icon-long-arrow-left:before{content:"\f177";}
|
||||
.icon-long-arrow-right:before{content:"\f178";}
|
||||
.icon-apple:before{content:"\f179";}
|
||||
.icon-windows:before{content:"\f17a";}
|
||||
.icon-android:before{content:"\f17b";}
|
||||
.icon-linux:before{content:"\f17c";}
|
||||
.icon-dribbble:before{content:"\f17d";}
|
||||
.icon-skype:before{content:"\f17e";}
|
||||
.icon-foursquare:before{content:"\f180";}
|
||||
.icon-trello:before{content:"\f181";}
|
||||
.icon-female:before{content:"\f182";}
|
||||
.icon-male:before{content:"\f183";}
|
||||
.icon-gittip:before{content:"\f184";}
|
||||
.icon-sun:before{content:"\f185";}
|
||||
.icon-moon:before{content:"\f186";}
|
||||
.icon-archive:before{content:"\f187";}
|
||||
.icon-bug:before{content:"\f188";}
|
||||
.icon-vk:before{content:"\f189";}
|
||||
.icon-weibo:before{content:"\f18a";}
|
||||
.icon-renren:before{content:"\f18b";}
|
|
@ -0,0 +1,65 @@
|
|||
.viewer {
|
||||
-ms-touch-action: none;
|
||||
}
|
||||
|
||||
.iviewer_common {
|
||||
position:absolute;
|
||||
bottom:10px;
|
||||
border: 1px solid #000;
|
||||
height: 28px;
|
||||
z-index: 5000;
|
||||
}
|
||||
|
||||
.iviewer_cursor {
|
||||
cursor: url(../images/iviewer/hand.cur) 6 8, pointer;
|
||||
}
|
||||
|
||||
.iviewer_drag_cursor {
|
||||
cursor: url(../images/iviewer/grab.cur) 6 8, pointer;
|
||||
}
|
||||
|
||||
.iviewer_button {
|
||||
width: 28px;
|
||||
cursor: pointer;
|
||||
background-position: center center;
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
|
||||
.iviewer_zoom_in {
|
||||
left: 20px;
|
||||
background: url(../images/iviewer/iviewer.zoom_in.png);
|
||||
}
|
||||
|
||||
.iviewer_zoom_out {
|
||||
left: 55px;
|
||||
background: url(../images/iviewer/iviewer.zoom_out.png);
|
||||
}
|
||||
|
||||
.iviewer_zoom_zero {
|
||||
left: 90px;
|
||||
background: url(../images/iviewer/iviewer.zoom_zero.png);
|
||||
}
|
||||
|
||||
.iviewer_zoom_fit {
|
||||
left: 125px;
|
||||
background: url(../images/iviewer/iviewer.zoom_fit.png);
|
||||
}
|
||||
|
||||
.iviewer_zoom_status {
|
||||
left: 160px;
|
||||
font: 1em/28px Sans;
|
||||
color: #000;
|
||||
background-color: #fff;
|
||||
text-align: center;
|
||||
width: 60px;
|
||||
}
|
||||
|
||||
.iviewer_rotate_left {
|
||||
left: 227px;
|
||||
background: #fff url(../images/iviewer/iviewer.rotate_left.png) center center no-repeat;
|
||||
}
|
||||
|
||||
.iviewer_rotate_right {
|
||||
left: 262px;
|
||||
background: #fff url(../images/iviewer/iviewer.rotate_right.png) center center no-repeat;
|
||||
}
|
|
@ -0,0 +1,3 @@
|
|||
To modify your generated font, use the *dev.svg* file, located in the *fonts* folder in this package. You can import this dev.svg file to the IcoMoon app. All the tags (class names) and the Unicode points of your glyphs are saved in this file.
|
||||
|
||||
See the documentation for more info on how to use this package: http://icomoon.io/#docs/font-face
|
17
vendor/algb12/graph-ds/doc/css/phpdocumentor-clean-icons/fonts/phpdocumentor-clean-icons.dev.svg
vendored
Normal file
|
@ -0,0 +1,17 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
||||
<svg xmlns="http://www.w3.org/2000/svg">
|
||||
<metadata>
|
||||
This is a custom SVG font generated by IcoMoon.
|
||||
<iconset id="phpdocumentor-clean-icons" name="phpdocumentor-clean-icons" href="http://www.phpdoc.org" grid="16"></iconset><author name="Mike van Riel" href="http://www.mikevanriel.com"></author><license name="SIL"></license>
|
||||
</metadata>
|
||||
<defs>
|
||||
<font id="phpdocumentor-clean-icons" horiz-adv-x="512" >
|
||||
<font-face units-per-em="512" ascent="480" descent="-32" />
|
||||
<missing-glyph horiz-adv-x="512" />
|
||||
<glyph class="hidden" unicode="" d="M0,480L 512 -32L0 -32 z" horiz-adv-x="0" />
|
||||
<glyph unicode="" d="M 139.636,456.727 C 75.171,456.727 23.273,404.829 23.273,340.364 l 0-232.727 c 0-64.465 51.898-116.364 116.364-116.364 l 232.727,0 c 64.465,0 116.364,51.898 116.364,116.364 L 488.727,340.364 C 488.727,404.829 436.829,456.727 372.364,456.727 L 139.636,456.727 z m 20.727-41.381 191.274,0 c 53.001,0 95.709-42.708 95.709-95.709 l 0-191.274 c 0-53.001 -42.708-95.709 -95.709-95.709 l -191.274,0 c -53.001,0 -95.709,42.708 -95.709,95.709 l 0,191.274 c 0,53.001 42.708,95.709 95.709,95.709 zM 359.963,366.827 m0,0,0-43.124 -84.271,0 0-231.052 -50.246,0 0,231.052 -84.271,0 0,43.124 218.787,0" data-tags="trait" />
|
||||
<glyph unicode="" d="M 139.636,456.727 C 75.171,456.727 23.273,404.829 23.273,340.364 l 0-232.727 c 0-64.465 51.898-116.364 116.364-116.364 l 232.727,0 c 64.465,0 116.364,51.898 116.364,116.364 L 488.727,340.364 C 488.727,404.829 436.829,456.727 372.364,456.727 L 139.636,456.727 z m 20.727-41.381 191.274,0 c 53.001,0 95.709-42.708 95.709-95.709 l 0-191.274 c 0-53.001 -42.708-95.709 -95.709-95.709 l -191.274,0 c -53.001,0 -95.709,42.708 -95.709,95.709 l 0,191.274 c 0,53.001 42.708,95.709 95.709,95.709 zM 231.075,366.827 m0,0, 49.85,0 0-274.176 -49.85,0 0,274.176" data-tags="interface" />
|
||||
<glyph unicode="" d="M 139.636,456.727 C 75.171,456.727 23.273,404.829 23.273,340.364 l 0-232.727 c 0-64.465 51.898-116.364 116.364-116.364 l 232.727,0 c 64.465,0 116.364,51.898 116.364,116.364 L 488.727,340.364 C 488.727,404.829 436.829,456.727 372.364,456.727 L 139.636,456.727 z m 20.727-41.381 191.274,0 c 53.001,0 95.709-42.708 95.709-95.709 l 0-191.274 c 0-53.001 -42.708-95.709 -95.709-95.709 l -191.274,0 c -53.001,0 -95.709,42.708 -95.709,95.709 l 0,191.274 c 0,53.001 42.708,95.709 95.709,95.709 zM 278.749,86.717 m0,0,c -20.573,0 -39.036,3.165 -55.389,9.495 -16.353,6.33 -30.2,15.562 -41.542,27.695 -11.342,12.397 -20.046,27.431 -26.112,45.103 -6.066,17.672 -9.1,37.981 -9.1,60.928 0,22.947 3.429,43.256 10.287,60.928 7.121,17.672 16.749,32.574 28.881,44.707 12.133,12.396 26.376,21.76 42.729,28.090 16.353,6.33 33.893,9.495 52.62,9.495 11.341,0 21.628-0.923 30.86-2.769 9.231-1.583 17.276-3.429 24.134-5.539 6.857-2.11 12.528-4.352 17.012-6.726 4.484-2.374 7.649-4.089 9.495-5.143 l -14.639-40.751 c -6.33,3.956 -15.43,7.649 -27.299,11.078 -11.606,3.692 -24.266,5.539 -37.981,5.539 -11.869,0 -22.947-2.11 -33.233-6.33 -10.287-3.957 -19.254-10.023 -26.903-18.199 -7.385-8.177 -13.188-18.463 -17.408-30.86 -4.22-12.397 -6.33-26.772 -6.33-43.124 0-14.507 1.582-27.827 4.748-39.959 3.429-12.133 8.572-22.683 15.43-31.651 6.858-8.704 15.562-15.562 26.112-20.573 10.55-4.748 23.211-7.122 37.981-7.121 17.672,0 32.046,1.714 43.124,5.143 11.078,3.693 19.65,7.121 25.716,10.287 l 13.452-40.751 c -3.165-2.11 -7.517-4.22 -13.056-6.33 -5.275-2.11 -11.606-4.22 -18.991-6.33 -7.385-1.846 -15.694-3.297 -24.925-4.352 -9.232-1.319 -19.123-1.978 -29.673-1.978" data-tags="class" />
|
||||
<glyph unicode=" " horiz-adv-x="256" />
|
||||
</font></defs></svg>
|
After Width: | Height: | Size: 3.6 KiB |
BIN
vendor/algb12/graph-ds/doc/css/phpdocumentor-clean-icons/fonts/phpdocumentor-clean-icons.eot
vendored
Normal file
17
vendor/algb12/graph-ds/doc/css/phpdocumentor-clean-icons/fonts/phpdocumentor-clean-icons.svg
vendored
Normal file
|
@ -0,0 +1,17 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
||||
<svg xmlns="http://www.w3.org/2000/svg">
|
||||
<metadata>
|
||||
This is a custom SVG font generated by IcoMoon.
|
||||
<iconset id="phpdocumentor-clean-icons" name="phpdocumentor-clean-icons" href="http://www.phpdoc.org" grid="16"></iconset><author name="Mike van Riel" href="http://www.mikevanriel.com"></author><license name="SIL"></license>
|
||||
</metadata>
|
||||
<defs>
|
||||
<font id="phpdocumentor-clean-icons" horiz-adv-x="512" >
|
||||
<font-face units-per-em="512" ascent="480" descent="-32" />
|
||||
<missing-glyph horiz-adv-x="512" />
|
||||
<glyph class="hidden" unicode="" d="M0,480L 512 -32L0 -32 z" horiz-adv-x="0" />
|
||||
<glyph unicode="" d="M 139.636,456.727 C 75.171,456.727 23.273,404.829 23.273,340.364 l 0-232.727 c 0-64.465 51.898-116.364 116.364-116.364 l 232.727,0 c 64.465,0 116.364,51.898 116.364,116.364 L 488.727,340.364 C 488.727,404.829 436.829,456.727 372.364,456.727 L 139.636,456.727 z m 20.727-41.381 191.274,0 c 53.001,0 95.709-42.708 95.709-95.709 l 0-191.274 c 0-53.001 -42.708-95.709 -95.709-95.709 l -191.274,0 c -53.001,0 -95.709,42.708 -95.709,95.709 l 0,191.274 c 0,53.001 42.708,95.709 95.709,95.709 zM 359.963,366.827 m0,0,0-43.124 -84.271,0 0-231.052 -50.246,0 0,231.052 -84.271,0 0,43.124 218.787,0" />
|
||||
<glyph unicode="" d="M 139.636,456.727 C 75.171,456.727 23.273,404.829 23.273,340.364 l 0-232.727 c 0-64.465 51.898-116.364 116.364-116.364 l 232.727,0 c 64.465,0 116.364,51.898 116.364,116.364 L 488.727,340.364 C 488.727,404.829 436.829,456.727 372.364,456.727 L 139.636,456.727 z m 20.727-41.381 191.274,0 c 53.001,0 95.709-42.708 95.709-95.709 l 0-191.274 c 0-53.001 -42.708-95.709 -95.709-95.709 l -191.274,0 c -53.001,0 -95.709,42.708 -95.709,95.709 l 0,191.274 c 0,53.001 42.708,95.709 95.709,95.709 zM 231.075,366.827 m0,0, 49.85,0 0-274.176 -49.85,0 0,274.176" />
|
||||
<glyph unicode="" d="M 139.636,456.727 C 75.171,456.727 23.273,404.829 23.273,340.364 l 0-232.727 c 0-64.465 51.898-116.364 116.364-116.364 l 232.727,0 c 64.465,0 116.364,51.898 116.364,116.364 L 488.727,340.364 C 488.727,404.829 436.829,456.727 372.364,456.727 L 139.636,456.727 z m 20.727-41.381 191.274,0 c 53.001,0 95.709-42.708 95.709-95.709 l 0-191.274 c 0-53.001 -42.708-95.709 -95.709-95.709 l -191.274,0 c -53.001,0 -95.709,42.708 -95.709,95.709 l 0,191.274 c 0,53.001 42.708,95.709 95.709,95.709 zM 278.749,86.717 m0,0,c -20.573,0 -39.036,3.165 -55.389,9.495 -16.353,6.33 -30.2,15.562 -41.542,27.695 -11.342,12.397 -20.046,27.431 -26.112,45.103 -6.066,17.672 -9.1,37.981 -9.1,60.928 0,22.947 3.429,43.256 10.287,60.928 7.121,17.672 16.749,32.574 28.881,44.707 12.133,12.396 26.376,21.76 42.729,28.090 16.353,6.33 33.893,9.495 52.62,9.495 11.341,0 21.628-0.923 30.86-2.769 9.231-1.583 17.276-3.429 24.134-5.539 6.857-2.11 12.528-4.352 17.012-6.726 4.484-2.374 7.649-4.089 9.495-5.143 l -14.639-40.751 c -6.33,3.956 -15.43,7.649 -27.299,11.078 -11.606,3.692 -24.266,5.539 -37.981,5.539 -11.869,0 -22.947-2.11 -33.233-6.33 -10.287-3.957 -19.254-10.023 -26.903-18.199 -7.385-8.177 -13.188-18.463 -17.408-30.86 -4.22-12.397 -6.33-26.772 -6.33-43.124 0-14.507 1.582-27.827 4.748-39.959 3.429-12.133 8.572-22.683 15.43-31.651 6.858-8.704 15.562-15.562 26.112-20.573 10.55-4.748 23.211-7.122 37.981-7.121 17.672,0 32.046,1.714 43.124,5.143 11.078,3.693 19.65,7.121 25.716,10.287 l 13.452-40.751 c -3.165-2.11 -7.517-4.22 -13.056-6.33 -5.275-2.11 -11.606-4.22 -18.991-6.33 -7.385-1.846 -15.694-3.297 -24.925-4.352 -9.232-1.319 -19.123-1.978 -29.673-1.978" />
|
||||
<glyph unicode=" " horiz-adv-x="256" />
|
||||
</font></defs></svg>
|
After Width: | Height: | Size: 3.6 KiB |
BIN
vendor/algb12/graph-ds/doc/css/phpdocumentor-clean-icons/fonts/phpdocumentor-clean-icons.ttf
vendored
Normal file
BIN
vendor/algb12/graph-ds/doc/css/phpdocumentor-clean-icons/fonts/phpdocumentor-clean-icons.woff
vendored
Normal file
|
@ -0,0 +1,30 @@
|
|||
/* Load this script using conditional IE comments if you need to support IE 7 and IE 6. */
|
||||
|
||||
window.onload = function() {
|
||||
function addIcon(el, entity) {
|
||||
var html = el.innerHTML;
|
||||
el.innerHTML = '<span style="font-family: \'phpdocumentor-clean-icons\'">' + entity + '</span>' + html;
|
||||
}
|
||||
var icons = {
|
||||
'icon-trait' : '',
|
||||
'icon-interface' : '',
|
||||
'icon-class' : ''
|
||||
},
|
||||
els = document.getElementsByTagName('*'),
|
||||
i, attr, html, c, el;
|
||||
for (i = 0; ; i += 1) {
|
||||
el = els[i];
|
||||
if(!el) {
|
||||
break;
|
||||
}
|
||||
attr = el.getAttribute('data-icon');
|
||||
if (attr) {
|
||||
addIcon(el, attr);
|
||||
}
|
||||
c = el.className;
|
||||
c = c.match(/icon-[^\s'"]+/);
|
||||
if (c && icons[c[0]]) {
|
||||
addIcon(el, icons[c[0]]);
|
||||
}
|
||||
}
|
||||
};
|
|
@ -0,0 +1,48 @@
|
|||
@font-face {
|
||||
font-family: 'phpdocumentor-clean-icons';
|
||||
src:url('fonts/phpdocumentor-clean-icons.eot');
|
||||
src:url('fonts/phpdocumentor-clean-icons.eot?#iefix') format('embedded-opentype'),
|
||||
url('fonts/phpdocumentor-clean-icons.woff') format('woff'),
|
||||
url('fonts/phpdocumentor-clean-icons.ttf') format('truetype'),
|
||||
url('fonts/phpdocumentor-clean-icons.svg#phpdocumentor-clean-icons') format('svg');
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
/* Use the following CSS code if you want to use data attributes for inserting your icons */
|
||||
[data-icon]:before {
|
||||
font-family: 'phpdocumentor-clean-icons';
|
||||
content: attr(data-icon);
|
||||
speak: none;
|
||||
font-weight: normal;
|
||||
font-variant: normal;
|
||||
text-transform: none;
|
||||
line-height: 1;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
/* Use the following CSS code if you want to have a class per icon */
|
||||
/*
|
||||
Instead of a list of all class selectors,
|
||||
you can use the generic selector below, but it's slower:
|
||||
[class*="icon-"] {
|
||||
*/
|
||||
.icon-trait, .icon-interface, .icon-class {
|
||||
font-family: 'phpdocumentor-clean-icons';
|
||||
speak: none;
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
font-variant: normal;
|
||||
text-transform: none;
|
||||
line-height: 1;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
.icon-trait:before {
|
||||
content: "\e000";
|
||||
}
|
||||
.icon-interface:before {
|
||||
content: "\e001";
|
||||
}
|
||||
.icon-class:before {
|
||||
content: "\e002";
|
||||
}
|
|
@ -0,0 +1,204 @@
|
|||
/**
|
||||
* prism.js default theme for JavaScript, CSS and HTML
|
||||
* Based on dabblet (http://dabblet.com)
|
||||
* @author Lea Verou
|
||||
*/
|
||||
|
||||
code[class*="language-"],
|
||||
pre[class*="language-"] {
|
||||
color: black;
|
||||
text-shadow: 0 1px white;
|
||||
font-family: Consolas, Monaco, 'Andale Mono', monospace;
|
||||
direction: ltr;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
word-spacing: normal;
|
||||
|
||||
-moz-tab-size: 4;
|
||||
-o-tab-size: 4;
|
||||
tab-size: 4;
|
||||
|
||||
-webkit-hyphens: none;
|
||||
-moz-hyphens: none;
|
||||
-ms-hyphens: none;
|
||||
hyphens: none;
|
||||
}
|
||||
|
||||
::-moz-selection {
|
||||
text-shadow: none;
|
||||
background: #b3d4fc;
|
||||
}
|
||||
|
||||
::selection {
|
||||
text-shadow: none;
|
||||
background: #b3d4fc;
|
||||
}
|
||||
|
||||
@media print {
|
||||
code[class*="language-"],
|
||||
pre[class*="language-"] {
|
||||
text-shadow: none;
|
||||
}
|
||||
}
|
||||
|
||||
/* Code blocks */
|
||||
pre[class*="language-"] {
|
||||
padding: 1em;
|
||||
margin: .5em 0;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
:not(pre) > code[class*="language-"],
|
||||
pre[class*="language-"] {
|
||||
background: #f5f2f0;
|
||||
}
|
||||
|
||||
/* Inline code */
|
||||
:not(pre) > code[class*="language-"] {
|
||||
padding: .1em;
|
||||
border-radius: .3em;
|
||||
}
|
||||
|
||||
.token.comment,
|
||||
.token.prolog,
|
||||
.token.doctype,
|
||||
.token.cdata {
|
||||
color: slategray;
|
||||
}
|
||||
|
||||
.token.punctuation {
|
||||
color: #999;
|
||||
}
|
||||
|
||||
.namespace {
|
||||
opacity: .7;
|
||||
}
|
||||
|
||||
.token.property,
|
||||
.token.tag,
|
||||
.token.boolean,
|
||||
.token.number {
|
||||
color: #905;
|
||||
}
|
||||
|
||||
.token.selector,
|
||||
.token.attr-name,
|
||||
.token.string {
|
||||
color: #690;
|
||||
}
|
||||
|
||||
.token.operator,
|
||||
.token.entity,
|
||||
.token.url,
|
||||
.language-css .token.string,
|
||||
.style .token.string {
|
||||
color: #a67f59;
|
||||
background: hsla(0,0%,100%,.5);
|
||||
}
|
||||
|
||||
.token.atrule,
|
||||
.token.attr-value,
|
||||
.token.keyword {
|
||||
color: #07a;
|
||||
}
|
||||
|
||||
|
||||
.token.regex,
|
||||
.token.important {
|
||||
color: #e90;
|
||||
}
|
||||
|
||||
.token.important {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.token.entity {
|
||||
cursor: help;
|
||||
}
|
||||
pre[data-line] {
|
||||
position: relative;
|
||||
padding: 1em 0 1em 3em;
|
||||
}
|
||||
|
||||
.line-highlight {
|
||||
position: absolute;
|
||||
left: 0;
|
||||
right: 0;
|
||||
padding: inherit 0;
|
||||
margin-top: 1em; /* Same as .prism’s padding-top */
|
||||
|
||||
background: hsla(24, 20%, 50%,.08);
|
||||
background: -moz-linear-gradient(left, hsla(24, 20%, 50%,.1) 70%, hsla(24, 20%, 50%,0));
|
||||
background: -webkit-linear-gradient(left, hsla(24, 20%, 50%,.1) 70%, hsla(24, 20%, 50%,0));
|
||||
background: -o-linear-gradient(left, hsla(24, 20%, 50%,.1) 70%, hsla(24, 20%, 50%,0));
|
||||
background: linear-gradient(left, hsla(24, 20%, 50%,.1) 70%, hsla(24, 20%, 50%,0));
|
||||
|
||||
pointer-events: none;
|
||||
|
||||
line-height: inherit;
|
||||
white-space: pre;
|
||||
}
|
||||
|
||||
.line-highlight:before,
|
||||
.line-highlight[data-end]:after {
|
||||
content: attr(data-start);
|
||||
position: absolute;
|
||||
top: .4em;
|
||||
left: .6em;
|
||||
min-width: 1em;
|
||||
padding: 0 .5em;
|
||||
background-color: hsla(24, 20%, 50%,.4);
|
||||
color: hsl(24, 20%, 95%);
|
||||
font: bold 65%/1.5 sans-serif;
|
||||
text-align: center;
|
||||
vertical-align: .3em;
|
||||
border-radius: 999px;
|
||||
text-shadow: none;
|
||||
box-shadow: 0 1px white;
|
||||
}
|
||||
|
||||
.line-highlight[data-end]:after {
|
||||
content: attr(data-end);
|
||||
top: auto;
|
||||
bottom: .4em;
|
||||
}
|
||||
pre.line-numbers {
|
||||
position: relative;
|
||||
padding-left: 3.8em;
|
||||
counter-reset: linenumber;
|
||||
}
|
||||
|
||||
pre.line-numbers > code {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.line-numbers .line-numbers-rows {
|
||||
position: absolute;
|
||||
pointer-events: none;
|
||||
top: 0;
|
||||
font-size: 100%;
|
||||
left: -3.8em;
|
||||
width: 3em; /* works for line-numbers below 1000 lines */
|
||||
letter-spacing: -1px;
|
||||
border-right: 1px solid #999;
|
||||
|
||||
-webkit-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
|
||||
}
|
||||
|
||||
.line-numbers-rows > span {
|
||||
pointer-events: none;
|
||||
display: block;
|
||||
counter-increment: linenumber;
|
||||
}
|
||||
|
||||
.line-numbers-rows > span:before {
|
||||
content: counter(linenumber);
|
||||
color: #999;
|
||||
display: block;
|
||||
padding-right: 0.8em;
|
||||
text-align: right;
|
||||
}
|
|
@ -0,0 +1,429 @@
|
|||
@import url(https://fonts.googleapis.com/css?family=Source+Sans+Pro);
|
||||
@import url('phpdocumentor-clean-icons/style.css');
|
||||
|
||||
body {
|
||||
padding-top: 40px;
|
||||
background-color: #333333;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #6495ed;
|
||||
}
|
||||
a.anchor {
|
||||
height: 40px;
|
||||
margin-top: -40px;
|
||||
display: block;
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5, h6, .brand {
|
||||
font-family: 'Source Sans Pro', sans-serif;
|
||||
font-weight: normal;
|
||||
letter-spacing: 0.05em;
|
||||
}
|
||||
|
||||
h2, h3, .detailsbar h1 {
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
margin: 30px 0 20px 0;
|
||||
}
|
||||
|
||||
h2:after, h3:after, .detailsbar h1:after {
|
||||
content: '';
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
width: 100%;
|
||||
height: 2px;
|
||||
margin-left: 1em;
|
||||
background: silver;
|
||||
}
|
||||
|
||||
h3 {
|
||||
margin: 10px 0 20px 0;
|
||||
}
|
||||
|
||||
h4 {
|
||||
margin: 20px 0 10px 0;
|
||||
color: gray;
|
||||
font-size: 18.5px;
|
||||
}
|
||||
|
||||
h3.public, h3.protected, h3.private {
|
||||
padding-left: 10px;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
.table tr:first-of-type th, .table tr:first-of-type td {
|
||||
border-top: none;
|
||||
}
|
||||
.detailsbar {
|
||||
color: #eeeeee;
|
||||
background-color: #333333;
|
||||
font-size: 0.9em;
|
||||
overflow: hidden;
|
||||
border-left: 2px solid gray;
|
||||
}
|
||||
|
||||
.detailsbar h1 {
|
||||
font-size: 1.5em;
|
||||
margin-bottom: 20px;
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.detailsbar h2 {
|
||||
font-size: 1.2em;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.detailsbar h1:after {
|
||||
background: gray;
|
||||
}
|
||||
.detailsbar h2:after, .detailsbar h3:after {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.detailsbar dt {
|
||||
font-variant: small-caps;
|
||||
text-transform: lowercase;
|
||||
font-size: 1.1em;
|
||||
letter-spacing: 0.1em;
|
||||
color: silver;
|
||||
}
|
||||
|
||||
.hierarchy div:nth-of-type(2) { margin-left: 11px; }
|
||||
.hierarchy div:nth-of-type(3) { margin-left: 22px; }
|
||||
.hierarchy div:nth-of-type(4) { margin-left: 33px; }
|
||||
.hierarchy div:nth-of-type(5) { margin-left: 44px; }
|
||||
.hierarchy div:nth-of-type(6) { margin-left: 55px; }
|
||||
.hierarchy div:nth-of-type(7) { margin-left: 66px; }
|
||||
.hierarchy div:nth-of-type(8) { margin-left: 77px; }
|
||||
.hierarchy div:nth-of-type(9) { margin-left: 88px; }
|
||||
.hierarchy div:before {
|
||||
content: "\f0da";
|
||||
font-family: FontAwesome;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.row-fluid {
|
||||
background-color: white;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
footer.row-fluid, footer.row-fluid * {
|
||||
background-color: #333333;
|
||||
color: white;
|
||||
}
|
||||
|
||||
footer.row-fluid {
|
||||
border-top: 2px dashed #555;
|
||||
margin-top: 2px;
|
||||
}
|
||||
|
||||
.footer-sections .span4 {
|
||||
border: 2px solid #555;
|
||||
text-align: center;
|
||||
border-radius: 10px;
|
||||
margin-top: 70px;
|
||||
margin-bottom: 20px;
|
||||
background: #373737;
|
||||
}
|
||||
|
||||
.footer-sections .span4 h1 {
|
||||
background: transparent;
|
||||
margin-top: -30px;
|
||||
margin-bottom: 20px;
|
||||
font-size: 5em;
|
||||
}
|
||||
|
||||
.footer-sections .span4 h1 * {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.footer-sections .span4 div {
|
||||
border-bottom-right-radius: 6px;
|
||||
border-bottom-left-radius: 6px;
|
||||
padding: 10px;
|
||||
min-height: 40px;
|
||||
}
|
||||
.footer-sections .span4 div, .footer-sections .span4 div * {
|
||||
background-color: #555;
|
||||
}
|
||||
.footer-sections .span4 ul {
|
||||
text-align: left;
|
||||
list-style: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.content {
|
||||
background-color: white;
|
||||
padding-right: 20px;
|
||||
}
|
||||
|
||||
.content nav {
|
||||
text-align: center;
|
||||
border-bottom: 1px solid silver;
|
||||
margin: 5px 0 20px 0;
|
||||
padding-bottom: 5px;
|
||||
}
|
||||
|
||||
.content > h1 {
|
||||
padding-bottom: 15px;
|
||||
}
|
||||
|
||||
.content > h1 small {
|
||||
display: block;
|
||||
padding-bottom: 8px;
|
||||
font-size: 0.6em;
|
||||
}
|
||||
|
||||
.deprecated {
|
||||
text-decoration: line-through;
|
||||
}
|
||||
|
||||
.method {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.method .signature .argument {
|
||||
color: maroon;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.class #summary section.row-fluid {
|
||||
overflow: hidden
|
||||
}
|
||||
|
||||
.class #summary .heading {
|
||||
font-weight: bold;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.class #summary section .span4 {
|
||||
padding: 3px;
|
||||
overflow: hidden;
|
||||
margin-bottom: -9999px;
|
||||
padding-bottom: 9999px;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
border-left: 5px solid transparent;
|
||||
}
|
||||
|
||||
.class #summary section.public .span4:first-of-type:before,
|
||||
.class #summary section.public .span6:first-of-type:before,
|
||||
h3.public:before {
|
||||
font-family: FontAwesome;
|
||||
content: "\f046";
|
||||
color: green;
|
||||
display: inline-block;
|
||||
width: 1.2em;
|
||||
}
|
||||
|
||||
.class #summary section .span4:first-of-type,
|
||||
.class #summary section .span6:first-of-type {
|
||||
padding-left: 21px;
|
||||
}
|
||||
.class #summary section .span4:first-of-type:before,
|
||||
.class #summary section .span6:first-of-type:before {
|
||||
margin-left: -21px;
|
||||
}
|
||||
.class #summary section.protected .span4:first-of-type:before,
|
||||
.class #summary section.protected .span6:first-of-type:before,
|
||||
h3.protected:before {
|
||||
font-family: FontAwesome;
|
||||
content: "\f132";
|
||||
color: orange;
|
||||
display: inline-block;
|
||||
width: 1.2em;
|
||||
}
|
||||
|
||||
.class #summary section.private .span4:first-of-type:before,
|
||||
.class #summary section.private .span6:first-of-type:before,
|
||||
h3.private:before {
|
||||
font-family: FontAwesome;
|
||||
content: "\f023";
|
||||
color: red;
|
||||
display: inline-block;
|
||||
width: 1.2em;
|
||||
}
|
||||
|
||||
.class #summary section em {
|
||||
font-size: 0.9em;
|
||||
color: silver;
|
||||
}
|
||||
.class #summary .inherited {
|
||||
color: gray;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.accordion-group {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.accordion {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.accordion a:hover {
|
||||
text-decoration: none;
|
||||
background: #333333;
|
||||
color: #eeeeee;
|
||||
}
|
||||
|
||||
.accordion-heading .accordion-toggle:before {
|
||||
content: "\f078";
|
||||
font-family: FontAwesome;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.accordion-heading .accordion-toggle.collapsed:before {
|
||||
content: "\f054";
|
||||
}
|
||||
.accordion-heading .accordion-toggle {
|
||||
float: left;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
padding: 4px 2px 4px 12px;
|
||||
}
|
||||
.accordion-heading a {
|
||||
display: block;
|
||||
padding: 4px 12px;
|
||||
}
|
||||
|
||||
.accordion-inner a {
|
||||
display: block;
|
||||
padding: 4px 12px;
|
||||
}
|
||||
|
||||
.accordion-inner > ul a:before {
|
||||
font-family: 'phpdocumentor-clean-icons';
|
||||
content: "\e001";
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.accordion-inner li.class a:before {
|
||||
content: "\e002";
|
||||
}
|
||||
|
||||
.accordion-inner li.interface a:before {
|
||||
content: "\e001";
|
||||
}
|
||||
|
||||
.accordion-inner li.trait a:before {
|
||||
content: "\e000";
|
||||
}
|
||||
|
||||
.accordion-inner {
|
||||
padding: 4px 0 4px 12px;
|
||||
}
|
||||
.accordion-inner ul {
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.row-fluid .span2 {
|
||||
width: 16.5%;
|
||||
}
|
||||
|
||||
body .modal {
|
||||
width: 90%; /* desired relative width */
|
||||
left: 5%; /* (100%-width)/2 */
|
||||
/* place center */
|
||||
margin-left:auto;
|
||||
margin-right:auto;
|
||||
}
|
||||
|
||||
.side-nav.nav-list li a {
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
@media (min-width: 767px) {
|
||||
.sidebar {
|
||||
position: fixed;
|
||||
top: 40px;
|
||||
bottom: 0;
|
||||
background-color: #f3f3f3;
|
||||
left: 0;
|
||||
border-right: 1px solid #e9e9e9;
|
||||
overflow-y: scroll;
|
||||
overflow-x: hidden;
|
||||
padding-top: 10px;
|
||||
}
|
||||
|
||||
.sidebar::-webkit-scrollbar {
|
||||
width: 10px;
|
||||
}
|
||||
|
||||
.sidebar::-webkit-scrollbar-thumb {
|
||||
background: #cccccc;
|
||||
background-clip: padding-box;
|
||||
border: 3px solid #f3f3f3;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.sidebar::-webkit-scrollbar-button {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.sidebar::-webkit-scrollbar-track {
|
||||
background: #f3f3f3;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 979px) {
|
||||
body {
|
||||
padding-top: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 767px) {
|
||||
.class #summary .heading {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.detailsbar h1 {
|
||||
display: none;
|
||||
}
|
||||
|
||||
body {
|
||||
background-color: white;
|
||||
}
|
||||
|
||||
footer.row-fluid, footer.row-fluid * {
|
||||
background-color: white;
|
||||
}
|
||||
|
||||
.footer-sections .span4 h1 {
|
||||
color: #ccccd9;
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.detailsbar {
|
||||
background-color: white;
|
||||
color: #333;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.row-fluid .span2 {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 767px) {
|
||||
.detailsbar {
|
||||
min-height: 100%;
|
||||
margin-bottom: -99999px;
|
||||
padding-bottom: 99999px;
|
||||
padding-left: 20px;
|
||||
padding-top: 10px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1200px) {
|
||||
.row-fluid .span2 {
|
||||
width: 16.5%;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,379 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
||||
<meta charset="utf-8"/>
|
||||
<title>API Documentation</title>
|
||||
<meta name="author" content=""/>
|
||||
<meta name="description" content=""/>
|
||||
|
||||
<link href="../css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
|
||||
<link href="../css/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="../css/prism.css" rel="stylesheet" media="all"/>
|
||||
<link href="../css/template.css" rel="stylesheet" media="all"/>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="../js/jquery-1.11.0.min.js"></script>
|
||||
<script src="../js/ui/1.10.4/jquery-ui.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.smooth-scroll.js"></script>
|
||||
<script src="../js/prism.min.js"></script>
|
||||
<!-- TODO: Add http://jscrollpane.kelvinluck.com/ to style the scrollbars for browsers not using webkit-->
|
||||
<script type="text/javascript">
|
||||
function loadExternalCodeSnippets() {
|
||||
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach(function (pre) {
|
||||
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
|
||||
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
|
||||
var language = 'php';
|
||||
|
||||
var code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
|
||||
pre.textContent = '';
|
||||
|
||||
code.textContent = 'Loading…';
|
||||
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
|
||||
Prism.highlightElement(code);
|
||||
}
|
||||
else if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
}
|
||||
else {
|
||||
code.textContent = '✖ Error: File does not exist or is empty';
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
loadExternalCodeSnippets();
|
||||
});
|
||||
$('#source-view').on('shown', function () {
|
||||
loadExternalCodeSnippets();
|
||||
})
|
||||
</script>
|
||||
|
||||
<link rel="shortcut icon" href="../images/favicon.ico"/>
|
||||
<link rel="apple-touch-icon" href="../images/apple-touch-icon.png"/>
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../images/apple-touch-icon-72x72.png"/>
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="../images/apple-touch-icon-114x114.png"/>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<i class="icon-ellipsis-vertical"></i>
|
||||
</a>
|
||||
<a class="brand" href="../index.html">API Documentation</a>
|
||||
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav pull-right">
|
||||
<li class="dropdown">
|
||||
<a href="../index.html" class="dropdown-toggle" data-toggle="dropdown">
|
||||
API Documentation <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="charts-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Charts <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../graphs/class.html">
|
||||
<i class="icon-list-alt"></i> Class hierarchy diagram
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="reports-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Reports <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../reports/errors.html">
|
||||
<i class="icon-list-alt"></i> Errors <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/markers.html">
|
||||
<i class="icon-list-alt"></i> Markers <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/deprecated.html">
|
||||
<i class="icon-list-alt"></i> Deprecated <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="go_to_top">-->
|
||||
<!--<a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a>-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
|
||||
<div id="___" class="container-fluid">
|
||||
<section class="row-fluid">
|
||||
<div class="span2 sidebar">
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-1994719899"></a>
|
||||
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
|
||||
</div>
|
||||
<div id="namespace-1994719899" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1076704504"></a>
|
||||
<a href="../namespaces/GraphDS.html" style="margin-left: 30px; padding-left: 0">GraphDS</a>
|
||||
</div>
|
||||
<div id="namespace-1076704504" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1670210420"></a>
|
||||
<a href="../namespaces/GraphDS.Algo.html" style="margin-left: 30px; padding-left: 0">Algo</a>
|
||||
</div>
|
||||
<div id="namespace-1670210420" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1640537340"></a>
|
||||
<a href="../namespaces/GraphDS.Edge.html" style="margin-left: 30px; padding-left: 0">Edge</a>
|
||||
</div>
|
||||
<div id="namespace-1640537340" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.DirectedEdge.html">DirectedEdge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.Edge.html">Edge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.UndirectedEdge.html">UndirectedEdge</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-977366089"></a>
|
||||
<a href="../namespaces/GraphDS.Graph.html" style="margin-left: 30px; padding-left: 0">Graph</a>
|
||||
</div>
|
||||
<div id="namespace-977366089" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.DirectedGraph.html">DirectedGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.Graph.html">Graph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.UndirectedGraph.html">UndirectedGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-938255323"></a>
|
||||
<a href="../namespaces/GraphDS.Persistence.html" style="margin-left: 30px; padding-left: 0">Persistence</a>
|
||||
</div>
|
||||
<div id="namespace-938255323" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ExportGraph.html">ExportGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ImportGraph.html">ImportGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-706230726"></a>
|
||||
<a href="../namespaces/GraphDS.Vertex.html" style="margin-left: 30px; padding-left: 0">Vertex</a>
|
||||
</div>
|
||||
<div id="namespace-706230726" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.DirectedVertex.html">DirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.UndirectedVertex.html">UndirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.Vertex.html">Vertex</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<div class="span10 offset2">
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content file">
|
||||
<nav>
|
||||
</nav>
|
||||
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal"><i class="icon-code"></i></a>
|
||||
<h1><small>Algo</small>BFS.php</h1>
|
||||
<p><em>Breadth-first search.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h2>Classes</h2>
|
||||
<table class="table table-hover">
|
||||
<tr>
|
||||
<td><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></td>
|
||||
<td><em>Class defining the breadth-dirst search.</em></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<aside class="span4 detailsbar">
|
||||
<dl>
|
||||
<dt>Package</dt>
|
||||
<dd><div class="namespace-wrapper">\Default</div></dd>
|
||||
|
||||
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="source-view" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="source-view-label" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="source-view-label"></h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<pre data-src="../files/Algo/BFS.php.txt" class="language-php line-numbers"></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="row-fluid">
|
||||
<section class="span10 offset2">
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<section class="row-fluid footer-sections">
|
||||
<section class="span4">
|
||||
<h1><i class="icon-code"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-bar-chart"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../graphs/class.html">Class Hierarchy Diagram</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-pushpin"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../reports/errors.html">Errors</a></li>
|
||||
<li><a href="../reports/markers.html">Markers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<hr />
|
||||
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
|
||||
on April 2nd, 2018 at 23:46.
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,379 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
||||
<meta charset="utf-8"/>
|
||||
<title>API Documentation</title>
|
||||
<meta name="author" content=""/>
|
||||
<meta name="description" content=""/>
|
||||
|
||||
<link href="../css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
|
||||
<link href="../css/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="../css/prism.css" rel="stylesheet" media="all"/>
|
||||
<link href="../css/template.css" rel="stylesheet" media="all"/>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="../js/jquery-1.11.0.min.js"></script>
|
||||
<script src="../js/ui/1.10.4/jquery-ui.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.smooth-scroll.js"></script>
|
||||
<script src="../js/prism.min.js"></script>
|
||||
<!-- TODO: Add http://jscrollpane.kelvinluck.com/ to style the scrollbars for browsers not using webkit-->
|
||||
<script type="text/javascript">
|
||||
function loadExternalCodeSnippets() {
|
||||
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach(function (pre) {
|
||||
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
|
||||
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
|
||||
var language = 'php';
|
||||
|
||||
var code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
|
||||
pre.textContent = '';
|
||||
|
||||
code.textContent = 'Loading…';
|
||||
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
|
||||
Prism.highlightElement(code);
|
||||
}
|
||||
else if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
}
|
||||
else {
|
||||
code.textContent = '✖ Error: File does not exist or is empty';
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
loadExternalCodeSnippets();
|
||||
});
|
||||
$('#source-view').on('shown', function () {
|
||||
loadExternalCodeSnippets();
|
||||
})
|
||||
</script>
|
||||
|
||||
<link rel="shortcut icon" href="../images/favicon.ico"/>
|
||||
<link rel="apple-touch-icon" href="../images/apple-touch-icon.png"/>
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../images/apple-touch-icon-72x72.png"/>
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="../images/apple-touch-icon-114x114.png"/>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<i class="icon-ellipsis-vertical"></i>
|
||||
</a>
|
||||
<a class="brand" href="../index.html">API Documentation</a>
|
||||
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav pull-right">
|
||||
<li class="dropdown">
|
||||
<a href="../index.html" class="dropdown-toggle" data-toggle="dropdown">
|
||||
API Documentation <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="charts-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Charts <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../graphs/class.html">
|
||||
<i class="icon-list-alt"></i> Class hierarchy diagram
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="reports-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Reports <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../reports/errors.html">
|
||||
<i class="icon-list-alt"></i> Errors <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/markers.html">
|
||||
<i class="icon-list-alt"></i> Markers <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/deprecated.html">
|
||||
<i class="icon-list-alt"></i> Deprecated <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="go_to_top">-->
|
||||
<!--<a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a>-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
|
||||
<div id="___" class="container-fluid">
|
||||
<section class="row-fluid">
|
||||
<div class="span2 sidebar">
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-30477078"></a>
|
||||
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
|
||||
</div>
|
||||
<div id="namespace-30477078" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1736017602"></a>
|
||||
<a href="../namespaces/GraphDS.html" style="margin-left: 30px; padding-left: 0">GraphDS</a>
|
||||
</div>
|
||||
<div id="namespace-1736017602" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-183669624"></a>
|
||||
<a href="../namespaces/GraphDS.Algo.html" style="margin-left: 30px; padding-left: 0">Algo</a>
|
||||
</div>
|
||||
<div id="namespace-183669624" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1312562098"></a>
|
||||
<a href="../namespaces/GraphDS.Edge.html" style="margin-left: 30px; padding-left: 0">Edge</a>
|
||||
</div>
|
||||
<div id="namespace-1312562098" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.DirectedEdge.html">DirectedEdge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.Edge.html">Edge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.UndirectedEdge.html">UndirectedEdge</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1767341392"></a>
|
||||
<a href="../namespaces/GraphDS.Graph.html" style="margin-left: 30px; padding-left: 0">Graph</a>
|
||||
</div>
|
||||
<div id="namespace-1767341392" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.DirectedGraph.html">DirectedGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.Graph.html">Graph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.UndirectedGraph.html">UndirectedGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-2098574061"></a>
|
||||
<a href="../namespaces/GraphDS.Persistence.html" style="margin-left: 30px; padding-left: 0">Persistence</a>
|
||||
</div>
|
||||
<div id="namespace-2098574061" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ExportGraph.html">ExportGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ImportGraph.html">ImportGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-558755843"></a>
|
||||
<a href="../namespaces/GraphDS.Vertex.html" style="margin-left: 30px; padding-left: 0">Vertex</a>
|
||||
</div>
|
||||
<div id="namespace-558755843" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.DirectedVertex.html">DirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.UndirectedVertex.html">UndirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.Vertex.html">Vertex</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<div class="span10 offset2">
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content file">
|
||||
<nav>
|
||||
</nav>
|
||||
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal"><i class="icon-code"></i></a>
|
||||
<h1><small>Algo</small>DFS.php</h1>
|
||||
<p><em>Depth-first search.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h2>Classes</h2>
|
||||
<table class="table table-hover">
|
||||
<tr>
|
||||
<td><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></td>
|
||||
<td><em>Class defining depth-first search.</em></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<aside class="span4 detailsbar">
|
||||
<dl>
|
||||
<dt>Package</dt>
|
||||
<dd><div class="namespace-wrapper">\Default</div></dd>
|
||||
|
||||
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="source-view" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="source-view-label" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="source-view-label"></h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<pre data-src="../files/Algo/DFS.php.txt" class="language-php line-numbers"></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="row-fluid">
|
||||
<section class="span10 offset2">
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<section class="row-fluid footer-sections">
|
||||
<section class="span4">
|
||||
<h1><i class="icon-code"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-bar-chart"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../graphs/class.html">Class Hierarchy Diagram</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-pushpin"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../reports/errors.html">Errors</a></li>
|
||||
<li><a href="../reports/markers.html">Markers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<hr />
|
||||
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
|
||||
on April 2nd, 2018 at 23:46.
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,379 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
||||
<meta charset="utf-8"/>
|
||||
<title>API Documentation</title>
|
||||
<meta name="author" content=""/>
|
||||
<meta name="description" content=""/>
|
||||
|
||||
<link href="../css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
|
||||
<link href="../css/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="../css/prism.css" rel="stylesheet" media="all"/>
|
||||
<link href="../css/template.css" rel="stylesheet" media="all"/>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="../js/jquery-1.11.0.min.js"></script>
|
||||
<script src="../js/ui/1.10.4/jquery-ui.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.smooth-scroll.js"></script>
|
||||
<script src="../js/prism.min.js"></script>
|
||||
<!-- TODO: Add http://jscrollpane.kelvinluck.com/ to style the scrollbars for browsers not using webkit-->
|
||||
<script type="text/javascript">
|
||||
function loadExternalCodeSnippets() {
|
||||
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach(function (pre) {
|
||||
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
|
||||
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
|
||||
var language = 'php';
|
||||
|
||||
var code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
|
||||
pre.textContent = '';
|
||||
|
||||
code.textContent = 'Loading…';
|
||||
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
|
||||
Prism.highlightElement(code);
|
||||
}
|
||||
else if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
}
|
||||
else {
|
||||
code.textContent = '✖ Error: File does not exist or is empty';
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
loadExternalCodeSnippets();
|
||||
});
|
||||
$('#source-view').on('shown', function () {
|
||||
loadExternalCodeSnippets();
|
||||
})
|
||||
</script>
|
||||
|
||||
<link rel="shortcut icon" href="../images/favicon.ico"/>
|
||||
<link rel="apple-touch-icon" href="../images/apple-touch-icon.png"/>
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../images/apple-touch-icon-72x72.png"/>
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="../images/apple-touch-icon-114x114.png"/>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<i class="icon-ellipsis-vertical"></i>
|
||||
</a>
|
||||
<a class="brand" href="../index.html">API Documentation</a>
|
||||
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav pull-right">
|
||||
<li class="dropdown">
|
||||
<a href="../index.html" class="dropdown-toggle" data-toggle="dropdown">
|
||||
API Documentation <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="charts-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Charts <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../graphs/class.html">
|
||||
<i class="icon-list-alt"></i> Class hierarchy diagram
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="reports-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Reports <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../reports/errors.html">
|
||||
<i class="icon-list-alt"></i> Errors <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/markers.html">
|
||||
<i class="icon-list-alt"></i> Markers <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/deprecated.html">
|
||||
<i class="icon-list-alt"></i> Deprecated <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="go_to_top">-->
|
||||
<!--<a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a>-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
|
||||
<div id="___" class="container-fluid">
|
||||
<section class="row-fluid">
|
||||
<div class="span2 sidebar">
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-1651518710"></a>
|
||||
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
|
||||
</div>
|
||||
<div id="namespace-1651518710" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-101865311"></a>
|
||||
<a href="../namespaces/GraphDS.html" style="margin-left: 30px; padding-left: 0">GraphDS</a>
|
||||
</div>
|
||||
<div id="namespace-101865311" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-178252765"></a>
|
||||
<a href="../namespaces/GraphDS.Algo.html" style="margin-left: 30px; padding-left: 0">Algo</a>
|
||||
</div>
|
||||
<div id="namespace-178252765" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1966906233"></a>
|
||||
<a href="../namespaces/GraphDS.Edge.html" style="margin-left: 30px; padding-left: 0">Edge</a>
|
||||
</div>
|
||||
<div id="namespace-1966906233" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.DirectedEdge.html">DirectedEdge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.Edge.html">Edge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.UndirectedEdge.html">UndirectedEdge</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-393686793"></a>
|
||||
<a href="../namespaces/GraphDS.Graph.html" style="margin-left: 30px; padding-left: 0">Graph</a>
|
||||
</div>
|
||||
<div id="namespace-393686793" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.DirectedGraph.html">DirectedGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.Graph.html">Graph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.UndirectedGraph.html">UndirectedGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-926401551"></a>
|
||||
<a href="../namespaces/GraphDS.Persistence.html" style="margin-left: 30px; padding-left: 0">Persistence</a>
|
||||
</div>
|
||||
<div id="namespace-926401551" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ExportGraph.html">ExportGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ImportGraph.html">ImportGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-806058102"></a>
|
||||
<a href="../namespaces/GraphDS.Vertex.html" style="margin-left: 30px; padding-left: 0">Vertex</a>
|
||||
</div>
|
||||
<div id="namespace-806058102" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.DirectedVertex.html">DirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.UndirectedVertex.html">UndirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.Vertex.html">Vertex</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<div class="span10 offset2">
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content file">
|
||||
<nav>
|
||||
</nav>
|
||||
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal"><i class="icon-code"></i></a>
|
||||
<h1><small>Algo</small>Dijkstra.php</h1>
|
||||
<p><em>Dijkstra's shortest path algorithm.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h2>Classes</h2>
|
||||
<table class="table table-hover">
|
||||
<tr>
|
||||
<td><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></td>
|
||||
<td><em>Class defining Dijkstra's shortest path algorithm.</em></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<aside class="span4 detailsbar">
|
||||
<dl>
|
||||
<dt>Package</dt>
|
||||
<dd><div class="namespace-wrapper">\Default</div></dd>
|
||||
|
||||
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="source-view" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="source-view-label" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="source-view-label"></h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<pre data-src="../files/Algo/Dijkstra.php.txt" class="language-php line-numbers"></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="row-fluid">
|
||||
<section class="span10 offset2">
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<section class="row-fluid footer-sections">
|
||||
<section class="span4">
|
||||
<h1><i class="icon-code"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-bar-chart"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../graphs/class.html">Class Hierarchy Diagram</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-pushpin"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../reports/errors.html">Errors</a></li>
|
||||
<li><a href="../reports/markers.html">Markers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<hr />
|
||||
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
|
||||
on April 2nd, 2018 at 23:46.
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,379 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
||||
<meta charset="utf-8"/>
|
||||
<title>API Documentation</title>
|
||||
<meta name="author" content=""/>
|
||||
<meta name="description" content=""/>
|
||||
|
||||
<link href="../css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
|
||||
<link href="../css/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="../css/prism.css" rel="stylesheet" media="all"/>
|
||||
<link href="../css/template.css" rel="stylesheet" media="all"/>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="../js/jquery-1.11.0.min.js"></script>
|
||||
<script src="../js/ui/1.10.4/jquery-ui.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.smooth-scroll.js"></script>
|
||||
<script src="../js/prism.min.js"></script>
|
||||
<!-- TODO: Add http://jscrollpane.kelvinluck.com/ to style the scrollbars for browsers not using webkit-->
|
||||
<script type="text/javascript">
|
||||
function loadExternalCodeSnippets() {
|
||||
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach(function (pre) {
|
||||
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
|
||||
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
|
||||
var language = 'php';
|
||||
|
||||
var code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
|
||||
pre.textContent = '';
|
||||
|
||||
code.textContent = 'Loading…';
|
||||
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
|
||||
Prism.highlightElement(code);
|
||||
}
|
||||
else if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
}
|
||||
else {
|
||||
code.textContent = '✖ Error: File does not exist or is empty';
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
loadExternalCodeSnippets();
|
||||
});
|
||||
$('#source-view').on('shown', function () {
|
||||
loadExternalCodeSnippets();
|
||||
})
|
||||
</script>
|
||||
|
||||
<link rel="shortcut icon" href="../images/favicon.ico"/>
|
||||
<link rel="apple-touch-icon" href="../images/apple-touch-icon.png"/>
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../images/apple-touch-icon-72x72.png"/>
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="../images/apple-touch-icon-114x114.png"/>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<i class="icon-ellipsis-vertical"></i>
|
||||
</a>
|
||||
<a class="brand" href="../index.html">API Documentation</a>
|
||||
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav pull-right">
|
||||
<li class="dropdown">
|
||||
<a href="../index.html" class="dropdown-toggle" data-toggle="dropdown">
|
||||
API Documentation <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="charts-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Charts <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../graphs/class.html">
|
||||
<i class="icon-list-alt"></i> Class hierarchy diagram
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="reports-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Reports <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../reports/errors.html">
|
||||
<i class="icon-list-alt"></i> Errors <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/markers.html">
|
||||
<i class="icon-list-alt"></i> Markers <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/deprecated.html">
|
||||
<i class="icon-list-alt"></i> Deprecated <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="go_to_top">-->
|
||||
<!--<a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a>-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
|
||||
<div id="___" class="container-fluid">
|
||||
<section class="row-fluid">
|
||||
<div class="span2 sidebar">
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-2111658941"></a>
|
||||
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
|
||||
</div>
|
||||
<div id="namespace-2111658941" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1910816216"></a>
|
||||
<a href="../namespaces/GraphDS.html" style="margin-left: 30px; padding-left: 0">GraphDS</a>
|
||||
</div>
|
||||
<div id="namespace-1910816216" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-778560090"></a>
|
||||
<a href="../namespaces/GraphDS.Algo.html" style="margin-left: 30px; padding-left: 0">Algo</a>
|
||||
</div>
|
||||
<div id="namespace-778560090" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1271733007"></a>
|
||||
<a href="../namespaces/GraphDS.Edge.html" style="margin-left: 30px; padding-left: 0">Edge</a>
|
||||
</div>
|
||||
<div id="namespace-1271733007" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.DirectedEdge.html">DirectedEdge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.Edge.html">Edge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.UndirectedEdge.html">UndirectedEdge</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1663398650"></a>
|
||||
<a href="../namespaces/GraphDS.Graph.html" style="margin-left: 30px; padding-left: 0">Graph</a>
|
||||
</div>
|
||||
<div id="namespace-1663398650" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.DirectedGraph.html">DirectedGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.Graph.html">Graph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.UndirectedGraph.html">UndirectedGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1687410175"></a>
|
||||
<a href="../namespaces/GraphDS.Persistence.html" style="margin-left: 30px; padding-left: 0">Persistence</a>
|
||||
</div>
|
||||
<div id="namespace-1687410175" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ExportGraph.html">ExportGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ImportGraph.html">ImportGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-672732525"></a>
|
||||
<a href="../namespaces/GraphDS.Vertex.html" style="margin-left: 30px; padding-left: 0">Vertex</a>
|
||||
</div>
|
||||
<div id="namespace-672732525" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.DirectedVertex.html">DirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.UndirectedVertex.html">UndirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.Vertex.html">Vertex</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<div class="span10 offset2">
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content file">
|
||||
<nav>
|
||||
</nav>
|
||||
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal"><i class="icon-code"></i></a>
|
||||
<h1><small>Algo</small>DijkstraMulti.php</h1>
|
||||
<p><em>Multi-path version of Dijkstra's shortest path algorithm.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h2>Classes</h2>
|
||||
<table class="table table-hover">
|
||||
<tr>
|
||||
<td><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></td>
|
||||
<td><em>Class defining the multi-path version of Dijkstra's shortest path algorithm.</em></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<aside class="span4 detailsbar">
|
||||
<dl>
|
||||
<dt>Package</dt>
|
||||
<dd><div class="namespace-wrapper">\Default</div></dd>
|
||||
|
||||
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="source-view" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="source-view-label" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="source-view-label"></h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<pre data-src="../files/Algo/DijkstraMulti.php.txt" class="language-php line-numbers"></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="row-fluid">
|
||||
<section class="span10 offset2">
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<section class="row-fluid footer-sections">
|
||||
<section class="span4">
|
||||
<h1><i class="icon-code"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-bar-chart"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../graphs/class.html">Class Hierarchy Diagram</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-pushpin"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../reports/errors.html">Errors</a></li>
|
||||
<li><a href="../reports/markers.html">Markers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<hr />
|
||||
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
|
||||
on April 2nd, 2018 at 23:46.
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,379 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
|
||||
<meta charset="utf-8"/>
|
||||
<title>API Documentation</title>
|
||||
<meta name="author" content=""/>
|
||||
<meta name="description" content=""/>
|
||||
|
||||
<link href="../css/bootstrap-combined.no-icons.min.css" rel="stylesheet">
|
||||
<link href="../css/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="../css/prism.css" rel="stylesheet" media="all"/>
|
||||
<link href="../css/template.css" rel="stylesheet" media="all"/>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="../js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<script src="../js/jquery-1.11.0.min.js"></script>
|
||||
<script src="../js/ui/1.10.4/jquery-ui.min.js"></script>
|
||||
<script src="../js/bootstrap.min.js"></script>
|
||||
<script src="../js/jquery.smooth-scroll.js"></script>
|
||||
<script src="../js/prism.min.js"></script>
|
||||
<!-- TODO: Add http://jscrollpane.kelvinluck.com/ to style the scrollbars for browsers not using webkit-->
|
||||
<script type="text/javascript">
|
||||
function loadExternalCodeSnippets() {
|
||||
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach(function (pre) {
|
||||
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
|
||||
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
|
||||
var language = 'php';
|
||||
|
||||
var code = document.createElement('code');
|
||||
code.className = 'language-' + language;
|
||||
|
||||
pre.textContent = '';
|
||||
|
||||
code.textContent = 'Loading…';
|
||||
|
||||
pre.appendChild(code);
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
||||
xhr.open('GET', src, true);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
if (xhr.readyState == 4) {
|
||||
|
||||
if (xhr.status < 400 && xhr.responseText) {
|
||||
code.textContent = xhr.responseText;
|
||||
|
||||
Prism.highlightElement(code);
|
||||
}
|
||||
else if (xhr.status >= 400) {
|
||||
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
|
||||
}
|
||||
else {
|
||||
code.textContent = '✖ Error: File does not exist or is empty';
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhr.send(null);
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function(){
|
||||
loadExternalCodeSnippets();
|
||||
});
|
||||
$('#source-view').on('shown', function () {
|
||||
loadExternalCodeSnippets();
|
||||
})
|
||||
</script>
|
||||
|
||||
<link rel="shortcut icon" href="../images/favicon.ico"/>
|
||||
<link rel="apple-touch-icon" href="../images/apple-touch-icon.png"/>
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="../images/apple-touch-icon-72x72.png"/>
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="../images/apple-touch-icon-114x114.png"/>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="navbar navbar-fixed-top">
|
||||
<div class="navbar-inner">
|
||||
<div class="container">
|
||||
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||
<i class="icon-ellipsis-vertical"></i>
|
||||
</a>
|
||||
<a class="brand" href="../index.html">API Documentation</a>
|
||||
|
||||
<div class="nav-collapse">
|
||||
<ul class="nav pull-right">
|
||||
<li class="dropdown">
|
||||
<a href="../index.html" class="dropdown-toggle" data-toggle="dropdown">
|
||||
API Documentation <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="charts-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Charts <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../graphs/class.html">
|
||||
<i class="icon-list-alt"></i> Class hierarchy diagram
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown" id="reports-menu">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
|
||||
Reports <b class="caret"></b>
|
||||
</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a href="../reports/errors.html">
|
||||
<i class="icon-list-alt"></i> Errors <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/markers.html">
|
||||
<i class="icon-list-alt"></i> Markers <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reports/deprecated.html">
|
||||
<i class="icon-list-alt"></i> Deprecated <span class="label label-info pull-right">0</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--<div class="go_to_top">-->
|
||||
<!--<a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a>-->
|
||||
<!--</div>-->
|
||||
</div>
|
||||
|
||||
<div id="___" class="container-fluid">
|
||||
<section class="row-fluid">
|
||||
<div class="span2 sidebar">
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle " data-toggle="collapse" data-target="#namespace-1222063225"></a>
|
||||
<a href="../namespaces/default.html" style="margin-left: 30px; padding-left: 0">\</a>
|
||||
</div>
|
||||
<div id="namespace-1222063225" class="accordion-body collapse in">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1399940308"></a>
|
||||
<a href="../namespaces/GraphDS.html" style="margin-left: 30px; padding-left: 0">GraphDS</a>
|
||||
</div>
|
||||
<div id="namespace-1399940308" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1591671489"></a>
|
||||
<a href="../namespaces/GraphDS.Algo.html" style="margin-left: 30px; padding-left: 0">Algo</a>
|
||||
</div>
|
||||
<div id="namespace-1591671489" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.BFS.html">BFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DFS.html">DFS</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.Dijkstra.html">Dijkstra</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.DijkstraMulti.html">DijkstraMulti</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-191665576"></a>
|
||||
<a href="../namespaces/GraphDS.Edge.html" style="margin-left: 30px; padding-left: 0">Edge</a>
|
||||
</div>
|
||||
<div id="namespace-191665576" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.DirectedEdge.html">DirectedEdge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.Edge.html">Edge</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Edge.UndirectedEdge.html">UndirectedEdge</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-298757252"></a>
|
||||
<a href="../namespaces/GraphDS.Graph.html" style="margin-left: 30px; padding-left: 0">Graph</a>
|
||||
</div>
|
||||
<div id="namespace-298757252" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.DirectedGraph.html">DirectedGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.Graph.html">Graph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Graph.UndirectedGraph.html">UndirectedGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-1317872636"></a>
|
||||
<a href="../namespaces/GraphDS.Persistence.html" style="margin-left: 30px; padding-left: 0">Persistence</a>
|
||||
</div>
|
||||
<div id="namespace-1317872636" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ExportGraph.html">ExportGraph</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Persistence.ImportGraph.html">ImportGraph</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="accordion" style="margin-bottom: 0">
|
||||
<div class="accordion-group">
|
||||
<div class="accordion-heading">
|
||||
<a class="accordion-toggle collapsed" data-toggle="collapse" data-target="#namespace-627710114"></a>
|
||||
<a href="../namespaces/GraphDS.Vertex.html" style="margin-left: 30px; padding-left: 0">Vertex</a>
|
||||
</div>
|
||||
<div id="namespace-627710114" class="accordion-body collapse ">
|
||||
<div class="accordion-inner">
|
||||
|
||||
|
||||
<ul>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.DirectedVertex.html">DirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.UndirectedVertex.html">UndirectedVertex</a></li>
|
||||
<li class="class"><a href="../classes/GraphDS.Vertex.Vertex.html">Vertex</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<ul>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<div class="span10 offset2">
|
||||
<div class="row-fluid">
|
||||
<div class="span8 content file">
|
||||
<nav>
|
||||
</nav>
|
||||
|
||||
<a href="#source-view" role="button" class="pull-right btn" data-toggle="modal"><i class="icon-code"></i></a>
|
||||
<h1><small>Algo</small>FloydWarshall.php</h1>
|
||||
<p><em>Floyd-Warshall algorithm for finding the shortest path with path reconstruction.</em></p>
|
||||
|
||||
|
||||
|
||||
|
||||
<h2>Classes</h2>
|
||||
<table class="table table-hover">
|
||||
<tr>
|
||||
<td><a href="../classes/GraphDS.Algo.FloydWarshall.html">FloydWarshall</a></td>
|
||||
<td><em>Class defining the Floyd-Warshall algorithm.</em></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<aside class="span4 detailsbar">
|
||||
<dl>
|
||||
<dt>Package</dt>
|
||||
<dd><div class="namespace-wrapper">\Default</div></dd>
|
||||
|
||||
|
||||
</dl>
|
||||
<h2>Tags</h2>
|
||||
<table class="table table-condensed">
|
||||
<tr><td colspan="2"><em>None found</em></td></tr>
|
||||
</table>
|
||||
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="source-view" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="source-view-label" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 id="source-view-label"></h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<pre data-src="../files/Algo/FloydWarshall.php.txt" class="language-php line-numbers"></pre>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="row-fluid">
|
||||
<section class="span10 offset2">
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<section class="row-fluid footer-sections">
|
||||
<section class="span4">
|
||||
<h1><i class="icon-code"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../namespaces/GraphDS.html">\GraphDS</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-bar-chart"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../graphs/class.html">Class Hierarchy Diagram</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<section class="span4">
|
||||
<h1><i class="icon-pushpin"></i></h1>
|
||||
<div>
|
||||
<ul>
|
||||
<li><a href="../reports/errors.html">Errors</a></li>
|
||||
<li><a href="../reports/markers.html">Markers</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section class="row-fluid">
|
||||
<section class="span10 offset1">
|
||||
<hr />
|
||||
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor </a> and authored
|
||||
on April 2nd, 2018 at 23:46.
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1 @@
|
|||
|