Esempio n. 1
0
 template<class EXC> void parent_throw_if()
 {
     if(-1 != m_write_end) { close(m_write_end); m_write_end = -1; }
     
     if(read(m_read_end, &m_errno, sizeof(m_errno)))
     {
         close(m_read_end);
         
         if(m_errno) throw EXC(boost::system::error_code(m_errno, boost::system::get_system_category()));
     }
     close(m_read_end);
 }
Esempio n. 2
0
int main(void) {

    int num1 = 0;
    int num2 = 0;
    int temp = 0;

    printf("请输入两个整数:");
    scanf("%d%d", &num1, &num2);

    EXC(num1, num2);

    printf("num1 = %d\nnum2 = %d\n", num1, num2);

    return 0;
}
Esempio n. 3
0
 template<class EXC> void join() const
 {
     if(join()) throw EXC();
 }
Esempio n. 4
0
void initGLFunctions()
{
#define EXT_SUFFIX ""
	GL_20_FUN;

	/* Determine GL version */
	const char *ver = (const char*) gl.GetString(GL_VERSION);

	/* Assume single digit */
	int glMajor = *ver - '0';

	if (glMajor < 2)
		throw EXC("At least OpenGL 2.0 is required");

	BoostSet<std::string> ext;

	if (glMajor >= 3)
		parseExtensionsCore(gl.GetIntegerv, ext);
	else
		parseExtensionsCompat(gl.GetString, ext);

#define HAVE_EXT(_ext) ext.contains("GL_" #_ext)

	if (!HAVE_EXT(ARB_framebuffer_object))
	{
		if (!(HAVE_EXT(EXT_framebuffer_object) && HAVE_EXT(EXT_framebuffer_blit)))
			throw EXC("No FBO extensions available");

#undef EXT_SUFFIX
#define EXT_SUFFIX "EXT"
		GL_FBO_FUN;
	}
	else
	{
#undef EXT_SUFFIX
#define EXT_SUFFIX ""
		GL_FBO_FUN;
	}

	if (!HAVE_EXT(ARB_vertex_array_object))
	{
		if (!HAVE_EXT(APPLE_vertex_array_object))
			throw EXC("No VAO extensions available");

#undef EXT_SUFFIX
#define EXT_SUFFIX "APPLE"
		GL_VAO_FUN;
	}
	else
	{
#undef EXT_SUFFIX
#define EXT_SUFFIX ""
		GL_VAO_FUN;
	}

	if (HAVE_EXT(KHR_debug))
	{
#undef EXT_SUFFIX
#define EXT_SUFFIX ""
		GL_DEBUG_KHR_FUN;
	}
	else if (HAVE_EXT(ARB_debug_output))
	{
#undef EXT_SUFFIX
#define EXT_SUFFIX "ARB"
		GL_DEBUG_KHR_FUN;
	}
}
Esempio n. 5
0
/*****************************************************************************
 函 数 名  : NW_InquireNat
 功能描述  : 查询Nat的函数
 输入参数  : 无
 输出参数  : 无
 返 回 值  : 无
 调用函数  :
 被调函数  :

 修改历史      :
  1.日    期   : 2011年11月24日
    修改内容   : 新生成函数

*****************************************************************************/
void NW_InquireNat(void)
{
    EXC("cat /proc/net/ip_conntrack");

}/* NW_InquireNat */
Esempio n. 6
0
/*****************************************************************************
 函 数 名  : NW_InquireNetstate
 功能描述  : 查询Netstate的函数
 输入参数  : 无
 输出参数  : 无
 返 回 值  : 无
 调用函数  :
 被调函数  :

 修改历史      :
  1.日    期   : 2011年11月24日
    修改内容   : 新生成函数

*****************************************************************************/
void NW_InquireNetstate(void)
{
    /* 只查询tcp,udp,icmp连接其他协议不查询 */
    EXC("netstat -t -u -w -n");

}/* NW_InquireNetstate */
Esempio n. 7
0
/*****************************************************************************
 函 数 名  : NW_InquireRoute
 功能描述  : 查询Route的函数
 输入参数  : 无
 输出参数  : 无
 返 回 值  : 无
 调用函数  :
 被调函数  :

 修改历史      :
  1.日    期   : 2011年11月24日
    修改内容   : 新生成函数

*****************************************************************************/
void NW_InquireRoute(void)
{
    EXC("route");

}/* NW_InquireRoute */
Esempio n. 8
0
/*****************************************************************************
 函 数 名  : NW_InquireArp
 功能描述  : 查询Arp的函数
 输入参数  : 无
 输出参数  : 无
 返 回 值  : 无
 调用函数  :
 被调函数  :

 修改历史      :
  1.日    期   : 2011年11月24日
    修改内容   : 新生成函数

*****************************************************************************/
void NW_InquireArp(void)
{
    EXC("arp");

}/* NW_InquireArp */
Esempio n. 9
0
/*****************************************************************************
 函 数 名  : NW_InquireIfconfig
 功能描述  : 查询Ifconfig的函数
 输入参数  : 无
 输出参数  : 无
 返 回 值  : 无
 调用函数  :
 被调函数  :

 修改历史      :
  1.日    期   : 2011年11月24日
    修改内容   : 新生成函数

*****************************************************************************/
void NW_InquireIfconfig(void)
{
    EXC("ifconfig");

}/* NW_InquireIfconfig */