/**
  * Check Function
  *
  * This is responsible for checking the driver configuration to determine
  * if the system supports a particular function.
  *
  * @param string $function The name of the function to check.
  *
  * @return mixed On success, an associative array with specific function keys
  * and values; on failure, false.
  * @access public
  */
 public function checkFunction($function)
 {
     // Extract the configuration from the driver if available:
     $functionConfig = method_exists($this->driver, 'getConfig') ? $this->driver->getConfig($function) : false;
     // See if we have a corresponding check method to analyze the response:
     $checkMethod = "_checkMethod" . $function;
     if (!method_exists($this, $checkMethod)) {
         //Just see if the method exists on the driver
         return method_exists($this->driver, $function);
     }
     // Send back the settings:
     return $this->{$checkMethod}($functionConfig);
 }