#!/usr/bin/env php
<?php

use Hydro\Console;
use Flood\Captn;

set_time_limit(0);

$option = [
    'performance' => [
        'time' => microtime(true), // Set time value for performance monitor
        'memory' => memory_get_usage(), // Set memory value for performance monitor
        'log' => (php_sapi_name() == 'cli'),
    ],
];

require __DIR__ . '/const.php';
require __DIR__ . '/vendor/flood/hydro/autoload.php';

$cli = new Console();

$perf = new Flood\Component\PerformanceMonitor\Monitor();
$perf->setResource();
$perf->startProfile('hydro-complete', [
    'time' => $option['performance']['time'],
    'memory' => $option['performance']['memory'],
]);

/*Captn\EventDispatcher::trigger('hydro.exec.addCliCommands', $cli);

$cli->run();*/

$perf->endProfile('hydro-complete');

if((isset($option['performance']['log']) && $option['performance']['log'])) {
    echo 'Hydro Performance: ' .
        $perf->getInformation('hydro-complete')['time'] . 's' . ' ' .
        $perf->convertMemory($perf->getInformation('hydro-complete')['memory']) . ' ' .
        $perf->getResource() . ''
        . "\r\n";
}