Index: branches/prototype-v0/thirds/otb2zcfg/otb2zcfg.cxx
===================================================================
--- branches/prototype-v0/thirds/otb2zcfg/otb2zcfg.cxx	(revision 846)
+++ branches/prototype-v0/thirds/otb2zcfg/otb2zcfg.cxx	(revision 848)
@@ -97,23 +97,58 @@
   std::cout << "    </Supported>" << std::endl;
   std::cout << "    <Supported>" << std::endl;
+  std::cout << "     mimeType = application/json" << std::endl;
+  std::cout << "     encoding = utf-8" << std::endl;
+  std::cout << "    </Supported>" << std::endl;
+  std::cout << "    <Supported>" << std::endl;
   std::cout << "     mimeType = application/zip" << std::endl;
   std::cout << "    </Supported>" << std::endl;
 }
 
-void printOutputImage(){
+void printOutputImage(ImagePixelType pt){
   std::cout << "   <LiteralData>" << std::endl;
   std::cout << "    dataType = string" << std::endl;
   std::cout << "    <Default>" << std::endl;
-  std::cout << "     value = float" << std::endl;
-  std::cout << "     AllowedValues = uint8,uint16,int16n,int32,int32,float,double" << std::endl;
+  // Check for the default pixel type
+  switch(pt){
+  case ImagePixelType_uint8:
+    std::cout << "     value = uint8" << std::endl;
+    break;
+  case ImagePixelType_int16:
+    std::cout << "     value = int16" << std::endl;
+    break;
+  case ImagePixelType_uint16:
+    std::cout << "     value = uint16" << std::endl;
+    break;
+  case ImagePixelType_int32:
+    std::cout << "     value = int32" << std::endl;
+    break;
+  case ImagePixelType_uint32:
+    std::cout << "     value = uint8" << std::endl;
+    break;
+  case ImagePixelType_double:
+    std::cout << "     value = uint8" << std::endl;
+    break;
+  default:
+    std::cout << "     value = float" << std::endl;
+    break;
+  }
+  std::cout << "     AllowedValues = uint8,uint16,int16,int32,int32,float,double" << std::endl;
   std::cout << "    </Default>" << std::endl;
   std::cout << "   </LiteralData>" << std::endl;
 }
 
-void printOutputComplexImage(){
+void printOutputComplexImage(ComplexImagePixelType pt){
   std::cout << "   <LiteralData>" << std::endl;
   std::cout << "    dataType = string" << std::endl;
   std::cout << "    <Default>" << std::endl;
-  std::cout << "     value = cfloat" << std::endl;
+  // Check for the default pixel type
+  switch(pt){
+  case ComplexImagePixelType_double:
+    std::cout << "     value = cdouble" << std::endl;
+    break;
+  default:
+    std::cout << "     value = cfloat" << std::endl;
+    break;
+  }
   std::cout << "     AllowedValues = cfloat,cdouble" << std::endl;
   std::cout << "    </Default>" << std::endl;
@@ -242,9 +277,10 @@
 	  }
 	  else{
-	    if(type == ParameterType_OutputImage)
-	      printOutputImage();
+	    if(type == ParameterType_OutputImage){
+	      printOutputImage(m_Application->GetParameterOutputImagePixelType(paramKey));
+	    }
 	    else{
 	      if(type == ParameterType_ComplexOutputImage){
-		printOutputComplexImage();
+		printOutputComplexImage(m_Application->GetParameterComplexOutputImagePixelType(paramKey));
 	      }else{
 		std::cout << "   <ComplexData>" << std::endl;
