code: public function registerType($type, $classname, $options = array()) {
  
  		if (!class_exists($classname) || !is_callable(array($classname, 'getDataType'))) {
  			return;
  		}
  
  		$data_type = call_user_func(array($classname, 'getDataType'));
  
  		$options = (array) $options;
  		$options['type'] = $type;
  		$options['class_name'] = $classname;
  		$options['data_type'] = $data_type;
  		
  		$this->types[$data_type][$type] = $options;
  		
  	}
docs: Define an input type
  
  @param string $type      Input type
  @param string $classname Class name
  @param array  $options   Default options
  @return void