这篇教程C++ CHECK_ARG_COUNT函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中CHECK_ARG_COUNT函数的典型用法代码示例。如果您正苦于以下问题:C++ CHECK_ARG_COUNT函数的具体用法?C++ CHECK_ARG_COUNT怎么用?C++ CHECK_ARG_COUNT使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了CHECK_ARG_COUNT函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: seed_mpfr_nexttowardSeedValue seed_mpfr_nexttoward (SeedContext ctx, SeedObject function, SeedObject this_object, gsize argument_count, const SeedValue args[], SeedException *exception){ mpfr_ptr rop, op; CHECK_ARG_COUNT("mpfr.nexttoward", 1); rop = seed_object_get_private(this_object); if ( seed_value_is_object_of_class(ctx, args[0], mpfr_class) ) { op = seed_object_get_private(args[0]); } else { TYPE_EXCEPTION("mpfr.nexttoward", "mpfr_t"); } mpfr_nexttoward(rop, op); return seed_make_null(ctx);}
开发者ID:iRi-E,项目名称:GNOME-Seed,代码行数:26,
示例2: seed_mpfr_remainderSeedValue seed_mpfr_remainder (SeedContext ctx, SeedObject function, SeedObject this_object, gsize argument_count, const SeedValue args[], SeedException *exception){ mpfr_rnd_t rnd; mpfr_ptr rop, op1, op2; gint ret; CHECK_ARG_COUNT("mpfr.remainder", 3); rop = seed_object_get_private(this_object); rnd = seed_value_to_mpfr_rnd_t(ctx, args[2], exception); if ( seed_value_is_object_of_class(ctx, args[0], mpfr_class) && seed_value_is_object_of_class(ctx, args[1], mpfr_class)) { op1 = seed_object_get_private(args[0]); op2 = seed_object_get_private(args[1]); } else { TYPE_EXCEPTION("mpfr.remainder", "mpfr_t"); } ret = mpfr_remainder(rop, op1, op2, rnd); return seed_value_from_int(ctx, ret, exception);}
开发者ID:iRi-E,项目名称:GNOME-Seed,代码行数:31,
示例3: py_glIsProgramstatic PyObject* py_glIsProgram(PyObject *, PyObject *args) { CHECK_ARG_COUNT(args, 1); Uint prg(PyTuple_GetItem(args, 0)); PyObject *rv = (glIsProgram(prg) == GL_TRUE ? Py_True : Py_False); Py_INCREF(rv); return rv;}
开发者ID:gatgui,项目名称:pygl,代码行数:7,
示例4: seed_mpfr_subSeedValue seed_mpfr_sub (SeedContext ctx, SeedObject function, SeedObject this_object, gsize argument_count, const SeedValue args[], SeedException *exception){ mpfr_rnd_t rnd; mpfr_ptr rop, op1, op2; gdouble dop1, dop2; gint ret; seed_mpfr_t argt1, argt2; /* only want 1 double argument. alternatively, could accept 2, add those, and set from the result*/ CHECK_ARG_COUNT("mpfr.sub", 3); rop = seed_object_get_private(this_object); rnd = seed_value_to_mpfr_rnd_t(ctx, args[2], exception); argt1 = seed_mpfr_arg_type(ctx, args[0], exception); argt2 = seed_mpfr_arg_type(ctx, args[1], exception); if ( (argt1 & argt2) == SEED_MPFR_MPFR ) { /* both mpfr_t */ op1 = seed_object_get_private(args[0]); op2 = seed_object_get_private(args[1]); ret = mpfr_sub(rop, op1, op2, rnd); } else if ( (argt1 | argt2) == (SEED_MPFR_MPFR | SEED_MPFR_DOUBLE) ) { /* a double and an mpfr_t. Figure out the order */ if ( argt1 == SEED_MPFR_MPFR ) { op1 = seed_object_get_private(args[0]); dop2 = seed_value_to_double(ctx, args[1], exception); mpfr_sub_d(rop, op1, dop2, rnd); } else { dop1 = seed_value_to_double(ctx, args[0], exception); op2 = seed_object_get_private(args[1]); mpfr_d_sub(rop, dop1, op2, rnd); } } else if ( (argt1 & argt2) == SEED_MPFR_DOUBLE ) { /* 2 doubles. hopefully doesn't happen */ dop1 = seed_value_to_double(ctx, args[0], exception); dop2 = seed_value_to_double(ctx, args[1], exception); ret = mpfr_set_d(rop, dop1 - dop2, rnd); } else { TYPE_EXCEPTION("mpfr.sub", "double or mpfr_t"); } return seed_value_from_int(ctx, ret, exception);}
开发者ID:iRi-E,项目名称:GNOME-Seed,代码行数:60,
示例5: seed_mpfr_cmpabsSeedValue seed_mpfr_cmpabs (SeedContext ctx, SeedObject function, SeedObject this_object, gsize argument_count, const SeedValue args[], SeedException *exception){ mpfr_ptr rop, op; gint ret; CHECK_ARG_COUNT("mpfr.cmpabs", 1); rop = seed_object_get_private(this_object); if ( seed_value_is_object_of_class(ctx, args[0], mpfr_class) ) { op = seed_object_get_private(args[0]); } else { TYPE_EXCEPTION("mpfr.cmpabs", "mpfr_t"); } ret = mpfr_cmpabs(rop, op); return seed_value_from_int(ctx, ret, exception);}
开发者ID:iRi-E,项目名称:GNOME-Seed,代码行数:27,
示例6: py_glGetVertexAttribstatic PyObject* py_glGetVertexAttrib(PyObject *, PyObject *args) { CHECK_ARG_COUNT(args, 2); PyObject *rv = 0; Uint attrib(PyTuple_GetItem(args, 0)); Enum pname(PyTuple_GetItem(args, 1)); switch (pname) { case GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING: case GL_VERTEX_ATTRIB_ARRAY_ENABLED: case GL_VERTEX_ATTRIB_ARRAY_SIZE: case GL_VERTEX_ATTRIB_ARRAY_STRIDE: case GL_VERTEX_ATTRIB_ARRAY_TYPE: case GL_VERTEX_ATTRIB_ARRAY_NORMALIZED: { GLint value; glGetVertexAttribiv(attrib, pname, &value); rv = PyInt_FromLong(value); break; } case GL_CURRENT_VERTEX_ATTRIB: { Array1D<Float> values(4); glGetVertexAttribfv(attrib, pname, values); rv = values.toPy(); break; } default: PyErr_SetString(PyExc_RuntimeError, "gl.GetVertexAttrib: invalid parameter name"); } return rv;}
开发者ID:gatgui,项目名称:pygl,代码行数:28,
示例7: seed_gettext_dcngettextstatic SeedValueseed_gettext_dcngettext (SeedContext ctx, SeedObject function, SeedObject this_object, gsize argument_count, const SeedValue args[], SeedException * exception){ gchar * domainname, * msgid, * msgid_plural; guint n; gint category; SeedValue ret; CHECK_ARG_COUNT("gettext.dcngettext", 5); domainname = seed_value_to_string (ctx, args[0], exception); msgid = seed_value_to_string (ctx, args[1], exception); msgid_plural = seed_value_to_string (ctx, args[2], exception); n = seed_value_to_uint (ctx, args[3], exception); category = seed_value_to_int (ctx, args[4], exception); ret = seed_value_from_string (ctx, dcngettext(domainname, msgid, msgid_plural, n, category), exception); g_free(domainname); g_free(msgid); g_free(msgid_plural); return ret;}
开发者ID:iRi-E,项目名称:GNOME-Seed,代码行数:30,
示例8: py_glIsShaderstatic PyObject* py_glIsShader(PyObject *, PyObject *args) { CHECK_ARG_COUNT(args, 1); Uint shader(PyTuple_GetItem(args, 0)); PyObject *rv = (glIsShader(shader) == GL_TRUE ? Py_True : Py_False); Py_INCREF(rv); return rv;}
开发者ID:gatgui,项目名称:pygl,代码行数:7,
示例9: seed_gtk_builder_connect_signalsSeedValueseed_gtk_builder_connect_signals(SeedContext ctx, SeedObject function, SeedObject this_object, gsize argument_count, const SeedValue arguments[], SeedException *exception){ builder_ud ud; GtkBuilder *b; CHECK_ARG_COUNT("GtkBuilder.connect_signals", 1); if (!seed_value_is_object (ctx, arguments[0])) { seed_make_exception (ctx, exception, "TypeError", "connect_signals expects one object as the first argument"); return seed_make_undefined (ctx); } b = GTK_BUILDER (seed_value_to_object (ctx, this_object, exception)); ud.ctx = ctx; ud.obj = arguments[0]; if (argument_count == 2) ud.user_data = arguments[1]; else ud.user_data = NULL; gtk_builder_connect_signals_full(b, seed_builder_connect_func, &ud); return seed_make_undefined (ctx);}
开发者ID:dannote,项目名称:seed,代码行数:31,
示例10: py_glDrawBuffersstatic PyObject* py_glDrawBuffers(PyObject *, PyObject *args) { CHECK_ARG_COUNT(args, 1); Array1D<Enum> buffers; if (buffers.fromPy(PyTuple_GetItem(args, 0))) { glDrawBuffers(buffers.size(), buffers); } Py_RETURN_NONE;}
开发者ID:gatgui,项目名称:pygl,代码行数:8,
示例11: py_glGetVertexAttribPointerstatic PyObject* py_glGetVertexAttribPointer(PyObject *, PyObject *args) { CHECK_ARG_COUNT(args, 2); Uint prg(PyTuple_GetItem(args, 0)); Enum param(PyTuple_GetItem(args, 1)); GLvoid *ptr = 0; glGetVertexAttribPointerv(prg, param, &ptr); return PyCObject_FromVoidPtr(ptr, NULL);}
开发者ID:gatgui,项目名称:pygl,代码行数:8,
示例12: py_glShaderSourcestatic PyObject* py_glShaderSource(PyObject *, PyObject *args) { CHECK_ARG_COUNT(args, 2); Uint shader(PyTuple_GetItem(args, 0)); Array1D<String> strings; if (strings.fromPy(PyTuple_GetItem(args, 1))) { glShaderSource(shader, strings.size(), strings, 0); } Py_RETURN_NONE;}
开发者ID:gatgui,项目名称:pygl,代码行数:9,
示例13: lua_glLoadTransposeMatrixfstatic int lua_glLoadTransposeMatrixf(lua_State *L) { CHECK_ARG_COUNT(L, 1); Array1D<Float> m(L, 1); if (m.size() != 16) { luaL_error(L, "gl.LoadTransposeMatrixf: invalid matrix data"); } glLoadTransposeMatrixf(m); return 0;}
开发者ID:humbletim,项目名称:luagl,代码行数:9,
示例14: lua_glMultTransposeMatrixdstatic int lua_glMultTransposeMatrixd(lua_State *L) { CHECK_ARG_COUNT(L, 1); Array1D<Double> m(L, 1); if (m.size() != 16) { luaL_error(L, "gl.MultTransposeMatrixd: invalid matrix data"); } glMultTransposeMatrixd(m); return 0;}
开发者ID:humbletim,项目名称:luagl,代码行数:9,
示例15: py_glGetShaderSourcestatic PyObject* py_glGetShaderSource(PyObject *, PyObject *args) { CHECK_ARG_COUNT(args, 1); Uint shader(PyTuple_GetItem(args, 0)); GLint len=0; glGetShaderiv(shader, GL_SHADER_SOURCE_LENGTH, &len); //GLchar *src = new GLchar[len+1]; Array1D<Char> src(len+1); glGetShaderSource(shader, len, NULL, src); return PyString_FromString(src); //delete[] src;}
开发者ID:gatgui,项目名称:pygl,代码行数:11,
示例16: py_glGetShaderInfoLogstatic PyObject* py_glGetShaderInfoLog(PyObject *, PyObject *args) { CHECK_ARG_COUNT(args, 1); Uint shader(PyTuple_GetItem(args, 0)); GLint len=0; glGetShaderiv(shader, GL_INFO_LOG_LENGTH, &len); //GLchar *log = new GLchar[len+1]; Array1D<Char> log(len+1); glGetShaderInfoLog(shader, len, NULL, log); return PyString_FromString(log); //delete[] log;}
开发者ID:gatgui,项目名称:pygl,代码行数:11,
示例17: seed_rl_bufferstatic SeedValueseed_rl_buffer(SeedContext ctx, SeedObject function, SeedObject this_object, size_t argument_count, const SeedValue arguments[], SeedValue * exception){ CHECK_ARG_COUNT("readline.buffer", 0); return seed_value_from_string (ctx, rl_line_buffer, exception);}
开发者ID:dannote,项目名称:seed,代码行数:11,
示例18: seed_rl_donestatic SeedValueseed_rl_done(SeedContext ctx, SeedObject function, SeedObject this_object, size_t argument_count, const SeedValue arguments[], SeedValue * exception){ CHECK_ARG_COUNT("readline.done", 0); rl_done = 1; return seed_make_null (ctx);}
开发者ID:dannote,项目名称:seed,代码行数:12,
示例19: py_glGetAttachedShadersstatic PyObject* py_glGetAttachedShaders(PyObject *, PyObject *args) { CHECK_ARG_COUNT(args, 1); Uint prg(PyTuple_GetItem(args, 0)); GLint count=0; glGetProgramiv(prg, GL_ATTACHED_SHADERS, &count); if (count == 0) { return PyList_New(0); } else { Array1D<Uint> shaders(count); glGetAttachedShaders(prg, count, NULL, shaders); return shaders.toPy(); }}
开发者ID:gatgui,项目名称:pygl,代码行数:13,
示例20: seed_mpfr_integer_pSeedValue seed_mpfr_integer_p (SeedContext ctx, SeedObject function, SeedObject this_object, gsize argument_count, const SeedValue args[], SeedException *exception){ mpfr_ptr rop; gboolean ret; CHECK_ARG_COUNT("mpfr.integer", 0); rop = seed_object_get_private(this_object); ret = mpfr_integer_p(rop); return seed_value_from_boolean(ctx, ret, exception);}
开发者ID:iRi-E,项目名称:GNOME-Seed,代码行数:16,
示例21: seed_mpfr_nextaboveSeedValue seed_mpfr_nextabove (SeedContext ctx, SeedObject function, SeedObject this_object, gsize argument_count, const SeedValue args[], SeedException *exception){ mpfr_ptr rop; CHECK_ARG_COUNT("mpfr.nextabove", 0); rop = seed_object_get_private(this_object); mpfr_nextabove(rop); return seed_make_null(ctx);}
开发者ID:iRi-E,项目名称:GNOME-Seed,代码行数:16,
示例22: seed_construct_pipeSeedObject seed_construct_pipe(SeedContext ctx, SeedObject constructor, size_t argument_count, const SeedValue arguments[], SeedException * exception){ SeedObject jsone, jstwo, jsret; int fd1[2], fd2[2]; pipe_priv *priv_one, *priv_two; CHECK_ARG_COUNT("multiprocessing.pipe constructor", 0); if (pipe(fd1) < 0) { perror("Pipe failed. Make me a javascript exception"); return seed_make_null(ctx); } if (pipe(fd2) < 0) { perror("Pipe failed. Make me a javascript exception"); return seed_make_null(ctx); } priv_one = g_new0(pipe_priv, 1); priv_two = g_new0(pipe_priv, 1); priv_one->read = g_io_channel_unix_new(fd1[0]); priv_one->write = g_io_channel_unix_new(fd2[1]); priv_two->read = g_io_channel_unix_new(fd2[0]); priv_two->write = g_io_channel_unix_new(fd1[1]); g_io_channel_set_close_on_unref(priv_one->read, TRUE); g_io_channel_set_close_on_unref(priv_one->write, TRUE); g_io_channel_set_close_on_unref(priv_two->read, TRUE); g_io_channel_set_close_on_unref(priv_two->write, TRUE); jsret = seed_make_object(ctx, 0, 0); jsone = seed_make_object(ctx, pipe_class, priv_one); jstwo = seed_make_object(ctx, pipe_class, priv_two); seed_object_set_property_at_index(ctx, jsret, 0, jsone, exception); seed_object_set_property_at_index(ctx, jsret, 1, jstwo, exception); return jsret;}
开发者ID:dannote,项目名称:seed,代码行数:45,
示例23: seed_pipe_readSeedValue seed_pipe_read(SeedContext ctx, SeedObject function, SeedObject this_object, size_t argument_count, const SeedValue arguments[], SeedException * exception){ SeedValue ret; gchar *read; GET_CHANNEL; CHECK_ARG_COUNT("multiprocessing.pipe.read", 0); g_io_channel_read_line(priv->read, &read, 0, 0, 0); ret = seed_value_from_string(ctx, read, exception); g_free(read); return ret;}
开发者ID:dannote,项目名称:seed,代码行数:18,
示例24: py_glGetActiveUniformstatic PyObject* py_glGetActiveUniform(PyObject *, PyObject *args) { CHECK_ARG_COUNT(args, 2); Uint prg(PyTuple_GetItem(args, 0)); Uint idx(PyTuple_GetItem(args, 1)); GLint len = 0; glGetProgramiv(prg, GL_ACTIVE_UNIFORM_MAX_LENGTH, &len); //GLchar *name = new GLchar[len+1]; Array1D<Char> name(len+1); GLint size; GLenum type; glGetActiveUniform(prg, idx, len, NULL, &size, &type, name); PyObject *rv = PyTuple_New(3); PyTuple_SetItem(rv, 0, PyInt_FromLong(size)); PyTuple_SetItem(rv, 1, PyInt_FromLong(type)); PyTuple_SetItem(rv, 2, PyString_FromString(name)); //delete[] name; return rv;}
开发者ID:gatgui,项目名称:pygl,代码行数:18,
示例25: seed_rl_insertstatic SeedValueseed_rl_insert(SeedContext ctx, SeedObject function, SeedObject this_object, size_t argument_count, const SeedValue arguments[], SeedValue * exception){ gchar *ins; gint ret; CHECK_ARG_COUNT("readline.insert", 1); ins = seed_value_to_string (ctx, arguments[0], exception); ret = rl_insert_text (ins); g_free (ins); return seed_value_from_int (ctx, ret, exception);}
开发者ID:dannote,项目名称:seed,代码行数:19,
示例26: seed_readlinestatic SeedValueseed_readline(SeedContext ctx, SeedObject function, SeedObject this_object, size_t argument_count, const SeedValue arguments[], SeedValue * exception){ SeedValue valstr = 0; gchar *str = NULL; gchar *buf; const gchar *histfname = g_get_home_dir(); gchar *path = g_build_filename(histfname, ".seed_history", NULL); if (!readline_has_initialized) { read_history(path); readline_has_initialized = TRUE; } CHECK_ARG_COUNT("readline.readline", 1); buf = seed_value_to_string(ctx, arguments[0], exception); str = readline(buf); if (str && *str) { add_history(str); valstr = seed_value_from_string(ctx, str, exception); g_free(str); } write_history(path); history_truncate_file(path, 1000); g_free(buf); g_free(path); if (valstr == 0) valstr = seed_make_null(ctx); return valstr;}
开发者ID:dannote,项目名称:seed,代码行数:42,
示例27: seed_gettext_textdomainstatic SeedValueseed_gettext_textdomain (SeedContext ctx, SeedObject function, SeedObject this_object, gsize argument_count, const SeedValue arguments[], SeedException * exception){ gchar * domain_name; SeedValue ret; CHECK_ARG_COUNT("gettext.textdomain", 1); domain_name = seed_value_to_string (ctx, arguments[0], exception); ret = seed_value_from_string (ctx, textdomain(domain_name), exception); g_free(domain_name); return ret;}
开发者ID:iRi-E,项目名称:GNOME-Seed,代码行数:20,
示例28: py_glGetShaderstatic PyObject* py_glGetShader(PyObject *, PyObject *args) { CHECK_ARG_COUNT(args, 2); PyObject *rv = 0; Uint prg(PyTuple_GetItem(args, 0)); Enum pname(PyTuple_GetItem(args, 1)); GLint dim = PyGL::Instance().getParamDim(PyGL::Shaderiv, pname); if (dim > 0) { Array1D<Int> param(dim); glGetShaderiv(prg, pname, param); if (dim == 1) { rv = PyInt_FromLong(param[0]); } else { rv = param.toPy(); } } if (dim == 0) { PyErr_SetString(PyExc_RuntimeError, "gl.GetShader: invalid parameter name"); } return rv;}
开发者ID:gatgui,项目名称:pygl,代码行数:20,
示例29: seed_pipe_writeSeedValue seed_pipe_write(SeedContext ctx, SeedObject function, SeedObject this_object, size_t argument_count, const SeedValue arguments[], SeedException * exception){ gchar *data; gsize written; gchar eol = '/n'; GET_CHANNEL; CHECK_ARG_COUNT("multiprocessing.pipe.write", 1); data = seed_value_to_string(ctx, arguments[0], exception); g_io_channel_write_chars(priv->write, data, -1, &written, 0); g_io_channel_write_chars(priv->write, &eol, 1, 0, 0); g_io_channel_flush(priv->write, 0); return seed_value_from_int(ctx, written, exception);}
开发者ID:dannote,项目名称:seed,代码行数:21,
示例30: seed_readline_bindstatic SeedValueseed_readline_bind(SeedContext ctx, SeedObject function, SeedObject this_object, size_t argument_count, const SeedValue arguments[], SeedValue * exception){ gchar *key; ffi_closure *c; CHECK_ARG_COUNT("readline.bind", 2); key = seed_value_to_string(ctx, arguments[0], exception); c = seed_make_rl_closure((SeedObject) arguments[1]); rl_bind_key(*key, (rl_command_func_t *) c); g_free(key); return seed_make_null(ctx);}
开发者ID:dannote,项目名称:seed,代码行数:21,
注:本文中的CHECK_ARG_COUNT函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ CHECK_ARG_LESS_THAN函数代码示例 C++ CHECK_ARGS函数代码示例 |