Ignore:
Timestamp:
Jul 26, 2013 2:20:15 PM (11 years ago)
Author:
nanang
Message:

JNI project:

  • added typemap for struct member typed array of struct
  • added sample code for registering account
  • fixed 'test' target in makefile for non-Android platform
File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/branches/projects/jni/pjsip-apps/src/jni/jni/my_typemaps.i

    r4570 r4576  
    279279 
    280280%ignore CLASS_NAME::COUNT_NAME; 
    281 %typemap(jni)      TYPE* NAME[ANY] "jlongArray" 
    282 %typemap(jtype)    TYPE* NAME[ANY] "long[]" 
    283 %typemap(jstype)   TYPE* NAME[ANY] "TYPE[]" 
    284 %typemap(javain)   TYPE* NAME[ANY] "TYPE.cArrayUnwrap($javainput)" 
    285 %typemap(javaout)  TYPE* NAME[ANY] {return TYPE.cArrayWrap($jnicall, $owner);} 
     281%typemap(jni)      TYPE* NAME[ANY], TYPE NAME[ANY] "jlongArray" 
     282%typemap(jtype)    TYPE* NAME[ANY], TYPE NAME[ANY] "long[]" 
     283%typemap(jstype)   TYPE* NAME[ANY], TYPE NAME[ANY] "TYPE[]" 
     284%typemap(javain)   TYPE* NAME[ANY], TYPE NAME[ANY] "TYPE.cArrayUnwrap($javainput)" 
     285%typemap(javaout)  TYPE* NAME[ANY], TYPE NAME[ANY] {return TYPE.cArrayWrap($jnicall, $owner);} 
    286286 
    287287%typemap(in)       TYPE* NAME[ANY] (jlong *jarr) %{ 
     
    291291%} 
    292292 
    293 %typemap(freearg)  TYPE* NAME[ANY] %{ if ($1) delete [] $1; %} 
     293%typemap(in)       TYPE NAME[ANY] (jlong *jarr) %{ 
     294  if (!SWIG_JavaArrayInUlong(jenv, &jarr, (unsigned long**)&$1, $input)) 
     295    return $null; 
     296  arg1->COUNT_NAME = jenv->GetArrayLength($input); 
     297%} 
     298 
     299%typemap(freearg)  TYPE* NAME[ANY], TYPE NAME[ANY] %{ if ($1) delete [] $1; %} 
    294300 
    295301%typemap(memberin) TYPE* NAME[ANY] %{ 
     
    297303%} 
    298304 
    299 %typemap(out)      TYPE* NAME[ANY] %{ 
     305%typemap(memberin) TYPE NAME[ANY] %{ 
     306  for (size_t i = 0; i < (size_t)arg1->COUNT_NAME; i++) $1[i] = **(TYPE**)(&$input[i]); 
     307%} 
     308 
     309%typemap(out)      TYPE* NAME[ANY], TYPE NAME[ANY] %{ 
    300310  $result = SWIG_JavaArrayOutUlong(jenv, (unsigned long*)$1, arg1->COUNT_NAME); 
    301311%} 
Note: See TracChangeset for help on using the changeset viewer.