function __construct($handlerName, $isEnabled = true, $outputRewriteType = self::REPLACE_SUFFIX, $supportedInputMIMETypes = false, $supportedOutputMIMETypes = false, $conversionRules = false, $filters = false, $mimeTagMap = false)
 {
     parent::__construct($handlerName, $isEnabled, $outputRewriteType, $supportedInputMIMETypes, $supportedOutputMIMETypes, $conversionRules, $filters, $mimeTagMap);
     $this->Path = false;
     $this->Executable = false;
     $this->PreParameters = false;
     $this->PostParameters = false;
     $this->UseTypeTag = false;
     $this->QualityParameters = false;
     $this->FrameRangeParameters = false;
 }
 function __construct($handlerName, $isGloballyEnabled, $outputRewriteType = self::REPLACE_SUFFIX, $conversionRules = false)
 {
     $supportedInputMIMETypes = array();
     $supportedOutputMIMETypes = array();
     $this->InputMap = array();
     $this->OutputMap = array();
     $this->OutputQualityMap = array();
     $isEnabled = false;
     if (function_exists("imagetypes")) {
         $gdFunctions = array(array('mimetype' => 'image/gif', 'input' => 'imagecreatefromgif', 'output' => 'imagegif'), array('mimetype' => 'image/vnd.wap.wbmp', 'input' => 'imagecreatefromwbmp', 'output' => 'imagewbmp'), array('mimetype' => 'image/png', 'input' => 'imagecreatefrompng', 'output' => 'imagepng'), array('mimetype' => 'image/jpeg', 'input' => 'imagecreatefromjpeg', 'output' => 'imagejpeg', 'qualityparameter' => true));
         foreach ($gdFunctions as $gdFunction) {
             $inputFunction = $gdFunction['input'];
             $outputFunction = $gdFunction['output'];
             if (function_exists($inputFunction) or function_exists($outputFunction)) {
                 $isEnabled = true;
                 $mimeType = $gdFunction['mimetype'];
                 if (function_exists($inputFunction)) {
                     $supportedInputMIMETypes[] = $mimeType;
                     $this->InputMap[$mimeType] = $inputFunction;
                 }
                 if (function_exists($outputFunction)) {
                     $this->OutputMap[$mimeType] = $outputFunction;
                     $supportedOutputMIMETypes[] = $mimeType;
                 }
                 if (isset($gdFunction['qualityparameter'])) {
                     $this->OutputQualityMap[$mimeType] = $gdFunction['qualityparameter'];
                 } else {
                     $this->OutputQualityMap[$mimeType] = false;
                 }
             }
         }
     }
     if (!$isGloballyEnabled) {
         $isEnabled = false;
     }
     $this->FilterFunctionMap = array('geometry/scale' => 'scaleImage', 'geometry/scalewidth' => 'scaleImageWidth', 'geometry/scaleheight' => 'scaleImageHeight', 'geometry/scaledownonly' => 'scaleImageDownOnly', 'geometry/scalewidthdownonly' => 'scaleImageWidthDownOnly', 'geometry/scaleheightdownonly' => 'scaleImageHeightDownOnly', 'geometry/scaleexact' => 'scaleImageExact', 'geometry/scalepercent' => 'scaleImagePercent', 'geometry/crop' => 'cropImage', 'colorspace/gray' => 'setImageColorspaceGray', 'luminance' => 'setImageLuminance', 'luminance/gray' => 'setImageLuminanceNamed', 'luminance/sepia' => 'setImageLuminanceNamed', 'color/monochrome' => 'setImageColorThresholdName', 'border' => 'createImageBorder', 'border/color' => 'setImageBorderColor', 'border/width' => 'setImageBorderWidth');
     $this->LuminanceColorScales = array('luminance/gray' => array(1.0, 1.0, 1.0), 'luminance/sepia' => array(1.0, 0.89, 0.74));
     $this->ThresholdList = array('color/monochrome' => array(array('threshold' => 127, 'rgb' => array(0, 0, 0)), array('threshold' => 255, 'rgb' => array(255, 255, 255))));
     $filters = array();
     foreach ($this->FilterFunctionMap as $filterName => $filterFunction) {
         $filters[] = array('name' => $filterName);
     }
     parent::__construct($handlerName, $isEnabled, $outputRewriteType, $supportedInputMIMETypes, $supportedOutputMIMETypes, $conversionRules, $filters);
 }