Add sampl_t and lsampl_t array_class()es to comedi.i.
This makes it easier (possible?) to setup comedi_insn_struct and comedi_cmd_struct instances. Patch from W. Trevor King.
This commit is contained in:
parent
8800748314
commit
3fe8e6baac
1 changed files with 16 additions and 2 deletions
|
@ -55,8 +55,6 @@ static unsigned int cr_aref(unsigned int a){
|
|||
}
|
||||
%}
|
||||
|
||||
%array_class(unsigned int, chanlist);
|
||||
|
||||
#ifdef SWIGRUBY
|
||||
%typemap(argout) comedi_cmd *INOUT(VALUE info) {
|
||||
$result = output_helper($result, $arg);
|
||||
|
@ -66,3 +64,19 @@ static unsigned int cr_aref(unsigned int a){
|
|||
%include "comedi.h"
|
||||
%include "comedilib.h"
|
||||
|
||||
/* These typedefs work around limitations in SWIG's array_class().
|
||||
* Without them, you get errors like:
|
||||
* >>> import comedi
|
||||
* >>> cmd = comedi.comedi_cmd_struct()
|
||||
* >>> data = comedi.sampl_array(3)
|
||||
* >>> cmd.data = data
|
||||
* Traceback (most recent call last):
|
||||
* ...
|
||||
* TypeError: in method 'comedi_cmd_struct_data_set', argument 2 of type 'sampl_t *'
|
||||
*/
|
||||
typedef unsigned short sampl_array;
|
||||
typedef unsigned int lsampl_array;
|
||||
|
||||
%array_class(unsigned int, chanlist);
|
||||
%array_class(sampl_t, sampl_array);
|
||||
%array_class(lsampl_t, lsampl_array);
|
||||
|
|
Loading…
Add table
Reference in a new issue