示例#1
0
MUINT32
IspTuningCustom::
map_user_setting_to_nvram_index<ISP_NVRAM_SATURATION_T>(
    MUINT8 const u8Idx_nvram_current,
    IspUsrSelectLevel_T const& rUsr
)
{
    STATIC_CHECK(NVRAM_IDX_SATURATION_USR_LOW<=NVRAM_IDX_SATURATION_USR_HIGH, BAD_NVRAM_IDX_SATURATION_USR_LOW_HIGH);
    STATIC_CHECK(NVRAM_IDX_SATURATION_USR_LOW <NVRAM_SAT_TBL_NUM, NVRAM_IDX_SATURATION_USR_LOW_OVER_RANGE);
    STATIC_CHECK(NVRAM_IDX_SATURATION_USR_HIGH<NVRAM_SAT_TBL_NUM, NVRAM_IDX_SATURATION_USR_HIGH_OVER_RANGE);
    //--------------------------------------------------------------------------
    EIndex_Isp_Saturation_T const   eIdx_Sat = rUsr.eIdx_Sat;
    //--------------------------------------------------------------------------
    //
    MUINT8 u8Idx_Sat = u8Idx_nvram_current;
    switch ( eIdx_Sat )
    {
    case ISP_SAT_LOW:
        u8Idx_Sat = NVRAM_IDX_SATURATION_USR_LOW;
        break;
    case ISP_SAT_HIGH:
        u8Idx_Sat = NVRAM_IDX_SATURATION_USR_HIGH;
        break;
    case ISP_SAT_MIDDLE:
    default:
        //  By default, we use the current nvram index of saturation
        //  for the middle level of user setting of saturation.
        break;
    }
    return  u8Idx_Sat;
}
示例#2
0
MUINT32
IspTuningCustom::
map_user_setting_to_nvram_index<ISP_NVRAM_EE_T>(
    MUINT8 const u8Idx_nvram_current,
    IspUsrSelectLevel_T const& rUsr
)
{
    STATIC_CHECK(NVRAM_IDX_EE_SHARPNESS_USR_LOW<=NVRAM_IDX_EE_SHARPNESS_USR_HIGH, BAD_NVRAM_IDX_EE_SHARPNESS_USR_LOW_HIGH);
    STATIC_CHECK(NVRAM_IDX_EE_SHARPNESS_USR_LOW <NVRAM_EE_TBL_NUM, NVRAM_IDX_EE_SHARPNESS_USR_LOW_OVER_RANGE);
    STATIC_CHECK(NVRAM_IDX_EE_SHARPNESS_USR_HIGH<NVRAM_EE_TBL_NUM, NVRAM_IDX_EE_SHARPNESS_USR_HIGH_OVER_RANGE);
    //--------------------------------------------------------------------------
    EIndex_Isp_Edge_T const eIdx_Edge = rUsr.eIdx_Edge;
    //--------------------------------------------------------------------------
    //
    MUINT8 u8Idx_EE = u8Idx_nvram_current;
    switch ( eIdx_Edge )
    {
    case ISP_EDGE_LOW:
        u8Idx_EE = NVRAM_IDX_EE_SHARPNESS_USR_LOW;
        break;
    case ISP_EDGE_HIGH:
        u8Idx_EE = NVRAM_IDX_EE_SHARPNESS_USR_HIGH;
        break;
    case ISP_EDGE_MIDDLE:
    default:
        //  By default, we use the current nvram index of EE
        //  for the middle level of user setting of sharpness.
        break;
    }
    return  u8Idx_EE;
}
示例#3
0
xr_dsa_signer::xr_dsa_signer(u8 const p_number[crypto::xr_dsa::public_key_length],
							 u8 const q_number[crypto::xr_dsa::private_key_length],
							 u8 const g_number[crypto::xr_dsa::public_key_length]) :
	m_dsa(p_number, q_number, g_number)
{
	STATIC_CHECK(crypto::xr_dsa::private_key_length  == crypto::xr_sha256::digest_length, private_key_size_must_be_equal_to_digest_value_size);
}
示例#4
0
xrGUID generate_guid()
{
	xrGUID			result;
#ifdef WINVER
	STATIC_CHECK	(sizeof(xrGUID) == sizeof(GUID),Different_GUID_types);
	GUID			_result;
	RPC_STATUS		gen_result = UuidCreate(&_result);
	Memory.mem_copy	(&result,&_result,sizeof(_result));
	switch (gen_result) {
		case RPC_S_OK				: return(result);
		case RPC_S_UUID_LOCAL_ONLY	: return(result);
		case RPC_S_UUID_NO_ADDRESS	: 
		default						: break;
	}
#endif
	STATIC_CHECK	(sizeof(result) >= sizeof(u64),GUID_must_have_size_greater_or_equal_to_the_long_long);
	ZeroMemory		(&result,sizeof(result));
	u64				temp = CPU::GetCLK();
	Memory.mem_copy	(&result,&temp,sizeof(temp));
	return			(result);
}
示例#5
0
CScriptStorage::CScriptStorage		()
{
	m_current_thread		= 0;

#ifdef DEBUG
	m_stack_is_ready		= false;
#endif // DEBUG
	
	m_virtual_machine		= 0;

#ifdef USE_LUA_STUDIO
#	ifndef USE_DEBUGGER
		STATIC_CHECK( false, Do_Not_Define_USE_LUA_STUDIO_macro_without_USE_DEBUGGER_macro );
#	endif // #ifndef USE_DEBUGGER
#endif // #ifdef USE_LUA_STUDIO
}
示例#6
0
MUINT32
IspTuningCustom::
map_user_setting_to_nvram_index<ISP_NVRAM_CONTRAST_T>(
    MUINT8 const u8Idx_nvram_current,
    IspUsrSelectLevel_T const& rUsr
)
{
    STATIC_CHECK(NUM_OF_ISP_CONTRAST*NUM_OF_ISP_BRIGHT<=NVRAM_CONTRAST_TBL_NUM, NVRAM_CONTRAST_TBL_NUM);
    //--------------------------------------------------------------------------
    EIndex_Isp_Contrast_T const   eIdx_Contrast = rUsr.eIdx_Contrast;
    EIndex_Isp_Brightness_T const eIdx_Bright   = rUsr.eIdx_Bright;
    //--------------------------------------------------------------------------
    //
    //  By default, the level of user setting of contrast & brightness
    //  determines the nvram index.
    //  [Contrast + Brightness]
    MUINT8 u8Idx_Contrast = eIdx_Bright * NUM_OF_ISP_CONTRAST
                            + eIdx_Contrast;
    return  u8Idx_Contrast;
}
示例#7
0
LPCSTR generate_guid(const xrGUID &guid, LPSTR buffer, const u32 &buffer_size)
{
#ifdef WINVER
	STATIC_CHECK	(sizeof(xrGUID) == sizeof(GUID),Different_GUID_types);
	GUID			temp;
	Memory.mem_copy	(&temp,&guid,sizeof(guid));
	RPC_CSTR		temp2;
	RPC_STATUS		status = UuidToString(&temp,&temp2);
	switch (status) {
		case RPC_S_OK				: break;
		case RPC_S_OUT_OF_MEMORY	: NODEFAULT;
		default						: NODEFAULT;
	}
	VERIFY			(buffer_size > xr_strlen((LPCSTR)temp2));
	strcpy_s		(buffer, buffer_size, (LPCSTR)temp2);
	RpcStringFree	(&temp2);
	return			(buffer);
#else
	NODEFAULT;
#endif // WINVER
}
示例#8
0
To safe_reinterpret_cast(From from)
{
    STATIC_CHECK(sizeof(From)<=sizeof(To));
    return reinterpret_cast<To>(from);
}
int main(void)
{
	STATIC_CHECK(false);
	return 0;
}
示例#10
0
文件: Intervals.cpp 项目: hashier/cbp
Interval::Interval()
    : low(1), up(0) {
    STATIC_CHECK(sizeof(Integer) >= 8, INTEGER_TO_SMALL_MUST_BE_8);
}