taglib-ruby 1.1.2 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. checksums.yaml +4 -4
  2. data/.github/FUNDING.yml +1 -0
  3. data/CHANGELOG.md +22 -0
  4. data/README.md +16 -12
  5. data/docs/taglib/mpeg.rb +1 -9
  6. data/ext/extconf_common.rb +21 -12
  7. data/ext/taglib_aiff/taglib_aiff.i +5 -0
  8. data/ext/taglib_aiff/taglib_aiff_wrap.cxx +327 -111
  9. data/ext/taglib_base/includes.i +14 -14
  10. data/ext/taglib_base/taglib_base.i +37 -4
  11. data/ext/taglib_base/taglib_base_wrap.cxx +414 -422
  12. data/ext/taglib_flac/taglib_flac.i +8 -3
  13. data/ext/taglib_flac/taglib_flac_wrap.cxx +356 -406
  14. data/ext/taglib_flac_picture/taglib_flac_picture.i +4 -0
  15. data/ext/taglib_flac_picture/taglib_flac_picture_wrap.cxx +229 -122
  16. data/ext/taglib_id3v1/taglib_id3v1_wrap.cxx +196 -102
  17. data/ext/taglib_id3v2/taglib_id3v2.i +5 -0
  18. data/ext/taglib_id3v2/taglib_id3v2_wrap.cxx +727 -568
  19. data/ext/taglib_mp4/taglib_mp4.i +22 -18
  20. data/ext/taglib_mp4/taglib_mp4_wrap.cxx +2141 -1493
  21. data/ext/taglib_mpeg/taglib_mpeg.i +6 -0
  22. data/ext/taglib_mpeg/taglib_mpeg_wrap.cxx +546 -379
  23. data/ext/taglib_ogg/taglib_ogg.i +0 -2
  24. data/ext/taglib_ogg/taglib_ogg_wrap.cxx +162 -107
  25. data/ext/taglib_vorbis/taglib_vorbis.i +1 -0
  26. data/ext/taglib_vorbis/taglib_vorbis_wrap.cxx +141 -109
  27. data/ext/taglib_wav/taglib_wav.i +6 -2
  28. data/ext/taglib_wav/taglib_wav_wrap.cxx +290 -147
  29. data/lib/taglib/version.rb +3 -3
  30. data/taglib-ruby.gemspec +1 -0
  31. data/tasks/ext.rake +23 -39
  32. data/tasks/swig.rake +14 -4
  33. data/test/id3v2_write_test.rb +1 -1
  34. data/test/wav_examples_test.rb +1 -1
  35. data/test/wav_file_test.rb +1 -1
  36. data/test/wav_file_write_test.rb +6 -6
  37. metadata +4 -3
@@ -1,45 +1,17 @@
1
1
  /* ----------------------------------------------------------------------------
2
- * This file was automatically generated by SWIG (http://www.swig.org).
3
- * Version 4.0.2
2
+ * This file was automatically generated by SWIG (https://www.swig.org).
3
+ * Version 4.1.1
4
4
  *
5
- * This file is not intended to be easily readable and contains a number of
6
- * coding conventions designed to improve portability and efficiency. Do not make
7
- * changes to this file unless you know what you are doing--modify the SWIG
8
- * interface file instead.
5
+ * Do not make changes to this file unless you know what you are doing - modify
6
+ * the SWIG interface file instead.
9
7
  * ----------------------------------------------------------------------------- */
10
8
 
11
9
  static void free_taglib_riff_aiff_file(void *ptr);
12
10
 
13
11
 
14
12
 
15
- #ifndef SWIGRUBY
13
+ #define SWIG_VERSION 0x040101
16
14
  #define SWIGRUBY
17
- #endif
18
-
19
-
20
-
21
- #ifdef __cplusplus
22
- /* SwigValueWrapper is described in swig.swg */
23
- template<typename T> class SwigValueWrapper {
24
- struct SwigMovePointer {
25
- T *ptr;
26
- SwigMovePointer(T *p) : ptr(p) { }
27
- ~SwigMovePointer() { delete ptr; }
28
- SwigMovePointer& operator=(SwigMovePointer& rhs) { T* oldptr = ptr; ptr = 0; delete oldptr; ptr = rhs.ptr; rhs.ptr = 0; return *this; }
29
- } pointer;
30
- SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
31
- SwigValueWrapper(const SwigValueWrapper<T>& rhs);
32
- public:
33
- SwigValueWrapper() : pointer(0) { }
34
- SwigValueWrapper& operator=(const T& t) { SwigMovePointer tmp(new T(t)); pointer = tmp; return *this; }
35
- operator T&() const { return *pointer.ptr; }
36
- T *operator&() { return pointer.ptr; }
37
- };
38
-
39
- template <typename T> T SwigValueInit() {
40
- return T();
41
- }
42
- #endif
43
15
 
44
16
  /* -----------------------------------------------------------------------------
45
17
  * This section contains generic SWIG labels for method/variable
@@ -335,6 +307,8 @@ template <typename T> T SwigValueInit() {
335
307
  #define SWIG_POINTER_DISOWN 0x1
336
308
  #define SWIG_CAST_NEW_MEMORY 0x2
337
309
  #define SWIG_POINTER_NO_NULL 0x4
310
+ #define SWIG_POINTER_CLEAR 0x8
311
+ #define SWIG_POINTER_RELEASE (SWIG_POINTER_CLEAR | SWIG_POINTER_DISOWN)
338
312
 
339
313
  /* Flags for new pointer objects */
340
314
  #define SWIG_POINTER_OWN 0x1
@@ -406,7 +380,7 @@ template <typename T> T SwigValueInit() {
406
380
  SWIG errors code.
407
381
 
408
382
  Finally, if the SWIG_CASTRANK_MODE is enabled, the result code
409
- allows to return the 'cast rank', for example, if you have this
383
+ allows returning the 'cast rank', for example, if you have this
410
384
 
411
385
  int food(double)
412
386
  int fooi(int);
@@ -420,7 +394,13 @@ template <typename T> T SwigValueInit() {
420
394
  */
421
395
 
422
396
  #define SWIG_OK (0)
397
+ /* Runtime errors are < 0 */
423
398
  #define SWIG_ERROR (-1)
399
+ /* Errors in range -1 to -99 are in swigerrors.swg (errors for all languages including those not using the runtime) */
400
+ /* Errors in range -100 to -199 are language specific errors defined in *errors.swg */
401
+ /* Errors < -200 are generic runtime specific errors */
402
+ #define SWIG_ERROR_RELEASE_NOT_OWNED (-200)
403
+
424
404
  #define SWIG_IsOK(r) (r >= 0)
425
405
  #define SWIG_ArgError(r) ((r != SWIG_ERROR) ? r : SWIG_TypeError)
426
406
 
@@ -435,7 +415,7 @@ template <typename T> T SwigValueInit() {
435
415
  #define SWIG_OLDOBJ (SWIG_OK)
436
416
  #define SWIG_NEWOBJ (SWIG_OK | SWIG_NEWOBJMASK)
437
417
  #define SWIG_TMPOBJ (SWIG_OK | SWIG_TMPOBJMASK)
438
- /* Check, add and del mask methods */
418
+ /* Check, add and del object mask methods */
439
419
  #define SWIG_AddNewMask(r) (SWIG_IsOK(r) ? (r | SWIG_NEWOBJMASK) : r)
440
420
  #define SWIG_DelNewMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_NEWOBJMASK) : r)
441
421
  #define SWIG_IsNewObj(r) (SWIG_IsOK(r) && (r & SWIG_NEWOBJMASK))
@@ -581,7 +561,7 @@ SWIG_TypeCheck(const char *c, swig_type_info *ty) {
581
561
  Identical to SWIG_TypeCheck, except strcmp is replaced with a pointer comparison
582
562
  */
583
563
  SWIGRUNTIME swig_cast_info *
584
- SWIG_TypeCheckStruct(swig_type_info *from, swig_type_info *ty) {
564
+ SWIG_TypeCheckStruct(const swig_type_info *from, swig_type_info *ty) {
585
565
  if (ty) {
586
566
  swig_cast_info *iter = ty->cast;
587
567
  while (iter) {
@@ -641,9 +621,9 @@ SWIG_TypeName(const swig_type_info *ty) {
641
621
  SWIGRUNTIME const char *
642
622
  SWIG_TypePrettyName(const swig_type_info *type) {
643
623
  /* The "str" field contains the equivalent pretty names of the
644
- type, separated by vertical-bar characters. We choose
645
- to print the last name, as it is often (?) the most
646
- specific. */
624
+ type, separated by vertical-bar characters. Choose the last
625
+ name. It should be the most specific; a fully resolved name
626
+ but not necessarily with default template parameters expanded. */
647
627
  if (!type) return NULL;
648
628
  if (type->str != NULL) {
649
629
  const char *last_name = type->str;
@@ -863,7 +843,7 @@ SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
863
843
  }
864
844
  #endif
865
845
 
866
- /* Errors in SWIG */
846
+ /* SWIG Errors applicable to all language modules, values are reserved from -1 to -99 */
867
847
  #define SWIG_UnknownError -1
868
848
  #define SWIG_IOError -2
869
849
  #define SWIG_RuntimeError -3
@@ -879,9 +859,25 @@ SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
879
859
  #define SWIG_NullReferenceError -13
880
860
 
881
861
 
862
+ #if __GNUC__ >= 7
863
+ #pragma GCC diagnostic push
864
+ #if defined(__cplusplus)
865
+ #pragma GCC diagnostic ignored "-Wregister"
866
+ #if __GNUC__ >= 10
867
+ #pragma GCC diagnostic ignored "-Wvolatile"
868
+ #if __GNUC__ >= 11
869
+ #pragma GCC diagnostic ignored "-Wdeprecated-enum-enum-conversion"
870
+ #endif
871
+ #endif
872
+ #endif
873
+ #endif
882
874
 
883
875
  #include <ruby.h>
884
876
 
877
+ #if __GNUC__ >= 7
878
+ #pragma GCC diagnostic pop
879
+ #endif
880
+
885
881
  /* Ruby 1.9.1 has a "memoisation optimisation" when compiling with GCC which
886
882
  * breaks using rb_intern as an lvalue, as SWIG does. We work around this
887
883
  * issue for now by disabling this.
@@ -1661,6 +1657,11 @@ SWIG_Ruby_ConvertPtrAndOwn(VALUE obj, void **ptr, swig_type_info *ty, int flags,
1661
1657
  own->own = 0;
1662
1658
  }
1663
1659
 
1660
+ if (((flags & SWIG_POINTER_RELEASE) == SWIG_POINTER_RELEASE)) {
1661
+ if (!RDATA(obj)->dfree)
1662
+ return SWIG_ERROR_RELEASE_NOT_OWNED;
1663
+ }
1664
+
1664
1665
  /* Check to see if the input object is giving up ownership
1665
1666
  of the underlying C struct or C++ object. If so then we
1666
1667
  need to reset the destructor since the Ruby object no
@@ -1672,7 +1673,7 @@ SWIG_Ruby_ConvertPtrAndOwn(VALUE obj, void **ptr, swig_type_info *ty, int flags,
1672
1673
  swig_class *sklass = (swig_class *) ty->clientdata;
1673
1674
  track = sklass->trackObjects;
1674
1675
  }
1675
-
1676
+
1676
1677
  if (track) {
1677
1678
  /* We are tracking objects for this class. Thus we change the destructor
1678
1679
  * to SWIG_RubyRemoveTracking. This allows us to
@@ -1686,6 +1687,10 @@ SWIG_Ruby_ConvertPtrAndOwn(VALUE obj, void **ptr, swig_type_info *ty, int flags,
1686
1687
  }
1687
1688
  }
1688
1689
 
1690
+ if (flags & SWIG_POINTER_CLEAR) {
1691
+ DATA_PTR(obj) = 0;
1692
+ }
1693
+
1689
1694
  /* Do type-checking if type info was provided */
1690
1695
  if (ty) {
1691
1696
  if (ty->clientdata) {
@@ -1793,6 +1798,7 @@ SWIG_Ruby_SetModule(swig_module_info *pointer)
1793
1798
  {
1794
1799
  /* register a new class */
1795
1800
  VALUE cl = rb_define_class("swig_runtime_data", rb_cObject);
1801
+ rb_undef_alloc_func(cl);
1796
1802
  /* create and store the structure pointer to a global variable */
1797
1803
  swig_runtime_data_type_pointer = Data_Wrap_Struct(cl, 0, 0, pointer);
1798
1804
  rb_define_readonly_variable("$swig_runtime_data_type_pointer" SWIG_RUNTIME_VERSION SWIG_TYPE_TABLE_NAME, &swig_runtime_data_type_pointer);
@@ -1823,7 +1829,7 @@ int SWIG_Ruby_arity( VALUE proc, int minimal )
1823
1829
  {
1824
1830
  if ( rb_respond_to( proc, swig_arity_id ) )
1825
1831
  {
1826
- VALUE num = rb_funcall( proc, swig_arity_id, 0 );
1832
+ VALUE num = rb_funcall2( proc, swig_arity_id, 0, 0 );
1827
1833
  int arity = NUM2INT(num);
1828
1834
  if ( arity < 0 && (arity+1) < -minimal ) return 1;
1829
1835
  if ( arity == minimal ) return 1;
@@ -1841,23 +1847,28 @@ int SWIG_Ruby_arity( VALUE proc, int minimal )
1841
1847
 
1842
1848
  #define SWIG_exception_fail(code, msg) do { SWIG_Error(code, msg); SWIG_fail; } while(0)
1843
1849
 
1844
- #define SWIG_contract_assert(expr, msg) if (!(expr)) { SWIG_Error(SWIG_RuntimeError, msg); SWIG_fail; } else
1850
+ #define SWIG_contract_assert(expr, msg) do { if (!(expr)) { SWIG_Error(SWIG_RuntimeError, msg); SWIG_fail; } } while (0)
1845
1851
 
1846
1852
 
1847
1853
 
1848
1854
  /* -------- TYPES TABLE (BEGIN) -------- */
1849
1855
 
1850
1856
  #define SWIGTYPE_p_TagLib__AudioProperties swig_types[0]
1851
- #define SWIGTYPE_p_TagLib__ID3v2__Tag swig_types[1]
1852
- #define SWIGTYPE_p_TagLib__RIFF__AIFF__File swig_types[2]
1853
- #define SWIGTYPE_p_TagLib__RIFF__AIFF__Properties swig_types[3]
1854
- #define SWIGTYPE_p_char swig_types[4]
1855
- #define SWIGTYPE_p_unsigned_char swig_types[5]
1856
- #define SWIGTYPE_p_unsigned_int swig_types[6]
1857
- #define SWIGTYPE_p_unsigned_long swig_types[7]
1858
- #define SWIGTYPE_p_wchar_t swig_types[8]
1859
- static swig_type_info *swig_types[10];
1860
- static swig_module_info swig_module = {swig_types, 9, 0, 0, 0, 0};
1857
+ #define SWIGTYPE_p_TagLib__File swig_types[1]
1858
+ #define SWIGTYPE_p_TagLib__ID3v2__FrameFactory swig_types[2]
1859
+ #define SWIGTYPE_p_TagLib__ID3v2__Tag swig_types[3]
1860
+ #define SWIGTYPE_p_TagLib__ID3v2__Version swig_types[4]
1861
+ #define SWIGTYPE_p_TagLib__RIFF__AIFF__File swig_types[5]
1862
+ #define SWIGTYPE_p_TagLib__RIFF__AIFF__Properties swig_types[6]
1863
+ #define SWIGTYPE_p_TagLib__RIFF__File swig_types[7]
1864
+ #define SWIGTYPE_p_char swig_types[8]
1865
+ #define SWIGTYPE_p_long_long swig_types[9]
1866
+ #define SWIGTYPE_p_unsigned_char swig_types[10]
1867
+ #define SWIGTYPE_p_unsigned_int swig_types[11]
1868
+ #define SWIGTYPE_p_unsigned_long swig_types[12]
1869
+ #define SWIGTYPE_p_wchar_t swig_types[13]
1870
+ static swig_type_info *swig_types[15];
1871
+ static swig_module_info swig_module = {swig_types, 14, 0, 0, 0, 0};
1861
1872
  #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name)
1862
1873
  #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name)
1863
1874
 
@@ -1868,12 +1879,56 @@ static swig_module_info swig_module = {swig_types, 9, 0, 0, 0, 0};
1868
1879
 
1869
1880
  static VALUE mAIFF;
1870
1881
 
1871
- #define SWIG_RUBY_THREAD_BEGIN_BLOCK
1872
- #define SWIG_RUBY_THREAD_END_BLOCK
1882
+ #ifdef __cplusplus
1883
+ #include <utility>
1884
+ /* SwigValueWrapper is described in swig.swg */
1885
+ template<typename T> class SwigValueWrapper {
1886
+ struct SwigSmartPointer {
1887
+ T *ptr;
1888
+ SwigSmartPointer(T *p) : ptr(p) { }
1889
+ ~SwigSmartPointer() { delete ptr; }
1890
+ SwigSmartPointer& operator=(SwigSmartPointer& rhs) { T* oldptr = ptr; ptr = 0; delete oldptr; ptr = rhs.ptr; rhs.ptr = 0; return *this; }
1891
+ void reset(T *p) { T* oldptr = ptr; ptr = 0; delete oldptr; ptr = p; }
1892
+ } pointer;
1893
+ SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
1894
+ SwigValueWrapper(const SwigValueWrapper<T>& rhs);
1895
+ public:
1896
+ SwigValueWrapper() : pointer(0) { }
1897
+ SwigValueWrapper& operator=(const T& t) { SwigSmartPointer tmp(new T(t)); pointer = tmp; return *this; }
1898
+ #if __cplusplus >=201103L
1899
+ SwigValueWrapper& operator=(T&& t) { SwigSmartPointer tmp(new T(std::move(t))); pointer = tmp; return *this; }
1900
+ operator T&&() const { return std::move(*pointer.ptr); }
1901
+ #else
1902
+ operator T&() const { return *pointer.ptr; }
1903
+ #endif
1904
+ T *operator&() const { return pointer.ptr; }
1905
+ static void reset(SwigValueWrapper& t, T *p) { t.pointer.reset(p); }
1906
+ };
1873
1907
 
1908
+ /*
1909
+ * SwigValueInit() is a generic initialisation solution as the following approach:
1910
+ *
1911
+ * T c_result = T();
1912
+ *
1913
+ * doesn't compile for all types for example:
1914
+ *
1915
+ * unsigned int c_result = unsigned int();
1916
+ */
1917
+ template <typename T> T SwigValueInit() {
1918
+ return T();
1919
+ }
1874
1920
 
1875
- #define SWIGVERSION 0x040002
1876
- #define SWIG_VERSION SWIGVERSION
1921
+ #if __cplusplus >=201103L
1922
+ # define SWIG_STD_MOVE(OBJ) std::move(OBJ)
1923
+ #else
1924
+ # define SWIG_STD_MOVE(OBJ) OBJ
1925
+ #endif
1926
+
1927
+ #endif
1928
+
1929
+
1930
+ #define SWIG_RUBY_THREAD_BEGIN_BLOCK
1931
+ #define SWIG_RUBY_THREAD_END_BLOCK
1877
1932
 
1878
1933
 
1879
1934
  #define SWIG_as_voidptr(a) const_cast< void * >(static_cast< const void * >(a))
@@ -1907,34 +1962,26 @@ static VALUE mAIFF;
1907
1962
  #endif
1908
1963
 
1909
1964
  VALUE taglib_bytevector_to_ruby_string(const TagLib::ByteVector &byteVector) {
1910
- if (byteVector.isNull()) {
1911
- return Qnil;
1912
- } else {
1913
- return rb_str_new(byteVector.data(), byteVector.size());
1914
- }
1965
+ return rb_str_new(byteVector.data(), byteVector.size());
1915
1966
  }
1916
1967
 
1917
1968
  TagLib::ByteVector ruby_string_to_taglib_bytevector(VALUE s) {
1918
1969
  if (NIL_P(s)) {
1919
- return TagLib::ByteVector::null;
1970
+ return TagLib::ByteVector();
1920
1971
  } else {
1921
1972
  return TagLib::ByteVector(RSTRING_PTR(StringValue(s)), RSTRING_LEN(s));
1922
1973
  }
1923
1974
  }
1924
1975
 
1925
1976
  VALUE taglib_string_to_ruby_string(const TagLib::String & string) {
1926
- if (string.isNull()) {
1927
- return Qnil;
1928
- } else {
1929
- VALUE result = rb_str_new2(string.toCString(true));
1930
- ASSOCIATE_UTF8_ENCODING(result);
1931
- return result;
1932
- }
1977
+ VALUE result = rb_str_new2(string.toCString(true));
1978
+ ASSOCIATE_UTF8_ENCODING(result);
1979
+ return result;
1933
1980
  }
1934
1981
 
1935
1982
  TagLib::String ruby_string_to_taglib_string(VALUE s) {
1936
1983
  if (NIL_P(s)) {
1937
- return TagLib::String::null;
1984
+ return TagLib::String();
1938
1985
  } else {
1939
1986
  return TagLib::String(RSTRING_PTR(CONVERT_TO_UTF8(StringValue(s))), TagLib::String::UTF8);
1940
1987
  }
@@ -2023,6 +2070,13 @@ TagLib::FileName ruby_string_to_taglib_filename(VALUE s) {
2023
2070
  #endif
2024
2071
  }
2025
2072
 
2073
+ VALUE taglib_offset_t_to_ruby_int(TagLib::offset_t off) {
2074
+ #ifdef _WIN32
2075
+ return LL2NUM(off);
2076
+ #else
2077
+ return OFFT2NUM(off);
2078
+ #endif
2079
+ }
2026
2080
 
2027
2081
 
2028
2082
  #include <limits.h>
@@ -2042,7 +2096,7 @@ SWIG_ruby_failed(VALUE SWIGUNUSEDPARM(arg1), VALUE SWIGUNUSEDPARM(arg2))
2042
2096
  }
2043
2097
 
2044
2098
 
2045
- /*@SWIG:/usr/local/Cellar/swig/4.0.2/share/swig/4.0.2/ruby/rubyprimtypes.swg,19,%ruby_aux_method@*/
2099
+ /*@SWIG:/swig/ruby/rubyprimtypes.swg,19,%ruby_aux_method@*/
2046
2100
  SWIGINTERN VALUE SWIG_AUX_NUM2LONG(VALUE arg)
2047
2101
  {
2048
2102
  VALUE *args = (VALUE *)arg;
@@ -2276,30 +2330,6 @@ free_TagLib_RIFF_AIFF_Properties(void *self) {
2276
2330
  delete arg1;
2277
2331
  }
2278
2332
 
2279
- SWIGINTERN VALUE
2280
- _wrap_Properties_length_in_seconds(int argc, VALUE *argv, VALUE self) {
2281
- TagLib::RIFF::AIFF::Properties *arg1 = (TagLib::RIFF::AIFF::Properties *) 0 ;
2282
- void *argp1 = 0 ;
2283
- int res1 = 0 ;
2284
- int result;
2285
- VALUE vresult = Qnil;
2286
-
2287
- if ((argc < 0) || (argc > 0)) {
2288
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
2289
- }
2290
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TagLib__RIFF__AIFF__Properties, 0 | 0 );
2291
- if (!SWIG_IsOK(res1)) {
2292
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::RIFF::AIFF::Properties const *","lengthInSeconds", 1, self ));
2293
- }
2294
- arg1 = reinterpret_cast< TagLib::RIFF::AIFF::Properties * >(argp1);
2295
- result = (int)((TagLib::RIFF::AIFF::Properties const *)arg1)->lengthInSeconds();
2296
- vresult = SWIG_From_int(static_cast< int >(result));
2297
- return vresult;
2298
- fail:
2299
- return Qnil;
2300
- }
2301
-
2302
-
2303
2333
  SWIGINTERN VALUE
2304
2334
  _wrap_Properties_length_in_milliseconds(int argc, VALUE *argv, VALUE self) {
2305
2335
  TagLib::RIFF::AIFF::Properties *arg1 = (TagLib::RIFF::AIFF::Properties *) 0 ;
@@ -2524,6 +2554,53 @@ static swig_class SwigClassFile;
2524
2554
 
2525
2555
  SWIGINTERN VALUE
2526
2556
  _wrap_new_File__SWIG_0(int argc, VALUE *argv, VALUE self) {
2557
+ TagLib::FileName arg1 ;
2558
+ bool arg2 ;
2559
+ TagLib::RIFF::AIFF::Properties::ReadStyle arg3 ;
2560
+ TagLib::ID3v2::FrameFactory *arg4 = (TagLib::ID3v2::FrameFactory *) 0 ;
2561
+ bool val2 ;
2562
+ int ecode2 = 0 ;
2563
+ int val3 ;
2564
+ int ecode3 = 0 ;
2565
+ void *argp4 = 0 ;
2566
+ int res4 = 0 ;
2567
+ TagLib::RIFF::AIFF::File *result = 0 ;
2568
+
2569
+ if ((argc < 4) || (argc > 4)) {
2570
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 4)",argc); SWIG_fail;
2571
+ }
2572
+ {
2573
+ arg1 = ruby_string_to_taglib_filename(argv[0]);
2574
+ if ((const char *)(TagLib::FileName)(arg1) == NULL) {
2575
+ SWIG_exception_fail(SWIG_MemoryError, "Failed to allocate memory for file name.");
2576
+ }
2577
+ }
2578
+ ecode2 = SWIG_AsVal_bool(argv[1], &val2);
2579
+ if (!SWIG_IsOK(ecode2)) {
2580
+ SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "bool","File", 2, argv[1] ));
2581
+ }
2582
+ arg2 = static_cast< bool >(val2);
2583
+ ecode3 = SWIG_AsVal_int(argv[2], &val3);
2584
+ if (!SWIG_IsOK(ecode3)) {
2585
+ SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "TagLib::RIFF::AIFF::Properties::ReadStyle","File", 3, argv[2] ));
2586
+ }
2587
+ arg3 = static_cast< TagLib::RIFF::AIFF::Properties::ReadStyle >(val3);
2588
+ res4 = SWIG_ConvertPtr(argv[3], &argp4,SWIGTYPE_p_TagLib__ID3v2__FrameFactory, 0 | 0 );
2589
+ if (!SWIG_IsOK(res4)) {
2590
+ SWIG_exception_fail(SWIG_ArgError(res4), Ruby_Format_TypeError( "", "TagLib::ID3v2::FrameFactory *","File", 4, argv[3] ));
2591
+ }
2592
+ arg4 = reinterpret_cast< TagLib::ID3v2::FrameFactory * >(argp4);
2593
+ result = (TagLib::RIFF::AIFF::File *)new TagLib::RIFF::AIFF::File(arg1,arg2,arg3,arg4);
2594
+ DATA_PTR(self) = result;
2595
+ SWIG_RubyAddTracking(result, self);
2596
+ return self;
2597
+ fail:
2598
+ return Qnil;
2599
+ }
2600
+
2601
+
2602
+ SWIGINTERN VALUE
2603
+ _wrap_new_File__SWIG_1(int argc, VALUE *argv, VALUE self) {
2527
2604
  TagLib::FileName arg1 ;
2528
2605
  bool arg2 ;
2529
2606
  TagLib::RIFF::AIFF::Properties::ReadStyle arg3 ;
@@ -2562,7 +2639,7 @@ fail:
2562
2639
 
2563
2640
 
2564
2641
  SWIGINTERN VALUE
2565
- _wrap_new_File__SWIG_1(int argc, VALUE *argv, VALUE self) {
2642
+ _wrap_new_File__SWIG_2(int argc, VALUE *argv, VALUE self) {
2566
2643
  TagLib::FileName arg1 ;
2567
2644
  bool arg2 ;
2568
2645
  bool val2 ;
@@ -2608,7 +2685,7 @@ _wrap_File_allocate(int argc, VALUE *argv, VALUE self)
2608
2685
 
2609
2686
 
2610
2687
  SWIGINTERN VALUE
2611
- _wrap_new_File__SWIG_2(int argc, VALUE *argv, VALUE self) {
2688
+ _wrap_new_File__SWIG_3(int argc, VALUE *argv, VALUE self) {
2612
2689
  TagLib::FileName arg1 ;
2613
2690
  TagLib::RIFF::AIFF::File *result = 0 ;
2614
2691
 
@@ -2632,24 +2709,24 @@ fail:
2632
2709
 
2633
2710
  SWIGINTERN VALUE _wrap_new_File(int nargs, VALUE *args, VALUE self) {
2634
2711
  int argc;
2635
- VALUE argv[3];
2712
+ VALUE argv[4];
2636
2713
  int ii;
2637
2714
 
2638
2715
  argc = nargs;
2639
- if (argc > 3) SWIG_fail;
2716
+ if (argc > 4) SWIG_fail;
2640
2717
  for (ii = 0; (ii < argc); ++ii) {
2641
2718
  argv[ii] = args[ii];
2642
2719
  }
2643
2720
  if (argc == 1) {
2644
- int _v;
2721
+ int _v = 0;
2645
2722
  int res = SWIG_AsCharPtrAndSize(argv[0], 0, NULL, 0);
2646
2723
  _v = SWIG_CheckState(res);
2647
2724
  if (_v) {
2648
- return _wrap_new_File__SWIG_2(nargs, args, self);
2725
+ return _wrap_new_File__SWIG_3(nargs, args, self);
2649
2726
  }
2650
2727
  }
2651
2728
  if (argc == 2) {
2652
- int _v;
2729
+ int _v = 0;
2653
2730
  int res = SWIG_AsCharPtrAndSize(argv[0], 0, NULL, 0);
2654
2731
  _v = SWIG_CheckState(res);
2655
2732
  if (_v) {
@@ -2658,12 +2735,32 @@ SWIGINTERN VALUE _wrap_new_File(int nargs, VALUE *args, VALUE self) {
2658
2735
  _v = SWIG_CheckState(res);
2659
2736
  }
2660
2737
  if (_v) {
2661
- return _wrap_new_File__SWIG_1(nargs, args, self);
2738
+ return _wrap_new_File__SWIG_2(nargs, args, self);
2662
2739
  }
2663
2740
  }
2664
2741
  }
2665
2742
  if (argc == 3) {
2666
- int _v;
2743
+ int _v = 0;
2744
+ int res = SWIG_AsCharPtrAndSize(argv[0], 0, NULL, 0);
2745
+ _v = SWIG_CheckState(res);
2746
+ if (_v) {
2747
+ {
2748
+ int res = SWIG_AsVal_bool(argv[1], NULL);
2749
+ _v = SWIG_CheckState(res);
2750
+ }
2751
+ if (_v) {
2752
+ {
2753
+ int res = SWIG_AsVal_int(argv[2], NULL);
2754
+ _v = SWIG_CheckState(res);
2755
+ }
2756
+ if (_v) {
2757
+ return _wrap_new_File__SWIG_1(nargs, args, self);
2758
+ }
2759
+ }
2760
+ }
2761
+ }
2762
+ if (argc == 4) {
2763
+ int _v = 0;
2667
2764
  int res = SWIG_AsCharPtrAndSize(argv[0], 0, NULL, 0);
2668
2765
  _v = SWIG_CheckState(res);
2669
2766
  if (_v) {
@@ -2677,14 +2774,20 @@ SWIGINTERN VALUE _wrap_new_File(int nargs, VALUE *args, VALUE self) {
2677
2774
  _v = SWIG_CheckState(res);
2678
2775
  }
2679
2776
  if (_v) {
2680
- return _wrap_new_File__SWIG_0(nargs, args, self);
2777
+ void *vptr = 0;
2778
+ int res = SWIG_ConvertPtr(argv[3], &vptr, SWIGTYPE_p_TagLib__ID3v2__FrameFactory, 0);
2779
+ _v = SWIG_CheckState(res);
2780
+ if (_v) {
2781
+ return _wrap_new_File__SWIG_0(nargs, args, self);
2782
+ }
2681
2783
  }
2682
2784
  }
2683
2785
  }
2684
2786
  }
2685
2787
 
2686
2788
  fail:
2687
- Ruby_Format_OverloadedError( argc, 3, "File.new",
2789
+ Ruby_Format_OverloadedError( argc, 4, "File.new",
2790
+ " File.new(TagLib::FileName file, bool readProperties, TagLib::RIFF::AIFF::Properties::ReadStyle propertiesStyle, TagLib::ID3v2::FrameFactory *frameFactory)\n"
2688
2791
  " File.new(TagLib::FileName file, bool readProperties, TagLib::RIFF::AIFF::Properties::ReadStyle propertiesStyle)\n"
2689
2792
  " File.new(TagLib::FileName file, bool readProperties)\n"
2690
2793
  " File.new(TagLib::FileName file)\n");
@@ -2742,7 +2845,7 @@ fail:
2742
2845
 
2743
2846
 
2744
2847
  SWIGINTERN VALUE
2745
- _wrap_File_save(int argc, VALUE *argv, VALUE self) {
2848
+ _wrap_File_save__SWIG_0(int argc, VALUE *argv, VALUE self) {
2746
2849
  TagLib::RIFF::AIFF::File *arg1 = (TagLib::RIFF::AIFF::File *) 0 ;
2747
2850
  void *argp1 = 0 ;
2748
2851
  int res1 = 0 ;
@@ -2765,6 +2868,88 @@ fail:
2765
2868
  }
2766
2869
 
2767
2870
 
2871
+ SWIGINTERN VALUE
2872
+ _wrap_File_save__SWIG_1(int argc, VALUE *argv, VALUE self) {
2873
+ TagLib::RIFF::AIFF::File *arg1 = (TagLib::RIFF::AIFF::File *) 0 ;
2874
+ TagLib::ID3v2::Version arg2 ;
2875
+ void *argp1 = 0 ;
2876
+ int res1 = 0 ;
2877
+ void *argp2 ;
2878
+ int res2 = 0 ;
2879
+ bool result;
2880
+ VALUE vresult = Qnil;
2881
+
2882
+ if ((argc < 1) || (argc > 1)) {
2883
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
2884
+ }
2885
+ res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TagLib__RIFF__AIFF__File, 0 | 0 );
2886
+ if (!SWIG_IsOK(res1)) {
2887
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::RIFF::AIFF::File *","save", 1, self ));
2888
+ }
2889
+ arg1 = reinterpret_cast< TagLib::RIFF::AIFF::File * >(argp1);
2890
+ {
2891
+ res2 = SWIG_ConvertPtr(argv[0], &argp2, SWIGTYPE_p_TagLib__ID3v2__Version, 0 );
2892
+ if (!SWIG_IsOK(res2)) {
2893
+ SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( "", "TagLib::ID3v2::Version","save", 2, argv[0] ));
2894
+ }
2895
+ if (!argp2) {
2896
+ SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "TagLib::ID3v2::Version","save", 2, argv[0]));
2897
+ } else {
2898
+ arg2 = *(reinterpret_cast< TagLib::ID3v2::Version * >(argp2));
2899
+ }
2900
+ }
2901
+ result = (bool)(arg1)->save(arg2);
2902
+ vresult = SWIG_From_bool(static_cast< bool >(result));
2903
+ return vresult;
2904
+ fail:
2905
+ return Qnil;
2906
+ }
2907
+
2908
+
2909
+ SWIGINTERN VALUE _wrap_File_save(int nargs, VALUE *args, VALUE self) {
2910
+ int argc;
2911
+ VALUE argv[3];
2912
+ int ii;
2913
+
2914
+ argc = nargs + 1;
2915
+ argv[0] = self;
2916
+ if (argc > 3) SWIG_fail;
2917
+ for (ii = 1; (ii < argc); ++ii) {
2918
+ argv[ii] = args[ii-1];
2919
+ }
2920
+ if (argc == 1) {
2921
+ int _v = 0;
2922
+ void *vptr = 0;
2923
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_TagLib__RIFF__AIFF__File, 0);
2924
+ _v = SWIG_CheckState(res);
2925
+ if (_v) {
2926
+ return _wrap_File_save__SWIG_0(nargs, args, self);
2927
+ }
2928
+ }
2929
+ if (argc == 2) {
2930
+ int _v = 0;
2931
+ void *vptr = 0;
2932
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_TagLib__RIFF__AIFF__File, 0);
2933
+ _v = SWIG_CheckState(res);
2934
+ if (_v) {
2935
+ void *vptr = 0;
2936
+ int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_TagLib__ID3v2__Version, SWIG_POINTER_NO_NULL);
2937
+ _v = SWIG_CheckState(res);
2938
+ if (_v) {
2939
+ return _wrap_File_save__SWIG_1(nargs, args, self);
2940
+ }
2941
+ }
2942
+ }
2943
+
2944
+ fail:
2945
+ Ruby_Format_OverloadedError( argc, 3, "File.save",
2946
+ " bool File.save()\n"
2947
+ " bool File.save(TagLib::ID3v2::Version version)\n");
2948
+
2949
+ return Qnil;
2950
+ }
2951
+
2952
+
2768
2953
  SWIGINTERN VALUE
2769
2954
  _wrap_File_id3v2_tagq___(int argc, VALUE *argv, VALUE self) {
2770
2955
  TagLib::RIFF::AIFF::File *arg1 = (TagLib::RIFF::AIFF::File *) 0 ;
@@ -2816,22 +3001,41 @@ fail:
2816
3001
  static void *_p_TagLib__RIFF__AIFF__PropertiesTo_p_TagLib__AudioProperties(void *x, int *SWIGUNUSEDPARM(newmemory)) {
2817
3002
  return (void *)((TagLib::AudioProperties *) ((TagLib::RIFF::AIFF::Properties *) x));
2818
3003
  }
3004
+ static void *_p_TagLib__RIFF__AIFF__FileTo_p_TagLib__File(void *x, int *SWIGUNUSEDPARM(newmemory)) {
3005
+ return (void *)((TagLib::File *) (TagLib::RIFF::File *) ((TagLib::RIFF::AIFF::File *) x));
3006
+ }
3007
+ static void *_p_TagLib__RIFF__FileTo_p_TagLib__File(void *x, int *SWIGUNUSEDPARM(newmemory)) {
3008
+ return (void *)((TagLib::File *) ((TagLib::RIFF::File *) x));
3009
+ }
3010
+ static void *_p_TagLib__RIFF__AIFF__FileTo_p_TagLib__RIFF__File(void *x, int *SWIGUNUSEDPARM(newmemory)) {
3011
+ return (void *)((TagLib::RIFF::File *) ((TagLib::RIFF::AIFF::File *) x));
3012
+ }
2819
3013
  static swig_type_info _swigt__p_TagLib__AudioProperties = {"_p_TagLib__AudioProperties", "TagLib::AudioProperties *", 0, 0, (void*)0, 0};
3014
+ static swig_type_info _swigt__p_TagLib__File = {"_p_TagLib__File", "TagLib::File *", 0, 0, (void*)0, 0};
3015
+ static swig_type_info _swigt__p_TagLib__ID3v2__FrameFactory = {"_p_TagLib__ID3v2__FrameFactory", "TagLib::ID3v2::FrameFactory *", 0, 0, (void*)0, 0};
2820
3016
  static swig_type_info _swigt__p_TagLib__ID3v2__Tag = {"_p_TagLib__ID3v2__Tag", "TagLib::ID3v2::Tag *", 0, 0, (void*)0, 0};
3017
+ static swig_type_info _swigt__p_TagLib__ID3v2__Version = {"_p_TagLib__ID3v2__Version", "TagLib::ID3v2::Version *", 0, 0, (void*)0, 0};
2821
3018
  static swig_type_info _swigt__p_TagLib__RIFF__AIFF__File = {"_p_TagLib__RIFF__AIFF__File", "TagLib::RIFF::AIFF::File *", 0, 0, (void*)0, 0};
2822
3019
  static swig_type_info _swigt__p_TagLib__RIFF__AIFF__Properties = {"_p_TagLib__RIFF__AIFF__Properties", "TagLib::RIFF::AIFF::Properties *", 0, 0, (void*)0, 0};
3020
+ static swig_type_info _swigt__p_TagLib__RIFF__File = {"_p_TagLib__RIFF__File", "TagLib::RIFF::File *", 0, 0, (void*)0, 0};
2823
3021
  static swig_type_info _swigt__p_char = {"_p_char", "char *", 0, 0, (void*)0, 0};
3022
+ static swig_type_info _swigt__p_long_long = {"_p_long_long", "TagLib::offset_t *|long long *", 0, 0, (void*)0, 0};
2824
3023
  static swig_type_info _swigt__p_unsigned_char = {"_p_unsigned_char", "TagLib::uchar *|unsigned char *", 0, 0, (void*)0, 0};
2825
- static swig_type_info _swigt__p_unsigned_int = {"_p_unsigned_int", "unsigned int *|TagLib::uint *", 0, 0, (void*)0, 0};
3024
+ static swig_type_info _swigt__p_unsigned_int = {"_p_unsigned_int", "TagLib::uint *|unsigned int *", 0, 0, (void*)0, 0};
2826
3025
  static swig_type_info _swigt__p_unsigned_long = {"_p_unsigned_long", "TagLib::ulong *|unsigned long *", 0, 0, (void*)0, 0};
2827
3026
  static swig_type_info _swigt__p_wchar_t = {"_p_wchar_t", "TagLib::wchar *|wchar_t *", 0, 0, (void*)0, 0};
2828
3027
 
2829
3028
  static swig_type_info *swig_type_initial[] = {
2830
3029
  &_swigt__p_TagLib__AudioProperties,
3030
+ &_swigt__p_TagLib__File,
3031
+ &_swigt__p_TagLib__ID3v2__FrameFactory,
2831
3032
  &_swigt__p_TagLib__ID3v2__Tag,
3033
+ &_swigt__p_TagLib__ID3v2__Version,
2832
3034
  &_swigt__p_TagLib__RIFF__AIFF__File,
2833
3035
  &_swigt__p_TagLib__RIFF__AIFF__Properties,
3036
+ &_swigt__p_TagLib__RIFF__File,
2834
3037
  &_swigt__p_char,
3038
+ &_swigt__p_long_long,
2835
3039
  &_swigt__p_unsigned_char,
2836
3040
  &_swigt__p_unsigned_int,
2837
3041
  &_swigt__p_unsigned_long,
@@ -2839,10 +3043,15 @@ static swig_type_info *swig_type_initial[] = {
2839
3043
  };
2840
3044
 
2841
3045
  static swig_cast_info _swigc__p_TagLib__AudioProperties[] = { {&_swigt__p_TagLib__AudioProperties, 0, 0, 0}, {&_swigt__p_TagLib__RIFF__AIFF__Properties, _p_TagLib__RIFF__AIFF__PropertiesTo_p_TagLib__AudioProperties, 0, 0},{0, 0, 0, 0}};
3046
+ static swig_cast_info _swigc__p_TagLib__File[] = { {&_swigt__p_TagLib__File, 0, 0, 0}, {&_swigt__p_TagLib__RIFF__AIFF__File, _p_TagLib__RIFF__AIFF__FileTo_p_TagLib__File, 0, 0}, {&_swigt__p_TagLib__RIFF__File, _p_TagLib__RIFF__FileTo_p_TagLib__File, 0, 0},{0, 0, 0, 0}};
3047
+ static swig_cast_info _swigc__p_TagLib__ID3v2__FrameFactory[] = { {&_swigt__p_TagLib__ID3v2__FrameFactory, 0, 0, 0},{0, 0, 0, 0}};
2842
3048
  static swig_cast_info _swigc__p_TagLib__ID3v2__Tag[] = { {&_swigt__p_TagLib__ID3v2__Tag, 0, 0, 0},{0, 0, 0, 0}};
3049
+ static swig_cast_info _swigc__p_TagLib__ID3v2__Version[] = { {&_swigt__p_TagLib__ID3v2__Version, 0, 0, 0},{0, 0, 0, 0}};
2843
3050
  static swig_cast_info _swigc__p_TagLib__RIFF__AIFF__File[] = { {&_swigt__p_TagLib__RIFF__AIFF__File, 0, 0, 0},{0, 0, 0, 0}};
2844
3051
  static swig_cast_info _swigc__p_TagLib__RIFF__AIFF__Properties[] = { {&_swigt__p_TagLib__RIFF__AIFF__Properties, 0, 0, 0},{0, 0, 0, 0}};
3052
+ static swig_cast_info _swigc__p_TagLib__RIFF__File[] = { {&_swigt__p_TagLib__RIFF__File, 0, 0, 0}, {&_swigt__p_TagLib__RIFF__AIFF__File, _p_TagLib__RIFF__AIFF__FileTo_p_TagLib__RIFF__File, 0, 0},{0, 0, 0, 0}};
2845
3053
  static swig_cast_info _swigc__p_char[] = { {&_swigt__p_char, 0, 0, 0},{0, 0, 0, 0}};
3054
+ static swig_cast_info _swigc__p_long_long[] = { {&_swigt__p_long_long, 0, 0, 0},{0, 0, 0, 0}};
2846
3055
  static swig_cast_info _swigc__p_unsigned_char[] = { {&_swigt__p_unsigned_char, 0, 0, 0},{0, 0, 0, 0}};
2847
3056
  static swig_cast_info _swigc__p_unsigned_int[] = { {&_swigt__p_unsigned_int, 0, 0, 0},{0, 0, 0, 0}};
2848
3057
  static swig_cast_info _swigc__p_unsigned_long[] = { {&_swigt__p_unsigned_long, 0, 0, 0},{0, 0, 0, 0}};
@@ -2850,10 +3059,15 @@ static swig_cast_info _swigc__p_wchar_t[] = { {&_swigt__p_wchar_t, 0, 0, 0},{0,
2850
3059
 
2851
3060
  static swig_cast_info *swig_cast_initial[] = {
2852
3061
  _swigc__p_TagLib__AudioProperties,
3062
+ _swigc__p_TagLib__File,
3063
+ _swigc__p_TagLib__ID3v2__FrameFactory,
2853
3064
  _swigc__p_TagLib__ID3v2__Tag,
3065
+ _swigc__p_TagLib__ID3v2__Version,
2854
3066
  _swigc__p_TagLib__RIFF__AIFF__File,
2855
3067
  _swigc__p_TagLib__RIFF__AIFF__Properties,
3068
+ _swigc__p_TagLib__RIFF__File,
2856
3069
  _swigc__p_char,
3070
+ _swigc__p_long_long,
2857
3071
  _swigc__p_unsigned_char,
2858
3072
  _swigc__p_unsigned_int,
2859
3073
  _swigc__p_unsigned_long,
@@ -2915,9 +3129,12 @@ extern "C" {
2915
3129
  #define SWIGRUNTIME_DEBUG
2916
3130
  #endif
2917
3131
 
3132
+ #ifndef SWIG_INIT_CLIENT_DATA_TYPE
3133
+ #define SWIG_INIT_CLIENT_DATA_TYPE void *
3134
+ #endif
2918
3135
 
2919
3136
  SWIGRUNTIME void
2920
- SWIG_InitializeModule(void *clientdata) {
3137
+ SWIG_InitializeModule(SWIG_INIT_CLIENT_DATA_TYPE clientdata) {
2921
3138
  size_t i;
2922
3139
  swig_module_info *module_head, *iter;
2923
3140
  int init;
@@ -3120,7 +3337,6 @@ SWIGEXPORT void Init_taglib_aiff(void) {
3120
3337
  SWIG_TypeClientData(SWIGTYPE_p_TagLib__RIFF__AIFF__Properties, (void *) &SwigClassProperties);
3121
3338
  rb_define_alloc_func(SwigClassProperties.klass, _wrap_Properties_allocate);
3122
3339
  rb_define_method(SwigClassProperties.klass, "initialize", VALUEFUNC(_wrap_new_Properties), -1);
3123
- rb_define_method(SwigClassProperties.klass, "length_in_seconds", VALUEFUNC(_wrap_Properties_length_in_seconds), -1);
3124
3340
  rb_define_method(SwigClassProperties.klass, "length_in_milliseconds", VALUEFUNC(_wrap_Properties_length_in_milliseconds), -1);
3125
3341
  rb_define_method(SwigClassProperties.klass, "bitrate", VALUEFUNC(_wrap_Properties_bitrate), -1);
3126
3342
  rb_define_method(SwigClassProperties.klass, "sample_rate", VALUEFUNC(_wrap_Properties_sample_rate), -1);