当前位置: 首页>>代码示例>>C++>>正文


C++ ctrl函数代码示例

本文整理汇总了C++中ctrl函数的典型用法代码示例。如果您正苦于以下问题:C++ ctrl函数的具体用法?C++ ctrl怎么用?C++ ctrl使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了ctrl函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: SQPSmoother

void SQPSmoother() { 
  Thread* start = new Thread(*glThreads[planThread]->getThread());
  Thread* end = new Thread(*glThreads[endThread]->getThread());
  vector<Thread*> traj; 
  vector<vector<VectorXd> > mot; 

  DimensionReductionBestPath(start, end, 0, traj, mot);
  initialized = false; // set to false to prevent visualizer from segfault
  
  vector<VectorXd> U;
  vector<Thread*> smoothTraj;
  vector<Thread*> downSampledTraj; 
  for (int i = 0; i < traj.size(); i++) {
    if ( i % 5 == 0) { 
      VectorXd ctrl(12);
      ctrl.setZero();
      U.push_back(ctrl); 
      smoothTraj.push_back(new Thread(*traj[i]));
      downSampledTraj.push_back(new Thread(*traj[i]));
    }
  }

  int numGoalCopies = smoothTraj.size() / 50;
  if (numGoalCopies == 0) numGoalCopies = 1; 

  for (int i = 0; i < numGoalCopies; i++) { 
    smoothTraj.push_back(new Thread(*end));
    VectorXd ctrl(12);
    ctrl.setZero();
    U.push_back(ctrl); 
  }
  
  Iterative_Control* ic = new Iterative_Control(smoothTraj.size(), smoothTraj.front()->num_pieces());

  int num_iters = 2; 

  ic->iterative_control_opt(smoothTraj, U, num_iters); 
	vector<vector<VectorXd> > thread_control_data;
  for (int i = 0; i < smoothTraj.size(); i++) { 
    //vector<Thread*> tmp;
    //tmp.push_back(traj[i]);
    //thread_visualization_data.push_back(tmp); 
    vector<VectorXd> motion_wrapper;
    motion_wrapper.push_back(U[i]);
    thread_control_data.push_back(motion_wrapper);
  }
  Trajectory_Follower *pathFollower = 
    new Trajectory_Follower(smoothTraj, thread_control_data, new Thread(*start)); 

  pathFollower->control_to_finish();

  vector<Thread*> control_traj;
  pathFollower->getReachedStates(control_traj);
  vector<vector<Thread*> > thread_visualization_data;
  thread_visualization_data.push_back(downSampledTraj);
  thread_visualization_data.push_back(smoothTraj);
  thread_visualization_data.push_back(control_traj);
  setThreads(thread_visualization_data);

}
开发者ID:alexlee-gk,项目名称:surgical,代码行数:60,代码来源:test_planner.cpp

示例2: switch

void
avatar::putch(int ch)
{
  if (dispfunc)
    (this->*dispfunc)(ch);
  else
  {
    switch (ch)
    {
      case ctrl('L'):             // cls
        flushbuf();
        vs.gotoxy(0, 0);
        vs.setattr(AVT_DEFAULT);
        vs.cls();
        insertmode = 0;
        break;

      case ctrl('Y'):             // repeat chr
        flushbuf();
        dispfunc = &avatar::rptchar;
        counter = -1;
        break;

      case ctrl('V'):             // Video
        flushbuf();
        dispfunc = &avatar::setvideo;
        break;

      default:
        scrinterp::putch(ch);
        break;
    }
  }
}
开发者ID:Eric-Schnipke,项目名称:snippets,代码行数:34,代码来源:avatar.cpp

示例3: drawscrollbar

void
drawscrollbar(int top, int bot)
{
	int p1, p2;

	if (emacsviterm == YES) {
		if (bot > top) {
			p1 = 16 + (top - 1) * 100 / totallines;
			p2 = 16 + (bot - 1) * 100 / totallines;
			if (p2 > 116) {
				p2 = 116;
			}
			if (p1 < 16) {
				p1 = 16;
			}
			/* don't send ^S or ^Q because it will hang a layer using cu(1) */
			if (p1 == ctrl('Q') || p1 == ctrl('S')) {
				++p1;
			}
			if (p2 == ctrl('Q') || p2 == ctrl('S')) {
				++p2;
			}
		}
		else {
			p1 = p2 = 16;
		}
		(void) printf("\033W%c%c", p1, p2);
	}
}
开发者ID:badwtg1111,项目名称:cscope,代码行数:29,代码来源:mouse.c

示例4: ctrl

void LineEditor::mouseMoveEvent(QMouseEvent *event)
{
	if (mState == LINE_NEW_FIRST
			|| mState == LINE_NEW_SECOND
			|| mState == VTX_MOVE_START
			|| mState == VTX_MOVE_END
			|| mState == PICK_REF
			|| mState == LINE_MOVE)
	{
		mPos = ctrl()->snapToPlaceGrid(
					ctrl()->view()->transform().inverted()
					.map(event->pos()));
		switch(mState)
		{
		case VTX_MOVE_START:
			mLine->setStart(mPos);
			break;
		case LINE_NEW_SECOND:
		case VTX_MOVE_END:
			mLine->setEnd(mPos);
			break;
		default:
			break;
		}
		emit overlayChanged();
	}
}
开发者ID:igorizyumin,项目名称:xpcb,代码行数:27,代码来源:LineEditor.cpp

示例5: editall

void
editall(void)
{
	char	file[PATHLEN + 1];	/* file name */
	char	linenum[NUMLEN + 1];	/* line number */
	int	c;

	/* verify that there is a references found file */
	if (refsfound == NULL) {
		return;
	}
	/* get the first line */
	seekline(1);
	
	/* get each file name and line number */
	while (fscanf(refsfound, "%" PATHLEN_STR "s%*s%" NUMLEN_STR "s%*[^\n]", file, linenum) == 2) {
		edit(file, linenum);	/* edit it */
		if (editallprompt == YES) {
			addstr("Type ^D to stop editing all lines, or any other character to continue: ");
			if ((c = mygetch()) == EOF || c == ctrl('D') || c == ctrl('Z')) {
				break;
			}
		}
	}
	seekline(topline);
}
开发者ID:cpplife,项目名称:mycscope,代码行数:26,代码来源:edit.c

示例6: drawscrollbar

void
drawscrollbar(int top, int bot, int total)
{
	int	p1, p2;

	if (mouse == EMACSTERM) {
		if (bot > top && total > 0) {
			p1 = 16 + (top - 1) * 100 / total;
			p2 = 16 + (bot - 1) * 100 / total;
			if (p2 > 116) {
				p2 = 116;
			}
			if (p1 < 16) {
				p1 = 16;
			}
			/*
			 * don't send ^S or ^Q to avoid hanging a layer using
			 * cu(1)
			 */
			if (p1 == ctrl('Q') || p1 == ctrl('S')) {
				++p1;
			}
			if (p2 == ctrl('Q') || p2 == ctrl('S')) {
				++p2;
			}
		} else {
			p1 = p2 = 16;
		}
		(void) printf("\033W%c%c", p1, p2);
	}
}
开发者ID:andreiw,项目名称:polaris,代码行数:31,代码来源:mouse.c

示例7: getmouseevent

MOUSEEVENT *
getmouseevent(void)
{
	static	MOUSEEVENT	m;

	if (mouse == EMACSTERM) {
		switch (mygetch()) {
		case ctrl('_'):		/* click */
			if ((m.button = mygetch()) == '0') { /* if scroll bar */
				m.percent = getpercent();
			} else {
				m.x1 = getcoordinate();
				m.y1 = getcoordinate();
				m.x2 = m.y2 = -1;
			}
			break;

		case ctrl(']'):		/* sweep */
			m.button = mygetch();
			m.x1 = getcoordinate();
			m.y1 = getcoordinate();
			m.x2 = getcoordinate();
			m.y2 = getcoordinate();
			break;
		default:
			return (NULL);
		}
		return (&m);
	}
	return (NULL);
}
开发者ID:andreiw,项目名称:polaris,代码行数:31,代码来源:mouse.c

示例8: CAF_PUSH_AID

void private_thread::run() {
  auto job = const_cast<scheduled_actor*>(self_);
  CAF_PUSH_AID(job->id());
  CAF_LOG_TRACE("");
  scoped_execution_unit ctx{&job->system()};
  auto max_throughput = std::numeric_limits<size_t>::max();
  bool resume_later;
  for (;;) {
    state_ = await_resume_or_shutdown;
    do {
      resume_later = false;
      switch (job->resume(&ctx, max_throughput)) {
        case resumable::resume_later:
          resume_later = true;
          break;
        case resumable::done:
          intrusive_ptr_release(job->ctrl());
          return;
        case resumable::awaiting_message:
          intrusive_ptr_release(job->ctrl());
          break;
        case resumable::shutdown_execution_unit:
          return;
      }
    } while (resume_later);
    // wait until actor becomes ready again or was destroyed
    if (!await_resume())
      return;
  }
}
开发者ID:crudbug,项目名称:actor-framework,代码行数:30,代码来源:private_thread.cpp

示例9: ctrl

void VHDDExplorer::OnExport(wxCommandEvent& event)
{
	if(m_list->GetSelectedItemCount() > 1)
	{
		wxDirDialog ctrl(this, "Select export folder", wxGetCwd());

		if(ctrl.ShowModal() == wxID_CANCEL)
		{
			return;
		}

		for(int sel = m_list->GetNextSelected(-1); sel != wxNOT_FOUND; sel = m_list->GetNextSelected(sel))
		{
			Export(m_names[sel], fmt::ToUTF8(ctrl.GetPath()) + '\\' + m_names[sel]);
		}
	}
	else
	{
		int sel = m_list->GetFirstSelected();
		wxFileDialog ctrl(this, "Select export file", wxEmptyString, fmt::FromUTF8(m_names[sel]), wxFileSelectorDefaultWildcardStr, wxFD_SAVE | wxFD_OVERWRITE_PROMPT);

		if(ctrl.ShowModal() == wxID_CANCEL)
		{
			return;
		}

		Export(m_names[sel], fmt::ToUTF8(ctrl.GetPath()));
	}

	UpdateList();
}
开发者ID:Aishou,项目名称:rpcs3,代码行数:31,代码来源:VHDDManager.cpp

示例10: main

int
main()
{
	int argc, i;
	char *argv[16];
	char prompt[] = "args> ";
	char cmdline[128], c, *cl, **ap;

	oskit_clientos_init();

	printf("%s", prompt);
	for (i = 0; i < sizeof cmdline - 1; i++) {
		c = getchar();
		switch (c) {
		case '\b':
		case '\?':
			if (i > 0) {
				printf("\b \b");
				i--;
			}
			i--;
			continue;
		case ctrl('U'):
			while (i > 0) {
				printf("\b \b");
				i--;
			}
			i--;
			continue;
		case ctrl('R'):
			cmdline[i] = 0;
			printf("^R\n%s%s", prompt, cmdline);
			i--;
			continue;
		case '\n':
		case ctrl('M'):
			putchar('\n');
			break;
		default:
			cmdline[i] = c;
			putchar(c);
			continue;
		}
		break;
	}
	cmdline[i] = 0;
	cl = cmdline;
	argv[0] = "memtest";
	argc = 1;
	for (ap = &argv[1]; (*ap = strsep(&cl, " \t")) != 0; )
		if (**ap) {
			ap++;
			if (++argc == sizeof(argv)/sizeof(argv[0]))
				break;
		}
	return real_main(argc, argv);
}
开发者ID:dzavalishin,项目名称:oskit,代码行数:57,代码来源:memtest.c

示例11: setPropertyPageNo

int HKVisualParameter::Read_XML_VisualFeatures(
    AST_TXML_Tag *root,
    AST_TXML_Attribute *page_title,
    AST_TXML_Attribute *control,
    DRMessageManager& dmm, long dmm_page )
{
    if( page_title )
    {
        if( page_title->getValueType() == ASTVALT_TXML_Int )
            setPropertyPageNo( page_title->getIntValue() );
        else if( page_title->getValueType() == ASTVALT_TXML_String )
            setPropertyPageTitle( page_title->getStringValue() );
    }
    if( control && control->getValueType() == ASTVALT_TXML_String )
    {
        if( !xml_strcmp( control->getStringValue(), FBL_VAL_color_combo_box ) )
        {
            GUICtrlTemplate ctrl( GUI_CTRL_TEMPLATE_COLOR_COMBO_BOX, getType() );
            setGUICtrl( ctrl );
        }
        else if( !xml_strcmp( control->getStringValue(), FBL_VAL_edit_box ) )
        {
            GUICtrlTemplate ctrl( GUI_CTRL_TEMPLATE_EDIT_BOX, getType() );
            setGUICtrl( ctrl );
        }
        else if( !xml_strcmp( control->getStringValue(), FBL_VAL_open_file_edit_box ) )
        {
            GUICtrlTemplate ctrl( GUI_CTRL_TEMPLATE_OPEN_FILE_EDIT_BOX, getType() );
            setGUICtrl( ctrl );
        }
        else if( !xml_strcmp( control->getStringValue(), FBL_VAL_formulator_edit_box ) )
        {
            GUICtrlTemplate ctrl( GUI_CTRL_TEMPLATE_FORMULATOR_EDIT_BOX, getType() );
            setGUICtrl( ctrl );
        }
        else if( !xml_strcmp( control->getStringValue(), FBL_VAL_dropdown_combo_box ) )
        {
            GUICtrlTemplate ctrl( GUI_CTRL_TEMPLATE_DROPDOWN_COMBO_BOX, getType() );
            setGUICtrl( ctrl );
            QString warn2 = _T("property control (dropdown combo box) is empty");
            dmm.AddLine( dmm_page, warn2, root->getLine() );
        }
        else
        {
            QString warn1 = _T("property control name field %1 is unknown");
            dmm.AddLine( dmm_page, warn1, root->getLine(), control->getStringValue() );
        }
    }
    else
        Read_XML_ControlTag( root, dmm, dmm_page );
    return 0;
}
开发者ID:Nilis640,项目名称:formulator-mathml,代码行数:52,代码来源:visual_param.cpp

示例12: help

/*
 * Help command
 */
void
help(char c)
{
	esctable_t *p;

	(void)printf("%c\r\n", c);
	for (p = etable; p->e_char; p++) {
		if ((p->e_flags&PRIV) && uid)
			continue;
		(void)printf("%2s", ctrl(character(value(ESCAPE))));
		(void)printf("%-2s %c   %s\r\n", ctrl(p->e_char),
			p->e_flags&EXP ? '*': ' ', p->e_help);
	}
}
开发者ID:ryo,项目名称:netbsd-src,代码行数:17,代码来源:tip.c

示例13: WXUNUSED

void MainFrame::InstallPkg(wxCommandEvent& WXUNUSED(event))
{
	bool stopped = false;

	if(Emu.IsRunning())
	{
		Emu.Pause();
		stopped = true;
	}

	wxFileDialog ctrl(this, L"Select PKG", wxEmptyString, wxEmptyString, "PKG files (*.pkg)|*.pkg|All files (*.*)|*.*", wxFD_OPEN | wxFD_FILE_MUST_EXIST);
	
	if(ctrl.ShowModal() == wxID_CANCEL)
	{
		if(stopped) Emu.Resume();
		return;
	}

	Emu.Stop();
	
	// Open and install PKG file
	fs::file pkg_f(ctrl.GetPath().ToStdString(), fom::read);

	if (pkg_f)
	{
		Emu.GetVFS().Init("/");
		std::string local_path;
		Emu.GetVFS().GetDevice("/dev_hdd0/game/", local_path);
		PKGLoader::Install(pkg_f, local_path + "/");

		// Refresh game list
		m_game_viewer->Refresh();
	}
}
开发者ID:Balbalnom,项目名称:rpcs3,代码行数:34,代码来源:MainFrame.cpp

示例14: WXUNUSED

void MainFrame::InstallPkg(wxCommandEvent& WXUNUSED(event))
{
	bool stopped = false;

	if(Emu.IsRunning())
	{
		Emu.Pause();
		stopped = true;
	}

	wxFileDialog ctrl (this, L"Select PKG", wxEmptyString, wxEmptyString, "PKG files (*.pkg)|*.pkg|All files (*.*)|*.*",
		wxFD_OPEN | wxFD_FILE_MUST_EXIST);
	
	if(ctrl.ShowModal() == wxID_CANCEL)
	{
		if(stopped) Emu.Resume();
		return;
	}

	Emu.Stop();
	
	// Open and install PKG file
	std::string filePath = ctrl.GetPath().ToStdString();
	rFile pkg_f(filePath, rFile::read); // TODO: Use VFS to install PKG files

	if (pkg_f.IsOpened())
	{
		PKGLoader pkg(pkg_f);
		pkg.Install("/dev_hdd0/game/");
		pkg.Close();

		// Refresh game list
		m_game_viewer->Refresh();
	}
}
开发者ID:arkanoid1,项目名称:rpcs3,代码行数:35,代码来源:MainFrame.cpp

示例15: send

/*
 * FTP - send single character
 *  wait for echo & handle timeout
 */
static void
send(char c)
{
	char cc;
	int retry = 0;

	cc = c;
	xpwrite(FD, &cc, 1);
	if (number(value(CDELAY)) > 0 && c != '\r')
		nap(number(value(CDELAY)));
	if (!boolean(value(ECHOCHECK))) {
		if (number(value(LDELAY)) > 0 && c == '\r')
			nap(number(value(LDELAY)));
		return;
	}
tryagain:
	timedout = 0;
	alarm(number(value(ETIMEOUT)));
	read(FD, &cc, 1);
	alarm(0);
	if (timedout) {
		printf("\r\ntimeout error (%s)\r\n", ctrl(c));
		if (retry++ > 3)
			return;
		xpwrite(FD, &null, 1); /* poke it */
		goto tryagain;
	}
}
开发者ID:juanfra684,项目名称:DragonFlyBSD,代码行数:32,代码来源:cmds.c


注:本文中的ctrl函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。