Example #1
0
static const char *readline()
{
    int count;
    db_msg("prepare to readline\n");
      do{
            count = read(device_fd, s_ATBuffer,MAX_AT_RESPONSE);
            db_msg("readline count=%d\n",count);
                         
        } while (count < 0 && errno == EINTR);
      
        if (count > 0){ 
            
            s_ATBuffer[count] = '\0';//mark the string end
        }
        else if (count<=0) {
            /* read error encountered or EOF reached */
            if(count == 0) {
                db_error("ATchannel: EOF reached\n");
            } else {
                db_error("ATchannel: read error %s\n", strerror(errno));
            }
            return NULL;
        }
      
    return s_ATBuffer;
}
Example #2
0
/* |icon:ctrlData[0]|      |  label:ctrlData[1] |
 *                         |  label:ctrlData[2] |        |  icon-Select:ctrlData[3] |
 *------------------------------------------------------------------------------------
 */
void setLocation(int screenW,int screenH)
{
	getScreenInfo(&screenW, &screenH);
	PCTRLDATA location = ctrlData + IDX_TITLE_ICON;
	location->x = screenW/40;
	location->y = screenH/40;
	location->w = screenW/20;
	location->h = screenH*0.075;
	db_msg("x:%d,y:%d,w:%d,h:%d",location->x,location->y,location->w,location->h);
	
	location = ctrlData + IDX_TITLE_TEXT;
	location->x = screenW/5 + 60;
	location->y = ctrlData[IDX_TITLE_ICON].y*2;
	location->w = screenW/2;
	location->h = screenH/14;
	db_msg("x:%d,y:%d,w:%d,h:%d",location->x,location->y,location->w,location->h);

	location = ctrlData + IDX_SWITCH_TEXT;
	location->x = ctrlData[IDX_TITLE_TEXT].x;
	location->y = screenH*0.1875;
	location->w = screenW/2;
	location->h = screenH/14;
	db_msg("x:%d,y:%d,w:%d,h:%d",location->x,location->y,location->w,location->h);
	
	location = ctrlData + IDX_SWITCH_ICON;
	location->x = screenW*0.75;
	location->y = screenH*0.1875;
	location->w = screenW/10;
	location->h = screenH*0.075;
	db_msg("x:%d,y:%d,w:%d,h:%d",location->x,location->y,location->w,location->h);

}
Example #3
0
void CdrDisplay::setBottom()
{
	db_msg("there is no need setBottom in V3");
#ifndef DE2
	db_msg("setBottom");
	mCD->setPreviewBottom(mHlay);
#endif
}
Example #4
0
int setup_2g_device(char *device_node_path,int setup_delay)
{
    char *p_cur;
    int sl;
    struct termios  ios;
    
    device_fd= open (device_node_path, O_RDWR);
    if(device_fd<0)
    {
        db_error("2gtester:open device error\n");
    }
    
   /* disable echo on serial ports */
   tcgetattr( device_fd, &ios );
   ios.c_lflag = 0;  

   tcflush(device_fd, TCIFLUSH);
   cfsetospeed(&ios,B115200);
   
   if(tcsetattr( device_fd, TCSANOW, &ios ))
   {
      db_error("set tty attr fail\n");
      return 0;
   }
   
    db_msg("sleep %d s to wait for hardware ready\n",setup_delay);

    sleep(setup_delay);//sleep befor hardware get ready
    readline(); //dump the  msg
    db_msg("2gtester dump readline: %s\n",s_ATBuffer);

    
    if(writeline("AT+CSQ")){ //WRITE single query command
        return 0;
    }
    
    sleep(1);
    if(!readline()){
        db_error("2gtester:no correct response for the AT+CSQ\n");
        return 0;
    }
    db_msg("2gtester AT+CSQ readline: %s\n",s_ATBuffer);
    p_cur=strstr(s_ATBuffer,"+CSQ:");
    if (*p_cur == NULL) {
        return 0;
    }

    p_cur+=5; //point to the rssi start position
    db_msg("p_cur=%s\n",p_cur);
    sl=atoi(p_cur);
    sl=(sl*2)-113;
    db_msg("sl=%d\n",sl);
    return sl;
    
}
Example #5
0
void CdrDisplay::closeAdasScreen()
{
	db_msg("<**CdrDisplay::closeAdasScreen**>");
	if (mCD) {
		int ret;
		ret = mCD->open(9, 0);
		db_msg("ret is %d\n", ret);
		if(ret != 0)
			db_msg("<****closeAdasScreen failed****>");
	}
}
Example #6
0
static BOOL timerCallback(HWND hDlg, int id, DWORD data)
{
	MBPrivData* privData;
	privData = (MBPrivData *)GetWindowAdditionalData(hDlg);

	if(id == TIMER_CONFIRM_CALLBACK) {
		db_msg("confirmCallback\n");
		(*privData->confirmCallback)(hDlg , privData->confirmData);
		db_msg("confirmCallback\n");
	}

	return FALSE;
}
Example #7
0
void CdrCamera::stopAWMD()
{
	db_msg("%s %d\n", __FUNCTION__, __LINE__);
	if (mHC && (mAWMDing)) {
		db_msg("%s %d\n", __FUNCTION__, __LINE__);
		mHC->stopAWMoveDetection();
		if(mAwmdTimerID) {
			stopTimer(mAwmdTimerID);
			deleteTimer(mAwmdTimerID);
			mAwmdTimerID = 0;
		}
		mAWMDing = false;
	}
}
Example #8
0
int PlayBack::PreparePlayBack(std::string filePath)
{
	zeta::ZetaDisplay *mZD = mCdrMain->get_ZetaDisp();
	mIZetaMediaPlayer->setOnPreparedListener(mPlayBackListener);
	mIZetaMediaPlayer->setOnCompletionListener(mPlayBackListener);
	db_msg("PreparePlayBack: filePath:%s\n", filePath.c_str());

	mCdrMain->stopPreviewOutside(1);
	usleep(100 * 1000);
	mIZetaMediaPlayer->setDisplay(mZD->getHandle());			
	mIZetaMediaPlayer->setDataSource(filePath.c_str());		
	mIZetaMediaPlayer->prepare();
	db_msg("PreparePlayBack: mIZetaMediaPlayer->prepare()\n");
	return 0;
}
static int setup_device(char *device_node_path,int setup_delay)
{
	struct termios  ios;

	device_fd= open (device_node_path, O_RDWR);
	if(device_fd<0){
		db_error("2glooptester:open device error\n");
	}

	/* disable echo on serial ports */
	tcgetattr( device_fd, &ios );
	ios.c_lflag = 0;  

	tcflush(device_fd, TCIFLUSH);
	cfsetospeed(&ios,B115200);
	if(tcsetattr( device_fd, TCSANOW, &ios )){
		db_error("set tty attr fail\n");
		return -1;
	}
	
	db_msg("sleep %d s to wait for hardware ready\n",setup_delay);
	sleep(setup_delay);//sleep befor hardware get ready

	return 0;
}
Example #10
0
CdrDisplay::~CdrDisplay()
{
	db_msg("CdrDisplay Destructor\n");
	mCD->releaseSurface(mHlay);
	delete mCD;
	mCD = NULL;
}
Example #11
0
PlayBack::PlayBack(CdrMain *cdrMain) : 
	mCurrentState(STATE_IDLE), 
	mTargetState(STATE_IDLE), 
	mStopFlag(0), 
	bmpIcon()
{
	RECT rect;
	HWND hMainWnd = cdrMain->getHwnd();
	db_msg("PlayBack:-----------------------\n");
	GetWindowRect(hMainWnd, &rect);

	mHwnd = CreateWindowEx(WINDOW_PLAYBACK, "",
			WS_NONE,
			WS_EX_TRANSPARENT | WS_EX_USEPARENTFONT,
			WINDOWID_PLAYBACK,
			0, 0, RECTW(rect), RECTH(rect),
			hMainWnd, (DWORD)this);
	if(mHwnd == HWND_INVALID) {
		return;
	}
	showWindow(SW_HIDE);

	mCdrMain = cdrMain;
	mIZetaMediaPlayer = new zeta::iZetaMediaPlayer();
	mPlayBackListener = new PlayBackListener(this);
	
	ResourceManager *rm = ResourceManager::getInstance();
	rm->setHwnd(WINDOWID_PLAYBACK, mHwnd);
	mCurId=0;
}
Example #12
0
void CdrCamera::setAdas(bool val)
{
	if (mId != CAM_CSI) {
		return ;
	}
	mNeedADAS = val;
	db_msg("%s %d, val is %d\n", __FUNCTION__, __LINE__, val);
	if (mHC && (mPreviewing == true)) {
		db_msg("%s %d\n", __FUNCTION__, __LINE__);
		if (val) {
			startAdas();
		} else {
			stopAdas();
		}
	}
}
Example #13
0
void PlayBack::cdrplaybackicon(HWND hWnd,ResourceID mId,int iCmdShow)
{
	int retval;
	CDR_RECT rect;
	ResourceManager* rm;
	HWND retWnd;

	rm = ResourceManager::getInstance();
	retval = rm->getResBmp(mId, BMPTYPE_BASE, bmpIcon);
	if(retval < 0) {
		db_error("get current playback icon bmp failed\n");
		//return -1;
	}	
	rm->getResRect(mId, rect);	
	db_msg("luo rect.x=%d rect.y=%d rect.w=%d rect.h=%d \n ",rect.x,rect.y,rect.w,rect.h);
	
	retWnd = CreateWindowEx(CTRL_STATIC, "",
			WS_VISIBLE | WS_CHILD | SS_BITMAP | SS_CENTERIMAGE,
			WS_EX_TRANSPARENT,
			mId,		
			rect.x, rect.y,rect.w,rect.h,
			hWnd, (DWORD)&bmpIcon);
	
	if(retWnd == HWND_INVALID) {
		db_error("create playback icon label failed\n");
		//return -1;
	}
	ShowWindow(retWnd, iCmdShow);	
//	return 0;
}
Example #14
0
void PlayBack::PlayBackPlayStatus(PlayStatus Status)
{
	switch(Status){
		case PlayStart:
			cdrplaybackicon(mHwnd,ID_PLAYBACK_ICON3,SW_HIDE);
			cdrplaybackicon(mHwnd,ID_PLAYBACK_ICON2,SW_HIDE);
			cdrplaybackicon(mHwnd,ID_PLAYBACK_ICON1,SW_HIDE);
			cdrplaybackicon(mHwnd,ID_PLAYBACK_ICON,SW_SHOWNORMAL);
			break;
		case PlayStop:
			cdrplaybackicon(mHwnd,ID_PLAYBACK_ICON3,SW_HIDE);
			cdrplaybackicon(mHwnd,ID_PLAYBACK_ICON2,SW_HIDE);
			cdrplaybackicon(mHwnd,ID_PLAYBACK_ICON,SW_HIDE);
			cdrplaybackicon(mHwnd,ID_PLAYBACK_ICON1,SW_SHOWNORMAL);
			break;
		case PlayRewind:
			cdrplaybackicon(mHwnd,ID_PLAYBACK_ICON3,SW_HIDE);			
			cdrplaybackicon(mHwnd,ID_PLAYBACK_ICON1,SW_HIDE);			
			cdrplaybackicon(mHwnd,ID_PLAYBACK_ICON,SW_HIDE);			
			cdrplaybackicon(mHwnd,ID_PLAYBACK_ICON2,SW_SHOWNORMAL);
			break;
		case PlayForward:			
			cdrplaybackicon(mHwnd,ID_PLAYBACK_ICON2,SW_HIDE);							
			cdrplaybackicon(mHwnd,ID_PLAYBACK_ICON1,SW_HIDE);							
			cdrplaybackicon(mHwnd,ID_PLAYBACK_ICON,SW_HIDE);				
			cdrplaybackicon(mHwnd,ID_PLAYBACK_ICON3,SW_SHOWNORMAL);
			break;
		default:
			db_msg("luo PlayBackPlayStatus error\n");
			break;			
	}
}
Example #15
0
int PlayBack::createSubWidgets(HWND hWnd)
{
	int retval;
	CDR_RECT rect;
	ResourceManager* rm;
	HWND retWnd;
	db_msg("createSubWidgets:------------\n");

	rm = ResourceManager::getInstance();

	ProgressBarData_t PGBData;
	rm->getResRect(ID_PLAYBACK_PGB, rect);
	PGBData.bgcWidget = rm->getResColor(ID_PLAYBACK_PGB, COLOR_BGC);
	PGBData.fgcWidget = rm->getResColor(ID_PLAYBACK_PGB, COLOR_FGC);
	retWnd = CreateWindowEx(CTRL_CDRPROGRESSBAR, NULL,
			WS_VISIBLE,
			WS_EX_NONE,
			ID_PLAYBACK_PGB,		
			rect.x, rect.y, rect.w, rect.h,
			hWnd, (DWORD)&PGBData);
	if(retWnd == HWND_INVALID) {
		db_error("create playback progress bar failed\n");
		return -1;
	}

	return 0;
}
static int enter_loop_mode(void)
{   
	char *p_cur;
	int try=0;
	if(writeline("AT+ECHO1ON")){
	    return -1;
	}
	sleep(2);
	while(try<3){
		if(!readline()){
			 sleep(2);
			  try++;  
		} 
		else {
			break;
		}
	}
	db_msg("2glooptester ATD readline: %s\n",s_ATBuffer);
	if(try>=3) {
		db_error("2glooptester:no correct response for the ATD\n");
		return -1;
	}
	 p_cur=strstr(s_ATBuffer,"OK");
	if(p_cur){
		return 0;
	}
	else {
	    return -1;    
	}
}
Example #17
0
static int detect_output_mode(void)
{
    unsigned int args[4];
    int ret;
    int support_mode;

    args[0] = 1;
    args[1] = DISP_TV_MOD_1080P_50HZ;
    ret = ioctl(disp, DISP_CMD_HDMI_SUPPORT_MODE, args);
    if (ret == 1) {
        db_msg("hdmitester: your device support 1080p 50Hz\n");
        output_mode = DISP_TV_MOD_1080P_50HZ;
        screen_width  = 1920;
        screen_height = 1080;
    }
    else {
        args[0] = 1;
        args[1] = DISP_TV_MOD_720P_50HZ;
        ret = ioctl(disp, DISP_CMD_HDMI_SUPPORT_MODE, args);
        if (ret == 1) {
            db_msg("hdmitester: your device support 720p 50Hz\n");
            output_mode = DISP_TV_MOD_720P_50HZ;
            screen_width  = 1280;
            screen_height = 720;
        }
        else {
            db_msg("hdmitester: your device do not support neither 1080p nor 720p (50Hz)\n");
            if (script_fetch("hdmi", "support_mode", &support_mode, 1)) {
                support_mode = 2;
                db_msg("hdmitester: can't fetch user config mode, use default mode: %s\n", 
                        type_list[support_mode].name);
            }
            else if (support_mode < 0 || support_mode >= TYPE_COUNT) {
                support_mode = 2;
                db_msg("hdmitester: user config mode invalid, use default mode: %s\n", 
                        type_list[support_mode].name);
            }
            db_msg("hdmitester: use user config mode: %s\n", type_list[support_mode].name);
            args[0] = 1;
            args[1] = type_list[support_mode].mode;
            ret = ioctl(disp, DISP_CMD_HDMI_SUPPORT_MODE, args);
            if (ret == 1) {
                db_msg("hdmitester: you device support %s\n", type_list[support_mode].name);
                output_mode = type_list[support_mode].mode;
                screen_width  = type_list[support_mode].width;
                screen_height = type_list[support_mode].height;
            }
            else {
                db_msg("hdmitester: you device do not support %s\n", 
                        type_list[support_mode].name);
                return -1;
            }
        }
    }

    return 0;
}
Example #18
0
void CdrCamera::stopAdas()
{
	db_msg(" mADASing %d ", mADASing);
	if (mHC && mADASing) {
		mHC->adasStopDetection();
		mADASing = false;
	}
}
Example #19
0
void CdrCamera::stopPreview(void)
{
	Mutex::Autolock _l(mLock);

	db_msg("stopPreview %d\n", mId);
	if(mPreviewing == false) {
		db_msg("preview is already stoped\n");
		return;
	}
	mHC->stopPreview();
	mPreviewing = false;
	db_msg("stopPreview\n");

	stopAWMD();
	disableWaterMark();
	stopAdas();
}
Example #20
0
void CdrCamera::startAdas()
{
	db_msg(" mADASing %d ", mADASing);
	if (mHC&& (mADASing == false)) {
		mHC->setAdasDetectionListener(this);
		mHC->adasStartDetection();
		mADASing = true;
	}
}
Example #21
0
int CdrCamera::startPreview(void)
{
	Mutex::Autolock _l(mLock);

	db_msg("startPreview %d\n", mId);
	if(mPreviewing == true) {
		db_msg("preview is started\n");
		return -1;
	}
	mHC->startPreview();
	mPreviewing = true;
	if (mNeedAWMD) {
		startAWMD();
	}
	if (mNeedADAS) {
		startAdas();
	}
	return 0;
}
Example #22
0
static BOOL timerCallback(HWND hDlg, int id, DWORD data)
{
	tipLabelData_t* tipLabelData;

	tipLabelData = (tipLabelData_t*)GetWindowAdditionalData(hDlg);

	db_msg("timerCallback\n");
	if(id == ONE_SHOT_TIMER) {
		db_msg("one shot timer timerCallback\n");
		if(tipLabelData->callback != NULL)
			(*tipLabelData->callback)(hDlg, tipLabelData->callbackData);
		db_msg("one shot timer timerCallback\n");
	} else if(id == TIMEOUT_TIMER) {
		db_msg("timeout timer timerCallback\n");
		SendNotifyMessage(hDlg, MSG_CLOSE_TIP_LABEL, 0, 0);
	}

	return FALSE;
}
Example #23
0
void PlayBack::PlayBackListener::onPrepared(iZetaMediaPlayer *PiZetaMediaPlayer)
{

	db_msg("PlayBackListener::onPrepared:-------------\n");
	mPB->mCurrentState = STATE_PREPARED;
	//if(mPB->mTargetState == STATE_STARTED)
	{
		db_msg("PlayBackListener::onPrepared:start ZetaMediaPlay\n");
		PiZetaMediaPlayer->start();
	}		
#if 0
	mPB->mCurrentState = STATE_PREPARED;
	if(mPB->mTargetState == STATE_STARTED)
	{
		db_msg("start CedarMediaPlayer\n");
		mPB->start();
	}
#endif	
}
Example #24
0
int ShowWifiTip(HWND hParent, tipLabelData_t* info, int full_screen)
{
	DLGTEMPLATE dlg;
	CDR_RECT rect;

	if(info == NULL) {
		db_error("invalid info\n");
		return -1;
	}
	memset(&dlg, 0, sizeof(dlg));

	rect = info->rect;
	info->full_screen = full_screen;
	//if(full_screen) 
	{
		rect.x = 0;
		rect.y = 0;
		getScreenInfo(&rect.w,&rect.h);
		db_msg(" rect(%d %d %d %d)", rect.x, rect.y, rect.w, rect.h);
	}
	ctrlData1[0].x = 0;
	ctrlData1[0].y = 0;
	ctrlData1[0].w = rect.w;
	ctrlData1[0].h = info->titleHeight;
	ctrlData1[0].caption = info->title;

	//if (info->hasicon == true)
	{

		ctrlData1[1].x = 60;
		ctrlData1[1].w = rect.w - 60;
		ctrlData1[1].h = rect.h - 10 - ctrlData1[0].h;
		ctrlData1[1].y = ctrlData1[0].h +(ctrlData1[1].h/4);
		ctrlData1[1].caption = info->text;
		ctrlData1[1].dwStyle = WS_VISIBLE | SS_LEFT;
	}	
	ResourceManager	*rm = ResourceManager::getInstance();

	dlg.dwStyle = WS_VISIBLE;
	dlg.dwExStyle = WS_EX_NONE;
	dlg.x = rect.x;
	dlg.y = rect.y;
	dlg.w = rect.w;
	dlg.h =	rect.h;
	dlg.caption = "";
	dlg.hIcon = 0;
	dlg.hMenu = 0;
	dlg.controlnr = 2;
	dlg.controls = ctrlData1;
	dlg.dwAddData = 0;

	return DialogBoxIndirectParam(&dlg, hParent, DialogProc, (LPARAM)info);
}
Example #25
0
int PlayBack::stopPlayback(bool bRestoreAlpha)
{
	db_msg("stop playback\n");
	if(IsTimerInstalled(mHwnd, PLAYBACK_TIMER) == TRUE)
		KillTimer(mHwnd, PLAYBACK_TIMER);
	stop();
	reset();
	if (bRestoreAlpha) {
		set_ui_alpha(255);
	}
	return 0;
}
Example #26
0
void CdrCamera::enableLicenseWaterMark(bool IsTimeWM ,bool IsLicenseWM ,const char* licenseWM)
{
	char waterMark[100]= {0};
	int licenseWM_x = mWMPos.x + 180;
	int licenseWM_y = mWMPos.y + 50;

	sprintf(waterMark ,"%d,%d,%d,%d,%d,%s",mWMPos.x , mWMPos.y , IsTimeWM , licenseWM_x , licenseWM_y ,licenseWM);
	if (mHC) {
		db_msg(" waterMark :%s", waterMark);
		mHC->setWaterMark(1, waterMark);
	}
}
Example #27
0
void CdrCamera::setPicQuality(int percent)
{
	db_msg("setPicQuality percent:%d", percent);
	HerbCamera::Parameters params;
	if(mHC == NULL) {
		db_error("mHC is NULL\n");
		return;
	}
	mHC->getParameters(&params);
	params.setJpegQuality(percent);
	mHC->setParameters(&params);
}
Example #28
0
int PlayBack::startPlayBack()
{
	HWND hIcon;

	PlayBackPlayStatus(PlayStart);
	db_msg("xxxxxxxxxxxxxxx\n");
	SetTimer(mHwnd, PLAYBACK_TIMER, PROGRESSBAR_REFRESH_TIME);
	initProgressBar();
	mStopFlag = 0;
	start();

	return 0;
}
Example #29
0
void CdrCamera::setPicResolution(PicResolution_t quality)
{
	HerbCamera::Parameters params;
	unsigned int w = 0;
	unsigned int h = 0;
	if(mHC == NULL) {
		db_error("mHC is NULL\n");
		return;
	}
	mHC->getParameters(&params);
	switch(quality) {
	case PicResolution2M:
		{
			w = 1600;
			h = 1200;
		}
		break;
	case PicResolution5M:
		{
			w = 3200;
			h = 1800;
		}
		break;
	case PicResolution8M:
		{
			w = 3840;
			h = 2160;
		}
		break;
	case PicResolution12M:
		{
			w = 4000;
			h = 3000;
		}
		break;
	default:
		{
			db_msg("not support PicResolution:%d\n", quality);
			return ;
		}
		break;
	}
	#ifdef BACK_PICTURE_SOURCE_MODE
		if (mId == CAM_UVC) {
			w = REAL_UVC_W;
			h = REAL_UVC_H;
		}
	#endif
	params.setPictureSize(w, h);
	mHC->setParameters(&params);
}
Example #30
0
static int sensor_get_class_path(char *class_path,char * sensor_name)
{
	char *dirname = "/sys/class/input";
	char buf[256];
	int res;
	DIR *dir;
	struct dirent *de;
	int fd = -1;
	int found = 0;

	dir = opendir(dirname);
	if (dir == NULL)
		return -1;

	while((de = readdir(dir))) {
		if (strncmp(de->d_name, "input", strlen("input")) != 0) {
		    continue;
        	}

		sprintf(class_path, "%s/%s", dirname, de->d_name);
		snprintf(buf, sizeof(buf), "%s/name", class_path);

		fd = open(buf, O_RDONLY);
		if (fd < 0) {
		    continue;
		}
		if ((res = read(fd, buf, sizeof(buf))) < 0) {
		    close(fd);
		    continue;
		}
		buf[res - 1] = '\0';
		if (strcmp(buf, sensor_name) == 0) {
		    found = 1;
		    db_msg("sensor:find sensor %s\n",sensor_name);
		    close(fd);
		    break;
		}

		close(fd);
		fd = -1;
	}
	closedir(dir);

	if (found) {
		return 0;
	}else {
		class_path = '\0';
		return -1;
	}

}