daq_state.h
来自「一个语言识别引擎」· C头文件 代码 · 共 154 行
H
154 行
// -*- mode:C++; tab-width:4; c-basic-offset:4; indent-tabs-mode:nil -*-
/*
* Copyright (C) 2006 Charles C. Kemp
* CopyPolicy: Released under the terms of the GNU GPL v2.0.
*
*/
#ifndef DAQSTATE_INCLUDE
#define DAQSTATE_INCLUDE
// By cckemp mit edu
// Modded by paulfitz mit edu
#include "GlobalMathHelper.h"
class DAQState
{
public:
bool flash_leds_on;
int exposure, shutter, gain, brightness, u_b_value, v_r_value;
int emx, emn, smx, smn, gmx, gmn, bmx, bmn, ubmx, ubmn, vrmx, vrmn;
DAQState()
{
flash_leds_on = false;
//////////////////range in coriander //default value shown in coriander
exposure = 260; //0-1023 //260
shutter = 532; //2-532 (dark to bright) //532
gain = 350; //450 //700 for the shoe cam //220-1023 //562
brightness = 0; //0-255 //0
u_b_value = 63; //0-63 //50
v_r_value = 30; //0-63 //50
emx = 1023;
emn = 0;
smx = 532;
smn = 2;
gmx = 1023;
gmn = 220;
bmx = 255;
bmn = 0;
ubmx = 63;
ubmn = 0;
vrmx = 63;
vrmn = 0;
}
/////////////////////////////////////////////////
inline int ftoi(float f, int mn, int mx)
{
return( myround((f*(mx-mn))+mn) );
}
inline float itof(int i, int mn, int mx)
{
return( (i-mn)/(mx-mn) );
}
/////////////////////////////////////////////////
inline int GetUBColor(){return(u_b_value);}
inline int GetVRColor(){return(v_r_value);}
inline int GetBrightness(){return(brightness);}
inline int GetGain(){return(gain);}
inline int GetShutter(){return(shutter);}
inline int GetExposure(){return(exposure);}
/////////////////////////////////////////////////
inline float GetFUBColor(){return(itof(u_b_value, ubmn, ubmx));}
inline float GetFVRColor(){return(itof(v_r_value, vrmn, vrmx));}
inline float GetFBrightness(){return(itof(brightness, bmn, bmx));}
inline float GetFGain(){return(itof(gain, gmn, gmx));}
inline float GetFShutter(){return(itof(shutter, smn, smx));}
inline float GetFExposure(){return(itof(exposure, emn, emx));}
/////////////////////////////////////////////////
inline void SetColor(float u_b_in, float v_r_in)
{
SetColor(ftoi(u_b_in, ubmn, ubmx), ftoi(v_r_in, vrmn, vrmx));
}
inline void SetBrightness(float brightness_in)
{
SetBrightness(ftoi(brightness_in, bmn, bmx));
}
inline void SetGain(float gain_in)
{
SetGain(ftoi(gain_in, gmn, gmx));
}
inline void SetShutter(float shutter_in)
{
SetShutter(ftoi(shutter_in, smn, smx));
}
inline void SetExposure(float exposure_in)
{
SetExposure(ftoi(exposure_in, emn, emx));
}
/////////////////////////////////////////////////
inline void SetColor(int u_b_in, int v_r_in)
{
u_b_value = u_b_in;
v_r_value = v_r_in;
if(u_b_value < ubmn) u_b_value = ubmn;
if(u_b_value > ubmx) u_b_value = ubmx;
if(v_r_value < vrmn) v_r_value = vrmn;
if(v_r_value > vrmx) v_r_value = vrmx;
}
inline void SetBrightness(int brightness_in)
{
brightness = brightness_in;
if(brightness < bmn ) brightness = bmn;
if(brightness > bmx) brightness = bmx;
}
inline void SetGain(int gain_in)
{
gain = gain_in;
if(gain < gmn) gain = gmn;
if(gain > gmx) gain = gmx;
}
inline void SetShutter(int shutter_in)
{
shutter = shutter_in;
if(shutter > smx) shutter = smx;
if(shutter < smn) shutter = smn;
}
inline void SetExposure(int exposure_in)
{
exposure = exposure_in;
if(exposure < emn ) exposure = emn;
if(exposure > emx) exposure = emx;
}
};
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?