Index: /issm/trunk-jpl/src/c/classes/Elements/Element.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Elements/Element.cpp	(revision 22065)
+++ /issm/trunk-jpl/src/c/classes/Elements/Element.cpp	(revision 22066)
@@ -1688,4 +1688,15 @@
 				name==SmbRefreezeEnum ||
 				name==SmbEvaporationEnum ||
+				name==SmbCEnum ||
+				name==SmbTaEnum ||
+				name==SmbVEnum ||
+				name==SmbDswrfEnum ||
+				name==SmbDlwrfEnum ||
+				name==SmbPEnum ||
+				name==SmbEAirEnum ||
+				name==SmbPAirEnum ||
+				name==SmbVzEnum ||
+				name==SmbTzEnum ||
+				name==SmbTmeanEnum ||
 				name==SmbIsInitializedEnum ||
 				name==BasalforcingsGroundediceMeltingRateEnum ||
Index: /issm/trunk-jpl/src/c/shared/io/Marshalling/IoCodeConversions.cpp
===================================================================
--- /issm/trunk-jpl/src/c/shared/io/Marshalling/IoCodeConversions.cpp	(revision 22065)
+++ /issm/trunk-jpl/src/c/shared/io/Marshalling/IoCodeConversions.cpp	(revision 22066)
@@ -51,4 +51,54 @@
 		const char* field = "md.smb.evaporation";
 		param_enum        = SmbEvaporationEnum;
+		fieldname=xNew<char>((strlen(field)+1)); xMemCpy<char>(fieldname,field,(strlen(field)+1));
+	}
+	else if(strcmp(string_in,"SmbTa")==0){
+		const char* field = "md.smb.Ta";
+		param_enum        = SmbTaEnum;
+		fieldname=xNew<char>((strlen(field)+1)); xMemCpy<char>(fieldname,field,(strlen(field)+1));
+	}
+	else if(strcmp(string_in,"SmbV")==0){
+		const char* field = "md.smb.V";
+		param_enum        = SmbVEnum;
+		fieldname=xNew<char>((strlen(field)+1)); xMemCpy<char>(fieldname,field,(strlen(field)+1));
+	}
+	else if(strcmp(string_in,"SmbDswrf")==0){
+		const char* field = "md.smb.dswrf";
+		param_enum        = SmbDswrfEnum;
+		fieldname=xNew<char>((strlen(field)+1)); xMemCpy<char>(fieldname,field,(strlen(field)+1));
+	}
+	else if(strcmp(string_in,"SmbDlwrf")==0){
+		const char* field = "md.smb.dlwrf";
+		param_enum        = SmbDlwrfEnum;
+		fieldname=xNew<char>((strlen(field)+1)); xMemCpy<char>(fieldname,field,(strlen(field)+1));
+	}
+	else if(strcmp(string_in,"SmbP")==0){
+		const char* field = "md.smb.P";
+		param_enum        = SmbPEnum;
+		fieldname=xNew<char>((strlen(field)+1)); xMemCpy<char>(fieldname,field,(strlen(field)+1));
+	}
+	else if(strcmp(string_in,"SmbEAir")==0){
+		const char* field = "md.smb.eAir";
+		param_enum        = SmbEAirEnum;
+		fieldname=xNew<char>((strlen(field)+1)); xMemCpy<char>(fieldname,field,(strlen(field)+1));
+	}
+	else if(strcmp(string_in,"SmbPAir")==0){
+		const char* field = "md.smb.pAir";
+		param_enum        = SmbPAirEnum;
+		fieldname=xNew<char>((strlen(field)+1)); xMemCpy<char>(fieldname,field,(strlen(field)+1));
+	}
+	else if(strcmp(string_in,"SmbVz")==0){
+		const char* field = "md.smb.Vz";
+		param_enum        = SmbVzEnum;
+		fieldname=xNew<char>((strlen(field)+1)); xMemCpy<char>(fieldname,field,(strlen(field)+1));
+	}
+	else if(strcmp(string_in,"SmbTz")==0){
+		const char* field = "md.smb.Tz";
+		param_enum        = SmbTzEnum;
+		fieldname=xNew<char>((strlen(field)+1)); xMemCpy<char>(fieldname,field,(strlen(field)+1));
+	}
+	else if(strcmp(string_in,"SmbC")==0){
+		const char* field = "md.smb.C";
+		param_enum        = SmbCEnum;
 		fieldname=xNew<char>((strlen(field)+1)); xMemCpy<char>(fieldname,field,(strlen(field)+1));
 	}
