trueskill/PHPSkills/FactorGraphs/VariableFactory.php

31 lines
700 B
PHP

<?php
namespace Moserware\Skills\FactorGraphs;
require_once(dirname(__FILE__) . "Variable.php");
class VariableFactory
{
// using a Func<TValue> to encourage fresh copies in case it's overwritten
private $_variablePriorInitializer;
public function __construct($variablePriorInitializer)
{
$this->_variablePriorInitializer = $variablePriorInitializer;
}
public function createBasicVariable()
{
$newVar = new Variable($this->_variablePriorInitializer());
return $newVar;
}
public function createKeyedVariable($key)
{
$newVar = new KeyedVariable($key, $this->_variablePriorInitializer());
return $newVar;
}
}
?>