private static void HandleError( int errorCode )
{
if ( errorCode != 0 )
{
if ( errorCode == 10 )
{
throw new TimeoutException( "Time out while waiting for camera response." );
}
string errorMessage = string.Empty;
switch ( errorCode )
{
case 1:
errorMessage = "Invalid handle";
break;
case 2:
errorMessage = "Register read error";
break;
case 3:
errorMessage = "Register write error";
break;
case 4:
errorMessage = "Freeing resiurces error";
break;
case 5:
errorMessage = "Freeing channel error";
break;
case 6:
errorMessage = "Freeing bandwith error";
break;
case 7:
errorMessage = "Read block error";
break;
case 8:
errorMessage = "Write block error";
break;
case 9:
errorMessage = "No image";
break;
case 11:
errorMessage = "Invalid arguments supplied";
break;
case 12:
errorMessage = "Not supported";
break;
case 13:
errorMessage = "Attach buffers error";
break;
case 14:
errorMessage = "Overlapped result";
break;
case 15:
errorMessage = "Memory allocation error";
break;
case 16:
errorMessage = "DLL context is NULL";
break;
case 17:
errorMessage = "DLL context is non zero";
break;
case 18:
errorMessage = "DLL context exists";
break;
case 19:
errorMessage = "Too many devices connected";
break;
case 20:
errorMessage = "Camera context error";
break;
case 21:
errorMessage = "Unknown hardware";
break;
case 22:
errorMessage = "Invalid TM file";
break;
case 23:
errorMessage = "Invalid TM tag";
break;
case 24:
errorMessage = "Incomplete TM";
break;
case 25:
errorMessage = "Bus reset error";
break;
case 26:
errorMessage = "Not implemented";
break;
case 27:
errorMessage = "Shading too bright";
break;
case 28:
errorMessage = "Shading too dark";
break;
case 29:
errorMessage = "Gain is too low";
break;
case 30:
errorMessage = "Invalid bad pixel list";
break;
case 31:
errorMessage = "Bad pixel list realloc error";
break;
case 32:
errorMessage = "Invalid pixel list";
break;
case 33:
errorMessage = "Invalid Flash File System";
break;
case 34:
errorMessage = "Invalid profile";
break;
case 35:
errorMessage = "Invalid calibration";
break;
case 36:
errorMessage = "Invalid buffer";
break;
case 38:
errorMessage = "Invalid data";
break;
case 39:
errorMessage = "Timing generator is busy";
break;
case 40:
errorMessage = "Wrong operation open/write/read/close";
break;
case 41:
errorMessage = "Acquisition already started";
break;
case 42:
errorMessage = "Old version of device driver installed to the system";
break;
case 44:
errorMessage = "Data can't be processed";
break;
case 45:
errorMessage = "Error occured and acquisition has been stoped or didn't start";
break;
case 46:
errorMessage = "Acquisition has been stoped with error";
break;
case 100:
errorMessage = "Unknown parameter";
break;
case 101:
errorMessage = "Wrong parameter value";
break;
case 103:
errorMessage = "Wrong parameter type";
break;
case 104:
errorMessage = "Wrong parameter size";
break;
case 105:
errorMessage = "Input buffer too small";
break;
case 106:
errorMessage = "Parameter info not supported";
break;
case 107:
errorMessage = "Parameter info not supported";
break;
case 108:
errorMessage = "Data format not supported";
break;
case 109:
errorMessage = "Read only parameter";
break;
case 110:
errorMessage = "No devices found";
break;
}
throw new VideoException( string.Format( "Error code: {0}, Message: {1}", errorCode, errorMessage ) );
}
}