Method: Ctp::CThostFtdcTraderSpi#OnRspExecOrderAction

Defined in:
ext/ctp/ctp.cxx

#OnRspExecOrderAction(*args) ⇒ Object



194010
194011
194012
194013
194014
194015
194016
194017
194018
194019
194020
194021
194022
194023
194024
194025
194026
194027
194028
194029
194030
194031
194032
194033
194034
194035
194036
194037
194038
194039
194040
194041
194042
194043
194044
194045
194046
194047
194048
194049
194050
194051
194052
194053
194054
194055
194056
194057
194058
194059
194060
194061
194062
194063
194064
194065
194066
194067
194068
194069
194070
194071
194072
194073
# File 'ext/ctp/ctp.cxx', line 194010

SWIGINTERN VALUE
_wrap_CThostFtdcTraderSpi_OnRspExecOrderAction(int argc, VALUE *argv, VALUE self) {
  CThostFtdcTraderSpi *arg1 = (CThostFtdcTraderSpi *) 0 ;
  CThostFtdcInputExecOrderActionField *arg2 = (CThostFtdcInputExecOrderActionField *) 0 ;
  CThostFtdcRspInfoField *arg3 = (CThostFtdcRspInfoField *) 0 ;
  int arg4 ;
  bool arg5 ;
  void *argp1 = 0 ;
  int res1 = 0 ;
  void *argp2 = 0 ;
  int res2 = 0 ;
  void *argp3 = 0 ;
  int res3 = 0 ;
  int val4 ;
  int ecode4 = 0 ;
  bool val5 ;
  int ecode5 = 0 ;
  Swig::Director *director = 0;
  bool upcall = false;
  
  if ((argc < 4) || (argc > 4)) {
    rb_raise(rb_eArgError, "wrong # of arguments(%d for 4)",argc); SWIG_fail;
  }
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_CThostFtdcTraderSpi, 0 |  0 );
  if (!SWIG_IsOK(res1)) {
    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "CThostFtdcTraderSpi *","OnRspExecOrderAction", 1, self )); 
  }
  arg1 = reinterpret_cast< CThostFtdcTraderSpi * >(argp1);
  res2 = SWIG_ConvertPtr(argv[0], &argp2,SWIGTYPE_p_CThostFtdcInputExecOrderActionField, 0 |  0 );
  if (!SWIG_IsOK(res2)) {
    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( "", "CThostFtdcInputExecOrderActionField *","OnRspExecOrderAction", 2, argv[0] )); 
  }
  arg2 = reinterpret_cast< CThostFtdcInputExecOrderActionField * >(argp2);
  res3 = SWIG_ConvertPtr(argv[1], &argp3,SWIGTYPE_p_CThostFtdcRspInfoField, 0 |  0 );
  if (!SWIG_IsOK(res3)) {
    SWIG_exception_fail(SWIG_ArgError(res3), Ruby_Format_TypeError( "", "CThostFtdcRspInfoField *","OnRspExecOrderAction", 3, argv[1] )); 
  }
  arg3 = reinterpret_cast< CThostFtdcRspInfoField * >(argp3);
  ecode4 = SWIG_AsVal_int(argv[2], &val4);
  if (!SWIG_IsOK(ecode4)) {
    SWIG_exception_fail(SWIG_ArgError(ecode4), Ruby_Format_TypeError( "", "int","OnRspExecOrderAction", 4, argv[2] ));
  } 
  arg4 = static_cast< int >(val4);
  ecode5 = SWIG_AsVal_bool(argv[3], &val5);
  if (!SWIG_IsOK(ecode5)) {
    SWIG_exception_fail(SWIG_ArgError(ecode5), Ruby_Format_TypeError( "", "bool","OnRspExecOrderAction", 5, argv[3] ));
  } 
  arg5 = static_cast< bool >(val5);
  director = dynamic_cast<Swig::Director *>(arg1);
  upcall = (director && (director->swig_get_self() == self));
  try {
    if (upcall) {
      (arg1)->CThostFtdcTraderSpi::OnRspExecOrderAction(arg2,arg3,arg4,arg5);
    } else {
      (arg1)->OnRspExecOrderAction(arg2,arg3,arg4,arg5);
    }
  } catch (Swig::DirectorException& e) {
    rb_exc_raise(e.getError());
    SWIG_fail;
  }
  return Qnil;
fail:
  return Qnil;
}