ofa 1.0 → 1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/ext/{ofa.c → ofa.cpp} +135 -118
  2. metadata +5 -5
@@ -10,6 +10,30 @@
10
10
 
11
11
  #define SWIGRUBY
12
12
 
13
+
14
+ #ifdef __cplusplus
15
+ /* SwigValueWrapper is described in swig.swg */
16
+ template<typename T> class SwigValueWrapper {
17
+ struct SwigMovePointer {
18
+ T *ptr;
19
+ SwigMovePointer(T *p) : ptr(p) { }
20
+ ~SwigMovePointer() { delete ptr; }
21
+ SwigMovePointer& operator=(SwigMovePointer& rhs) { T* oldptr = ptr; ptr = 0; delete oldptr; ptr = rhs.ptr; rhs.ptr = 0; return *this; }
22
+ } pointer;
23
+ SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
24
+ SwigValueWrapper(const SwigValueWrapper<T>& rhs);
25
+ public:
26
+ SwigValueWrapper() : pointer(0) { }
27
+ SwigValueWrapper& operator=(const T& t) { SwigMovePointer tmp(new T(t)); pointer = tmp; return *this; }
28
+ operator T&() const { return *pointer.ptr; }
29
+ T *operator&() { return pointer.ptr; }
30
+ };
31
+
32
+ template <typename T> T SwigValueInit() {
33
+ return T();
34
+ }
35
+ #endif
36
+
13
37
  /* -----------------------------------------------------------------------------
14
38
  * This section contains generic SWIG labels for method/variable
15
39
  * declarations/attributes, and other compiler dependent labels.
@@ -1791,9 +1815,8 @@ int SWIG_Ruby_arity( VALUE proc, int minimal )
1791
1815
 
1792
1816
  #define SWIGTYPE_p_char swig_types[0]
1793
1817
  #define SWIGTYPE_p_int swig_types[1]
1794
- #define SWIGTYPE_p_unsigned_char swig_types[2]
1795
- static swig_type_info *swig_types[4];
1796
- static swig_module_info swig_module = {swig_types, 3, 0, 0, 0, 0};
1818
+ static swig_type_info *swig_types[3];
1819
+ static swig_module_info swig_module = {swig_types, 2, 0, 0, 0, 0};
1797
1820
  #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name)
1798
1821
  #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name)
1799
1822
 
@@ -1812,28 +1835,14 @@ static VALUE mOfa;
1812
1835
  #define SWIG_VERSION SWIGVERSION
1813
1836
 
1814
1837
 
1815
- #define SWIG_as_voidptr(a) (void *)((const void *)(a))
1816
- #define SWIG_as_voidptrptr(a) ((void)SWIG_as_voidptr(*a),(void**)(a))
1817
-
1818
-
1819
- #include <limits.h>
1820
- #if !defined(SWIG_NO_LLONG_MAX)
1821
- # if !defined(LLONG_MAX) && defined(__GNUC__) && defined (__LONG_LONG_MAX__)
1822
- # define LLONG_MAX __LONG_LONG_MAX__
1823
- # define LLONG_MIN (-LLONG_MAX - 1LL)
1824
- # define ULLONG_MAX (LLONG_MAX * 2ULL + 1ULL)
1825
- # endif
1826
- #endif
1838
+ #define SWIG_as_voidptr(a) const_cast< void * >(static_cast< const void * >(a))
1839
+ #define SWIG_as_voidptrptr(a) ((void)SWIG_as_voidptr(*a),reinterpret_cast< void** >(a))
1827
1840
 
1828
1841
 
1829
- #define SWIG_From_long LONG2NUM
1842
+ #include <stdexcept>
1830
1843
 
1831
1844
 
1832
- SWIGINTERNINLINE VALUE
1833
- SWIG_From_int (int value)
1834
- {
1835
- return SWIG_From_long (value);
1836
- }
1845
+ #include <ofa1/ofa.h>
1837
1846
 
1838
1847
 
1839
1848
  #ifdef __cplusplus
@@ -1864,58 +1873,97 @@ struct timeval rb_time_timeval(VALUE);
1864
1873
  #endif
1865
1874
 
1866
1875
 
1867
- SWIGINTERN VALUE
1868
- SWIG_ruby_failed(void)
1869
- {
1870
- return Qnil;
1871
- }
1876
+ #include <limits.h>
1877
+ #if !defined(SWIG_NO_LLONG_MAX)
1878
+ # if !defined(LLONG_MAX) && defined(__GNUC__) && defined (__LONG_LONG_MAX__)
1879
+ # define LLONG_MAX __LONG_LONG_MAX__
1880
+ # define LLONG_MIN (-LLONG_MAX - 1LL)
1881
+ # define ULLONG_MAX (LLONG_MAX * 2ULL + 1ULL)
1882
+ # endif
1883
+ #endif
1872
1884
 
1873
1885
 
1874
- /*@SWIG:/Users/adriano/Applications/homebrew/Cellar/swig/2.0.0//share/swig/2.0.0/ruby/rubyprimtypes.swg,19,%ruby_aux_method@*/
1875
- SWIGINTERN VALUE SWIG_AUX_NUM2ULONG(VALUE *args)
1876
- {
1877
- VALUE obj = args[0];
1878
- VALUE type = TYPE(obj);
1879
- unsigned long *res = (unsigned long *)(args[1]);
1880
- *res = type == T_FIXNUM ? NUM2ULONG(obj) : rb_big2ulong(obj);
1881
- return obj;
1886
+ #define SWIG_From_long LONG2NUM
1887
+
1888
+
1889
+ SWIGINTERNINLINE VALUE
1890
+ SWIG_From_int (int value)
1891
+ {
1892
+ return SWIG_From_long (value);
1882
1893
  }
1883
- /*@SWIG@*/
1884
1894
 
1885
- SWIGINTERN int
1886
- SWIG_AsVal_unsigned_SS_long (VALUE obj, unsigned long *val)
1895
+
1896
+ const char *wrap_create_fingerprint(const char *data, long size, int sRate, int stereo) {
1897
+ #ifdef WORDS_BIGENDIAN
1898
+ #define ENDIANESS (1)
1899
+ #else
1900
+ #define ENDIANESS (0)
1901
+ #endif
1902
+ return ofa_create_print((unsigned char *)data, ENDIANESS, size, sRate, stereo);
1903
+ }
1904
+
1905
+
1906
+ SWIGINTERN swig_type_info*
1907
+ SWIG_pchar_descriptor(void)
1887
1908
  {
1888
- VALUE type = TYPE(obj);
1889
- if ((type == T_FIXNUM) || (type == T_BIGNUM)) {
1890
- unsigned long v;
1891
- VALUE a[2];
1892
- a[0] = obj;
1893
- a[1] = (VALUE)(&v);
1894
- if (rb_rescue(RUBY_METHOD_FUNC(SWIG_AUX_NUM2ULONG), (VALUE)a, RUBY_METHOD_FUNC(SWIG_ruby_failed), 0) != Qnil) {
1895
- if (val) *val = v;
1896
- return SWIG_OK;
1897
- }
1909
+ static int init = 0;
1910
+ static swig_type_info* info = 0;
1911
+ if (!init) {
1912
+ info = SWIG_TypeQuery("_p_char");
1913
+ init = 1;
1898
1914
  }
1899
- return SWIG_TypeError;
1915
+ return info;
1900
1916
  }
1901
1917
 
1902
1918
 
1903
1919
  SWIGINTERN int
1904
- SWIG_AsVal_unsigned_SS_char (VALUE obj, unsigned char *val)
1920
+ SWIG_AsCharPtrAndSize(VALUE obj, char** cptr, size_t* psize, int *alloc)
1905
1921
  {
1906
- unsigned long v;
1907
- int res = SWIG_AsVal_unsigned_SS_long (obj, &v);
1908
- if (SWIG_IsOK(res)) {
1909
- if ((v > UCHAR_MAX)) {
1910
- return SWIG_OverflowError;
1911
- } else {
1912
- if (val) *val = (unsigned char)(v);
1922
+ if (TYPE(obj) == T_STRING) {
1923
+ #if defined(StringValuePtr)
1924
+ char *cstr = StringValuePtr(obj);
1925
+ #else
1926
+ char *cstr = STR2CSTR(obj);
1927
+ #endif
1928
+ size_t size = RSTRING_LEN(obj) + 1;
1929
+ if (cptr) {
1930
+ if (alloc) {
1931
+ if (*alloc == SWIG_NEWOBJ) {
1932
+ *cptr = reinterpret_cast< char* >(memcpy((new char[size]), cstr, sizeof(char)*(size)));
1933
+ } else {
1934
+ *cptr = cstr;
1935
+ *alloc = SWIG_OLDOBJ;
1936
+ }
1937
+ }
1938
+ }
1939
+ if (psize) *psize = size;
1940
+ return SWIG_OK;
1941
+ } else {
1942
+ swig_type_info* pchar_descriptor = SWIG_pchar_descriptor();
1943
+ if (pchar_descriptor) {
1944
+ void* vptr = 0;
1945
+ if (SWIG_ConvertPtr(obj, &vptr, pchar_descriptor, 0) == SWIG_OK) {
1946
+ if (cptr) *cptr = (char *)vptr;
1947
+ if (psize) *psize = vptr ? (strlen((char*)vptr) + 1) : 0;
1948
+ if (alloc) *alloc = SWIG_OLDOBJ;
1949
+ return SWIG_OK;
1950
+ }
1913
1951
  }
1914
1952
  }
1915
- return res;
1953
+ return SWIG_TypeError;
1916
1954
  }
1917
1955
 
1918
1956
 
1957
+
1958
+
1959
+
1960
+ SWIGINTERN VALUE
1961
+ SWIG_ruby_failed(void)
1962
+ {
1963
+ return Qnil;
1964
+ }
1965
+
1966
+
1919
1967
  /*@SWIG:/Users/adriano/Applications/homebrew/Cellar/swig/2.0.0//share/swig/2.0.0/ruby/rubyprimtypes.swg,19,%ruby_aux_method@*/
1920
1968
  SWIGINTERN VALUE SWIG_AUX_NUM2LONG(VALUE *args)
1921
1969
  {
@@ -1954,26 +2002,13 @@ SWIG_AsVal_int (VALUE obj, int *val)
1954
2002
  if ((v < INT_MIN || v > INT_MAX)) {
1955
2003
  return SWIG_OverflowError;
1956
2004
  } else {
1957
- if (val) *val = (int)(v);
2005
+ if (val) *val = static_cast< int >(v);
1958
2006
  }
1959
2007
  }
1960
2008
  return res;
1961
2009
  }
1962
2010
 
1963
2011
 
1964
- SWIGINTERN swig_type_info*
1965
- SWIG_pchar_descriptor(void)
1966
- {
1967
- static int init = 0;
1968
- static swig_type_info* info = 0;
1969
- if (!init) {
1970
- info = SWIG_TypeQuery("_p_char");
1971
- init = 1;
1972
- }
1973
- return info;
1974
- }
1975
-
1976
-
1977
2012
  SWIGINTERNINLINE VALUE
1978
2013
  SWIG_FromCharPtrAndSize(const char* carray, size_t size)
1979
2014
  {
@@ -1981,9 +2016,9 @@ SWIG_FromCharPtrAndSize(const char* carray, size_t size)
1981
2016
  if (size > LONG_MAX) {
1982
2017
  swig_type_info* pchar_descriptor = SWIG_pchar_descriptor();
1983
2018
  return pchar_descriptor ?
1984
- SWIG_NewPointerObj((char *)(carray), pchar_descriptor, 0) : Qnil;
2019
+ SWIG_NewPointerObj(const_cast< char * >(carray), pchar_descriptor, 0) : Qnil;
1985
2020
  } else {
1986
- return rb_str_new(carray, (long)(size));
2021
+ return rb_str_new(carray, static_cast< long >(size));
1987
2022
  }
1988
2023
  } else {
1989
2024
  return Qnil;
@@ -2044,63 +2079,51 @@ fail:
2044
2079
 
2045
2080
  SWIGINTERN VALUE
2046
2081
  _wrap_create_fingerprint(int argc, VALUE *argv, VALUE self) {
2047
- unsigned char *arg1 = (unsigned char *) 0 ;
2048
- int arg2 ;
2049
- long arg3 ;
2082
+ char *arg1 = (char *) 0 ;
2083
+ long arg2 ;
2084
+ int arg3 ;
2050
2085
  int arg4 ;
2051
- int arg5 ;
2052
- unsigned char temp1 ;
2053
- int res1 = 0 ;
2054
- int val2 ;
2086
+ int res1 ;
2087
+ char *buf1 = 0 ;
2088
+ int alloc1 = 0 ;
2089
+ long val2 ;
2055
2090
  int ecode2 = 0 ;
2056
- long val3 ;
2091
+ int val3 ;
2057
2092
  int ecode3 = 0 ;
2058
2093
  int val4 ;
2059
2094
  int ecode4 = 0 ;
2060
- int val5 ;
2061
- int ecode5 = 0 ;
2062
2095
  char *result = 0 ;
2063
2096
  VALUE vresult = Qnil;
2064
2097
 
2065
- if ((argc < 5) || (argc > 5)) {
2066
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 5)",argc); SWIG_fail;
2098
+ if ((argc < 4) || (argc > 4)) {
2099
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 4)",argc); SWIG_fail;
2067
2100
  }
2068
- if (!(SWIG_IsOK((res1 = SWIG_ConvertPtr(argv[0],SWIG_as_voidptrptr(&arg1),SWIGTYPE_p_unsigned_char,0))))) {
2069
- unsigned char val;
2070
- int ecode = SWIG_AsVal_unsigned_SS_char(argv[0], &val);
2071
- if (!SWIG_IsOK(ecode)) {
2072
- SWIG_exception_fail(SWIG_ArgError(ecode), Ruby_Format_TypeError( "", "unsigned char","ofa_create_print", 1, argv[0] ));
2073
- }
2074
- temp1 = (unsigned char)(val);
2075
- arg1 = &temp1;
2076
- res1 = SWIG_AddTmpMask(ecode);
2101
+ res1 = SWIG_AsCharPtrAndSize(argv[0], &buf1, NULL, &alloc1);
2102
+ if (!SWIG_IsOK(res1)) {
2103
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "char const *","wrap_create_fingerprint", 1, argv[0] ));
2077
2104
  }
2078
- ecode2 = SWIG_AsVal_int(argv[1], &val2);
2105
+ arg1 = reinterpret_cast< char * >(buf1);
2106
+ ecode2 = SWIG_AsVal_long(argv[1], &val2);
2079
2107
  if (!SWIG_IsOK(ecode2)) {
2080
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","ofa_create_print", 2, argv[1] ));
2108
+ SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "long","wrap_create_fingerprint", 2, argv[1] ));
2081
2109
  }
2082
- arg2 = (int)(val2);
2083
- ecode3 = SWIG_AsVal_long(argv[2], &val3);
2110
+ arg2 = static_cast< long >(val2);
2111
+ ecode3 = SWIG_AsVal_int(argv[2], &val3);
2084
2112
  if (!SWIG_IsOK(ecode3)) {
2085
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "long","ofa_create_print", 3, argv[2] ));
2113
+ SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "int","wrap_create_fingerprint", 3, argv[2] ));
2086
2114
  }
2087
- arg3 = (long)(val3);
2115
+ arg3 = static_cast< int >(val3);
2088
2116
  ecode4 = SWIG_AsVal_int(argv[3], &val4);
2089
2117
  if (!SWIG_IsOK(ecode4)) {
2090
- SWIG_exception_fail(SWIG_ArgError(ecode4), Ruby_Format_TypeError( "", "int","ofa_create_print", 4, argv[3] ));
2091
- }
2092
- arg4 = (int)(val4);
2093
- ecode5 = SWIG_AsVal_int(argv[4], &val5);
2094
- if (!SWIG_IsOK(ecode5)) {
2095
- SWIG_exception_fail(SWIG_ArgError(ecode5), Ruby_Format_TypeError( "", "int","ofa_create_print", 5, argv[4] ));
2118
+ SWIG_exception_fail(SWIG_ArgError(ecode4), Ruby_Format_TypeError( "", "int","wrap_create_fingerprint", 4, argv[3] ));
2096
2119
  }
2097
- arg5 = (int)(val5);
2098
- result = (char *)ofa_create_print(arg1,arg2,arg3,arg4,arg5);
2120
+ arg4 = static_cast< int >(val4);
2121
+ result = (char *)wrap_create_fingerprint((char const *)arg1,arg2,arg3,arg4);
2099
2122
  vresult = SWIG_FromCharPtr((const char *)result);
2100
- if (SWIG_IsNewObj(res1)) free((char*)arg1);
2123
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
2101
2124
  return vresult;
2102
2125
  fail:
2103
- if (SWIG_IsNewObj(res1)) free((char*)arg1);
2126
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
2104
2127
  return Qnil;
2105
2128
  }
2106
2129
 
@@ -2110,22 +2133,18 @@ fail:
2110
2133
 
2111
2134
  static swig_type_info _swigt__p_char = {"_p_char", "char *", 0, 0, (void*)0, 0};
2112
2135
  static swig_type_info _swigt__p_int = {"_p_int", "int *", 0, 0, (void*)0, 0};
2113
- static swig_type_info _swigt__p_unsigned_char = {"_p_unsigned_char", "unsigned char *", 0, 0, (void*)0, 0};
2114
2136
 
2115
2137
  static swig_type_info *swig_type_initial[] = {
2116
2138
  &_swigt__p_char,
2117
2139
  &_swigt__p_int,
2118
- &_swigt__p_unsigned_char,
2119
2140
  };
2120
2141
 
2121
2142
  static swig_cast_info _swigc__p_char[] = { {&_swigt__p_char, 0, 0, 0},{0, 0, 0, 0}};
2122
2143
  static swig_cast_info _swigc__p_int[] = { {&_swigt__p_int, 0, 0, 0},{0, 0, 0, 0}};
2123
- static swig_cast_info _swigc__p_unsigned_char[] = { {&_swigt__p_unsigned_char, 0, 0, 0},{0, 0, 0, 0}};
2124
2144
 
2125
2145
  static swig_cast_info *swig_cast_initial[] = {
2126
2146
  _swigc__p_char,
2127
2147
  _swigc__p_int,
2128
- _swigc__p_unsigned_char,
2129
2148
  };
2130
2149
 
2131
2150
 
@@ -2386,9 +2405,7 @@ SWIGEXPORT void Init_ofa(void) {
2386
2405
  }
2387
2406
 
2388
2407
  SWIG_RubyInitializeTrackings();
2389
- rb_define_const(mOfa, "OFA_LITTLE_ENDIAN", SWIG_From_int((int)((0))));
2390
- rb_define_const(mOfa, "OFA_BIG_ENDIAN", SWIG_From_int((int)((1))));
2391
- rb_define_module_function(mOfa, "version", _wrap_version, -1);
2392
- rb_define_module_function(mOfa, "create_fingerprint", _wrap_create_fingerprint, -1);
2408
+ rb_define_module_function(mOfa, "version", VALUEFUNC(_wrap_version), -1);
2409
+ rb_define_module_function(mOfa, "create_fingerprint", VALUEFUNC(_wrap_create_fingerprint), -1);
2393
2410
  }
2394
2411
 
metadata CHANGED
@@ -1,12 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ofa
3
3
  version: !ruby/object:Gem::Version
4
- hash: 15
4
+ hash: 13
5
5
  prerelease: false
6
6
  segments:
7
7
  - 1
8
- - 0
9
- version: "1.0"
8
+ - 1
9
+ version: "1.1"
10
10
  platform: ruby
11
11
  authors:
12
12
  - Adriano Bonat
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-06-22 00:00:00 -03:00
17
+ date: 2010-06-25 00:00:00 -03:00
18
18
  default_executable:
19
19
  dependencies: []
20
20
 
@@ -28,7 +28,7 @@ extra_rdoc_files: []
28
28
 
29
29
  files:
30
30
  - ext/extconf.rb
31
- - ext/ofa.c
31
+ - ext/ofa.cpp
32
32
  has_rdoc: true
33
33
  homepage: http://github.com/tanob/ofa-ruby
34
34
  licenses: []