diff --git a/src/FunctionTypeEnumClass.php b/src/FunctionTypeEnumClass.php
index 6ed6b67..393881d 100644
--- a/src/FunctionTypeEnumClass.php
+++ b/src/FunctionTypeEnumClass.php
@@ -8,6 +8,7 @@ abstract class FunctionTypeEnumClass
 {
 	const PARAMS             = "params";
 	const PARAMSGEN          = "params_gen";
+        const PARAMSINFOGEN      = "params_info_gen";
 	const ACTION             = "action";
 	const PROCESSDELETE      = "process_delete";
 	const PROCESSRUNNINGINFO = "process_running_info";
diff --git a/src/InputOutput/IHMImpl/IHMInputOutputClass.php b/src/InputOutput/IHMImpl/IHMInputOutputClass.php
index a78c2ca..58e2da9 100644
--- a/src/InputOutput/IHMImpl/IHMInputOutputClass.php
+++ b/src/InputOutput/IHMImpl/IHMInputOutputClass.php
@@ -67,6 +67,10 @@ class IHMInputOutputClass implements InputOutputInterface
 				$this->inputOutput = new IHMInputOutputParamsGeneratorClass();
 				$requestId = "ParamGen";
 				break;
+                        case FunctionTypeEnumClass::PARAMSINFOGEN :
+                                $this->inputOutput = new IHMInputOutputParamsInfoGeneratorClass();
+                                $requestId = "ParamInfoGen";
+                                break;
 			case FunctionTypeEnumClass::ACTION :
 				$this->inputOutput = new IHMInputOutputParamsPlotClass();
 				$requestId = "Plot";
diff --git a/src/InputOutput/IHMImpl/Params/GenInfoParamImpl/IHMInputOutputParamsInfoGeneratorClass.php b/src/InputOutput/IHMImpl/Params/GenInfoParamImpl/IHMInputOutputParamsInfoGeneratorClass.php
new file mode 100644
index 0000000..115b1fb
--- /dev/null
+++ b/src/InputOutput/IHMImpl/Params/GenInfoParamImpl/IHMInputOutputParamsInfoGeneratorClass.php
@@ -0,0 +1,71 @@
+<?php
+
+/**
+ * @class IHMInputOutputParamsGeneratorClass
+ * @brief Implementation of IHMInputOutputParamsAbstractClass to treat params generation request
+ * @details
+*/
+class IHMInputOutputParamsInfoGeneratorClass extends IHMInputOutputParamsAbstractClass
+{
+	/*
+	 * @brief method to unmarshall a params generation request
+	*/
+	protected function unmarshallRequest($input)
+	{
+		$this->paramsData->setRequestType(ParamsRequestTypeEnumClass::PARAMSINFOGEN);
+		
+		$this->paramsData->setParamId($input->paramId);
+
+		$this->paramsData->setBatchEnable(FALSE);
+
+		$this->paramManager->addGeneratedParam($input->paramId, $input->buildchain, $input->timestep, $this->paramsData);
+
+		return $this->paramsData;
+	}
+
+	/*
+	 * @brief method to marshall the result of a download request
+	*/
+	protected function marshallResult($data)
+	{
+		if (!$data->getSuccess())
+			return array(
+					'success' => false,
+					'message' => $data->getParamId() . " : " . $data->getLastErrorMessage());
+		
+		if ($data->getErrorCode() != 0)
+			return array(
+					'success' => false,
+					'message' => $data->getParamId() . " : " . 'Error detected during parameter compilation');
+		
+		$info_file_name = 'info_'.$data->getParamId().'.xml';
+		$info_file_path = $this->getWorkingPath().'/'.$info_file_name;
+
+		$doc = new DOMDocument("1.0", "UTF-8");
+                if ($doc->load($info_file_path) === FALSE) {
+			return array(
+                                        'success' => false,
+                                        'message' => $data->getParamId() . " : " . 'Cannot load info file');
+		}
+
+		//<paraminfo id="ws_vcxvxcvdsdd"><dimensions dim_1="3" dim_2="1"/><components><component index_1="0" name="ws_vcxvxcvdsdd[0]"/><component index_1="1" name="ws_vcxvxcvdsdd[1]"/><component index_1="2" name="ws_vcxvxcvdsdd[2]"/></components><tables/></paraminfo>
+		$dimensionsNodes = $doc->getElementsByTagName('dimensions');
+		if ($dimensionsNodes->length == 0) {
+			return array(
+                                        'success' => false,
+                                        'message' => $data->getParamId() . " : " . 'Cannot load dimensions in info file');
+		}
+		
+		$dim_1 = $dimensionsNodes->item(0)->getAttribute('dim_1');
+		$dim_2 = $dimensionsNodes->item(0)->getAttribute('dim_2');
+
+		return array(
+			'success' => true,
+			'dimensions' => array(
+				'dim_1' => $dim_1,
+				'dim_2' => $dim_2,
+			),
+		);
+	}
+}
+?>
diff --git a/src/InputOutput/IHMImpl/Tools/IHMParamManagerClass.php b/src/InputOutput/IHMImpl/Tools/IHMParamManagerClass.php
index f55a4e7..1628d2a 100644
--- a/src/InputOutput/IHMImpl/Tools/IHMParamManagerClass.php
+++ b/src/InputOutput/IHMImpl/Tools/IHMParamManagerClass.php
@@ -20,6 +20,18 @@ class IHMParamManagerClass
 		$this->templateParamsManager = new IHMParamTemplateClass();
 	}
 
+	public function addGeneratedParam($paramId, $expression, $sampling, $paramsData)
+	{
+		if (!isset($this->expressionParser))
+			$this->expressionParser = new IHMExpressionParserClass();
+		$expressionInfo = $this->expressionParser->parse($expression);
+
+                //create a process param for the derived parameter
+                $this->addProcessParam($paramId, $expressionInfo["expression"], $expression,
+                                $expressionInfo['params'], $sampling,
+                                0, time(), "", "", $paramsData);
+	}
+
 	/*
 	 * @brief Add an existing parameter
 	*/
diff --git a/src/Request/ParamsRequestImpl/ParamsRequestClass.php b/src/Request/ParamsRequestImpl/ParamsRequestClass.php
index 5406ead..6b24bb5 100644
--- a/src/Request/ParamsRequestImpl/ParamsRequestClass.php
+++ b/src/Request/ParamsRequestImpl/ParamsRequestClass.php
@@ -34,6 +34,9 @@ class ParamsRequestClass extends ProcessRequestClass
 			case ParamsRequestTypeEnumClass::PARAMGEN :
 				$this->requestData->setCmd(KernelConfigClass::getKernelBinPath()."amdaParameterGenerator -p ".$this->requestData->getParamId());
 				break;
+			case ParamsRequestTypeEnumClass::PARAMSINFOGEN :
+                                $this->requestData->setCmd(KernelConfigClass::getKernelBinPath()."amdaParameterInfo -p ".$this->requestData->getParamId());
+                                break;
 		}
 		$this->requestData->setEnvVars(KernelConfigClass::getExecEnvVarArray());
 			
diff --git a/src/Request/ParamsRequestImpl/ParamsRequestDataClass.php b/src/Request/ParamsRequestImpl/ParamsRequestDataClass.php
index 7c3ab72..21c8703 100644
--- a/src/Request/ParamsRequestImpl/ParamsRequestDataClass.php
+++ b/src/Request/ParamsRequestImpl/ParamsRequestDataClass.php
@@ -10,6 +10,7 @@ abstract class ParamsRequestTypeEnumClass
 	const UNKNOWN = "";
 	const XMLREQUEST = "XMLREQUEST";
 	const PARAMGEN   = "PARAMGEN";
+	const PARAMSINFOGEN   = "PARAMSINFOGEN";
 }
 
 /**
diff --git a/src/RequestManager.php b/src/RequestManager.php
index 3fdfeb5..5fdafde 100644
--- a/src/RequestManager.php
+++ b/src/RequestManager.php
@@ -11,6 +11,7 @@ function amdaintegration_autoload($class_name)
 			'InputOutput/IHMImpl/Params/DataMiningImpl',
 			'InputOutput/IHMImpl/Params/StatisticsImpl',
 			'InputOutput/IHMImpl/Params/DownloadImpl',
+ 			'InputOutput/IHMImpl/Params/GenInfoParamImpl',
 			'InputOutput/IHMImpl/Params/PlotImpl',
 			'InputOutput/IHMImpl/Params/GeneratorImpl',
 			'InputOutput/IHMImpl/Process',
@@ -71,6 +72,7 @@ abstract class FunctionTypeEnumClass
 {
 	const PARAMS             = "params";
 	const PARAMSGEN          = "params_gen";
+        const PARAMSGEN          = "params_info_gen";
 	const ACTION             = "action";
 	const PROCESSDELETE      = "process_delete";
 	const PROCESSRUNNINGINFO = "process_running_info";
diff --git a/src/RequestManagerClass.php b/src/RequestManagerClass.php
index a434010..5544205 100644
--- a/src/RequestManagerClass.php
+++ b/src/RequestManagerClass.php
@@ -56,6 +56,8 @@ Class RequestManagerClass
 		{
 			case FunctionTypeEnumClass::PARAMS :
 			case FunctionTypeEnumClass::PARAMSGEN :
+                        case FunctionTypeEnumClass::PARAMSINFOGEN :
+				return new ParamsRequestClass($user, $userHost);
 			case FunctionTypeEnumClass::ACTION :
 				return new ParamsRequestClass($user, $userHost);
 			case FunctionTypeEnumClass::PROCESSDELETE :
@@ -152,4 +154,4 @@ Class RequestManagerClass
 		return $request->getData();
 	}
 }
-?>
\ No newline at end of file
+?>
diff --git a/src/amdaintegration_autoload.php b/src/amdaintegration_autoload.php
index 1d483c6..a460537 100644
--- a/src/amdaintegration_autoload.php
+++ b/src/amdaintegration_autoload.php
@@ -12,6 +12,7 @@ function amdaintegration_autoload($class_name)
 			'InputOutput/IHMImpl/Params/DownloadImpl',
 			'InputOutput/IHMImpl/Params/PlotImpl',
 			'InputOutput/IHMImpl/Params/GeneratorImpl',
+			'InputOutput/IHMImpl/Params/GenInfoParamImpl',
 			'InputOutput/IHMImpl/Process',
 			'InputOutput/IHMImpl/ParamInfo',
 			'InputOutput/IHMImpl/Tools',
--
libgit2 0.21.2