/******************************************************************************
 *
 *	NDT Solutions Rapid Scan 2 Automated (SCO) Software Development Kit v1.0
 *
 ******************************************************************************
 *
 *  File:        NDTSSCO.h
 *
 *  Description: Error codes for use with GetLastError()
 *
 *
 ******************************************************************************/
#pragma once
#include "NDTSErrorConstants.h"
#include "PropertyInternal.h"

typedef enum
{
	SCO_OK													= (NDTS_ERROR_SCO_SDK_INDEX << 16),
	// General errors that can occur in more than one function
	SCO_PropertyOutOfRange,
	SCO_PropertyNoLongerUsed,
	SCO_PropertyValueOutOfRange,
	SCO_PropertyMinUpdated,
	SCO_PropertyMaxUpdated,
	SCO_propertyFlagUpdated,
	SCO_InvalidGateIndex, 
	SCO_EnumStringNotFound,
	SCO_PropertySetWhenScanning,
	SCO_PropertyIsReadOnly, 
	SCO_GeneralError, 
	SCO_NotInitialised,

	SCO_LastError
} SCO_ReturnCode ;


void SCO_HandleSCOError(SCO_ReturnCode errorCode) ;
void SCO_HandleSCOErrorWithLogLevel(SCO_ReturnCode errorCode,  NDTS_LogLevel logLevel);
SCO_API const char * CALL_CONV SCO_GetCodeString(int errorCode) ;

