Directly on the code
Static Pymethoddef vcam_methodmembers[] =//The list of all member function structures of the class is also terminated with a full null structure {{"Set_fill", (pycfunction) Vcam_setfill, M Eth_varargs, "Set Video Resize method (0:aspect fit, 1:aspect Fill, 2:stretch), used when input frame size differs from VCam output size. "}, {" Mirror ", (pycfunction) Vcam_mirror, Meth_varargs," mirror the output video (0:no Mirror, othe Rs:mirror), Non-persistent. "}, {" Rotate ", (pycfunction) vcam_rotate, Meth_varargs," Rotate the input video degree (0:no rotate, others:rotate), Non-persistent. "}, {" Flip ", (pycfunction) Vcam_flip, Meth_varargs," Vertical Flip the Output Video (0:no Flip, Others:flip), Non-persistent. "}, {" Set_difault_image ", (pycfunction) Vcam_setdefaultim Age, Meth_varargs, "Set a 24bits bitmap file as VCam default idle image, which'll be displayed when nothing is being PLA Yed.\ncall it with a NULL parameter or an empty string would reset it to the default one.\n the image would be resized (aspect FIT) only if it ' s bigger than VCam output size. "}, {" Set_name ", (pycfunction) Vcam_setfriendlyname, Meth_varargs," the device's name is \ "Vir Tual camera\ "By default, and you can use it to set a different name."}, {"Set_license", (pycfunction) vcam_setlicense Code, Meth_varargs, "You can set license code here if you ve purchased VCam SDK. The water mark (TRIAL) is removed with a valid license, and call it with a wrong one would show the watermark again. " }, {"Set_output_format", (pycfunction) Vcam_format, Meth_varargs, "Set display Format (WIDTH,HEIGHT,FPS)."}, { "Send_image", (pycfunction) vcam_sendimg, Meth_varargs, "Display a Image (path) to VCam."}, {"Capture_screen", (Pycfun ction) Vcam_capturescreen, Meth_varargs, "Capture region of the screen and set it as VCam output."}, {"Get_output_format", (pycfunction) Vcam_getoutputformat, Meth_noargs, "Get VCam output Video size (640x480 by default), and frame rate (from default)."}, {null, NULL, NULL, NULL}};
Definition of PYMETHONDDEF structure
struct PYMETHODDEF {const char *ml_name; /* The name of the built-in Function/method */Pycfunction Ml_meth; /* The C function that <isindex></isindex>mplements it */int ml_flags; /* combination of METH_XXX flags, which mostly describe the args expected by the C func */ const char *ml_doc; /* The __doc__ attribute, or NULL */};typedef struct pymethoddef pymethoddef; #define PYCFUNCTION_NEW (ML, self) pycfunction _newex (ML), (self), NULL) Pyapi_func (Pyobject *) Pycfunction_newex (PYMETHODDEF *, Pyobject *, Pyobject *);/* Flag passed to newmethodobject *//* #define Meth_oldargs 0x0000 – Unsupported now */#define Meth_varargs 0x0001#define meth_keywords 0x0002/* Meth_noargs and meth_o must not being combined with the flags above. */#define Meth_noargs 0x0004#define meth_o 0x0008/* Meth_class and meth_static are a little different; These control the construction of MEthods for a class. These cannot is used for functions in modules. */#define METH_CLASS 0x0010#define meth_static 0x0020/* Meth_coexist allows a method to be entered even though a slot has already filled the entry. When defined, the flag allows a separate method, ' __contains__ ' for example, to coexist with a defined slots like Sq_co Ntains. */#define Meth_coexist 0x0040