*/ class Scatt extends Program_runner { /** * * @param unknown_type $params */ public function __construct($params) { $this->CI =& get_instance(); extract($params); $this->CI->load->model('program'); $this->program = $this->CI->program->getByDriver(strtolower(__CLASS__)); log_message('debug', "ScaTT Class Initialized"); } /** * * @param unknown_type $experimentId */ public function _createJob($experimentId) { $this->CI->load->library('parser'); $experiment = $this->CI->experiment->getById($experimentId); $path = FCPATH . 'uploads/' . $experiment['project_id'] . '/' . $experiment['id'] . '/'; $handler = fopen($path . 'default.calc', "w"); $data['parameters'] = $this->CI->experiment->getParameters($experimentId); @fwrite($handler, $this->CI->parser->parse_string($this->program['config_template'], $data, true)); @fclose($handler); return true; } /** * * @param string $experimentId */ public function _getResults($experimentId) { $this->CI->load->helper('array'); $experiment = $this->CI->experiment->getById($experimentId); $path = FCPATH . 'uploads/' . $experiment['project_id'] . '/' . $experiment['id'] . '/'; if (!file_exists($path . 'default.out')) { return array(); } $handler = fopen($path . 'default.out', "r"); $results = array(); while (($line = fgets($handler)) !== false) { $values = array(); $i = 0; foreach (preg_split("/\s+/", $line) as $value) { if ($value != '') { $values[] = trim($value); } $i++; } $results[] = $values; } return $results; } } /* End of file Scatt.php */ /* Location: ./application/libraries/programs/Scatt.php */