title: Pass simple numpy array to C via SWIG
body: <p>I want to pass numpy array of known size and type via SWIG to C function</p>
  
  <pre><code># .py
  data = numpy.arange( N , dtype=numpy.int32 )
  external_c_function( data )
  
  # .i
  extern void external_c_function( int32_t* data );
  
  # .c
  void external_c_function( int32_t* data)
  {
      // ...
  }
  </code></pre>
  
  <p>Unfortunately, I will get an error:</p>
  
  <pre><code>TypeError: in method 'external_c_function', argument 1 of type 'int32_t *'
  </code></pre>
  
  <p>What is the easiest way to pass numpy array to SWIG? </p>