taglib-ruby 0.7.1 → 1.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 (66) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGES.md +7 -0
  3. data/README.md +25 -10
  4. data/Rakefile +11 -1
  5. data/docs/taglib/aiff.rb +35 -3
  6. data/docs/taglib/base.rb +8 -1
  7. data/docs/taglib/flac.rb +60 -4
  8. data/docs/taglib/id3v1.rb +29 -0
  9. data/docs/taglib/id3v2.rb +1 -1
  10. data/docs/taglib/mp4.rb +124 -13
  11. data/docs/taglib/mpeg.rb +30 -1
  12. data/docs/taglib/ogg.rb +47 -5
  13. data/docs/taglib/vorbis.rb +1 -1
  14. data/docs/taglib/wav.rb +56 -3
  15. data/ext/extconf_common.rb +9 -2
  16. data/ext/taglib_aiff/taglib_aiff.i +16 -0
  17. data/ext/taglib_aiff/taglib_aiff_wrap.cxx +228 -58
  18. data/ext/taglib_base/includes.i +4 -4
  19. data/ext/taglib_base/taglib_base.i +24 -2
  20. data/ext/taglib_base/taglib_base_wrap.cxx +76 -51
  21. data/ext/taglib_flac/taglib_flac.i +14 -18
  22. data/ext/taglib_flac/taglib_flac_wrap.cxx +341 -799
  23. data/ext/taglib_flac_picture/extconf.rb +4 -0
  24. data/ext/taglib_flac_picture/includes.i +15 -0
  25. data/ext/taglib_flac_picture/taglib_flac_picture.i +15 -0
  26. data/ext/taglib_flac_picture/taglib_flac_picture_wrap.cxx +3087 -0
  27. data/ext/taglib_id3v1/taglib_id3v1.i +19 -0
  28. data/ext/taglib_id3v1/taglib_id3v1_wrap.cxx +241 -58
  29. data/ext/taglib_id3v2/taglib_id3v2.i +52 -1
  30. data/ext/taglib_id3v2/taglib_id3v2_wrap.cxx +152 -155
  31. data/ext/taglib_mp4/taglib_mp4.i +100 -19
  32. data/ext/taglib_mp4/taglib_mp4_wrap.cxx +939 -148
  33. data/ext/taglib_mpeg/taglib_mpeg.i +11 -16
  34. data/ext/taglib_mpeg/taglib_mpeg_wrap.cxx +522 -208
  35. data/ext/taglib_ogg/taglib_ogg.i +11 -0
  36. data/ext/taglib_ogg/taglib_ogg_wrap.cxx +328 -57
  37. data/ext/taglib_vorbis/taglib_vorbis.i +8 -0
  38. data/ext/taglib_vorbis/taglib_vorbis_wrap.cxx +53 -22
  39. data/ext/taglib_wav/taglib_wav.i +24 -0
  40. data/ext/taglib_wav/taglib_wav_wrap.cxx +543 -198
  41. data/lib/taglib/mp4.rb +2 -1
  42. data/lib/taglib/version.rb +3 -3
  43. data/lib/taglib/wav.rb +4 -0
  44. data/taglib-ruby.gemspec +15 -9
  45. data/tasks/ext.rake +36 -15
  46. data/tasks/swig.rake +26 -2
  47. data/test/aiff_examples_test.rb +1 -1
  48. data/test/aiff_file_test.rb +12 -3
  49. data/test/data/vorbis-create.cpp +20 -1
  50. data/test/data/vorbis.oga +0 -0
  51. data/test/fileref_properties_test.rb +1 -1
  52. data/test/flac_file_test.rb +45 -30
  53. data/test/id3v1_genres_test.rb +23 -0
  54. data/test/id3v1_tag_test.rb +1 -0
  55. data/test/id3v2_tag_test.rb +6 -6
  56. data/test/id3v2_write_test.rb +10 -13
  57. data/test/mp4_file_test.rb +33 -4
  58. data/test/mp4_file_write_test.rb +5 -5
  59. data/test/mp4_items_test.rb +83 -29
  60. data/test/mpeg_file_test.rb +120 -7
  61. data/test/vorbis_file_test.rb +2 -2
  62. data/test/vorbis_tag_test.rb +61 -7
  63. data/test/wav_examples_test.rb +1 -1
  64. data/test/wav_file_test.rb +53 -41
  65. data/test/wav_file_write_test.rb +25 -0
  66. metadata +19 -9
@@ -10,7 +10,15 @@
10
10
 
11
11
  %freefunc TagLib::Vorbis::File "free_taglib_vorbis_file";
12
12
 
13
+ // Ignore IOStream and all the constructors using it.
14
+ %ignore IOStream;
15
+ %ignore TagLib::Vorbis::File::File(IOStream *, bool, Properties::ReadStyle);
16
+ %ignore TagLib::Vorbis::File::File(IOStream *, bool);
17
+ %ignore TagLib::Vorbis::File::File(IOStream *);
18
+
19
+ %ignore TagLib::Vorbis::Properties::length; // Deprecated.
13
20
  %include <taglib/vorbisproperties.h>
21
+
14
22
  %include <taglib/vorbisfile.h>
15
23
 
16
24
  %begin %{
@@ -1833,17 +1833,18 @@ int SWIG_Ruby_arity( VALUE proc, int minimal )
1833
1833
  #define SWIGTYPE_p_MapT_TagLib__String_TagLib__StringList_t swig_types[0]
1834
1834
  #define SWIGTYPE_p_TagLib__AudioProperties swig_types[1]
1835
1835
  #define SWIGTYPE_p_TagLib__File swig_types[2]
1836
- #define SWIGTYPE_p_TagLib__Ogg__File swig_types[3]
1837
- #define SWIGTYPE_p_TagLib__Ogg__XiphComment swig_types[4]
1838
- #define SWIGTYPE_p_TagLib__Vorbis__File swig_types[5]
1839
- #define SWIGTYPE_p_TagLib__Vorbis__Properties swig_types[6]
1840
- #define SWIGTYPE_p_char swig_types[7]
1841
- #define SWIGTYPE_p_unsigned_char swig_types[8]
1842
- #define SWIGTYPE_p_unsigned_int swig_types[9]
1843
- #define SWIGTYPE_p_unsigned_long swig_types[10]
1844
- #define SWIGTYPE_p_wchar_t swig_types[11]
1845
- static swig_type_info *swig_types[13];
1846
- static swig_module_info swig_module = {swig_types, 12, 0, 0, 0, 0};
1836
+ #define SWIGTYPE_p_TagLib__ListT_TagLib__FLAC__Picture_t swig_types[3]
1837
+ #define SWIGTYPE_p_TagLib__Ogg__File swig_types[4]
1838
+ #define SWIGTYPE_p_TagLib__Ogg__XiphComment swig_types[5]
1839
+ #define SWIGTYPE_p_TagLib__Vorbis__File swig_types[6]
1840
+ #define SWIGTYPE_p_TagLib__Vorbis__Properties swig_types[7]
1841
+ #define SWIGTYPE_p_char swig_types[8]
1842
+ #define SWIGTYPE_p_unsigned_char swig_types[9]
1843
+ #define SWIGTYPE_p_unsigned_int swig_types[10]
1844
+ #define SWIGTYPE_p_unsigned_long swig_types[11]
1845
+ #define SWIGTYPE_p_wchar_t swig_types[12]
1846
+ static swig_type_info *swig_types[14];
1847
+ static swig_module_info swig_module = {swig_types, 13, 0, 0, 0, 0};
1847
1848
  #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name)
1848
1849
  #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name)
1849
1850
 
@@ -1893,7 +1894,7 @@ VALUE taglib_bytevector_to_ruby_string(const TagLib::ByteVector &byteVector) {
1893
1894
  if (byteVector.isNull()) {
1894
1895
  return Qnil;
1895
1896
  } else {
1896
- return rb_tainted_str_new(byteVector.data(), byteVector.size());
1897
+ return rb_str_new(byteVector.data(), byteVector.size());
1897
1898
  }
1898
1899
  }
1899
1900
 
@@ -1909,7 +1910,7 @@ VALUE taglib_string_to_ruby_string(const TagLib::String & string) {
1909
1910
  if (string.isNull()) {
1910
1911
  return Qnil;
1911
1912
  } else {
1912
- VALUE result = rb_tainted_str_new2(string.toCString(true));
1913
+ VALUE result = rb_str_new2(string.toCString(true));
1913
1914
  ASSOCIATE_UTF8_ENCODING(result);
1914
1915
  return result;
1915
1916
  }
@@ -1949,9 +1950,9 @@ VALUE taglib_filename_to_ruby_string(TagLib::FileName filename) {
1949
1950
  VALUE result;
1950
1951
  #ifdef _WIN32
1951
1952
  const char *s = (const char *) filename;
1952
- result = rb_tainted_str_new2(s);
1953
+ result = rb_str_new2(s);
1953
1954
  #else
1954
- result = rb_tainted_str_new2(filename);
1955
+ result = rb_str_new2(filename);
1955
1956
  #endif
1956
1957
  ASSOCIATE_FILESYSTEM_ENCODING(result);
1957
1958
  return result;
@@ -2285,7 +2286,7 @@ free_TagLib_Vorbis_Properties(TagLib::Vorbis::Properties *arg1) {
2285
2286
  }
2286
2287
 
2287
2288
  SWIGINTERN VALUE
2288
- _wrap_Properties_length(int argc, VALUE *argv, VALUE self) {
2289
+ _wrap_Properties_length_in_seconds(int argc, VALUE *argv, VALUE self) {
2289
2290
  TagLib::Vorbis::Properties *arg1 = (TagLib::Vorbis::Properties *) 0 ;
2290
2291
  void *argp1 = 0 ;
2291
2292
  int res1 = 0 ;
@@ -2297,10 +2298,34 @@ _wrap_Properties_length(int argc, VALUE *argv, VALUE self) {
2297
2298
  }
2298
2299
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TagLib__Vorbis__Properties, 0 | 0 );
2299
2300
  if (!SWIG_IsOK(res1)) {
2300
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::Vorbis::Properties const *","length", 1, self ));
2301
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::Vorbis::Properties const *","lengthInSeconds", 1, self ));
2301
2302
  }
2302
2303
  arg1 = reinterpret_cast< TagLib::Vorbis::Properties * >(argp1);
2303
- result = (int)((TagLib::Vorbis::Properties const *)arg1)->length();
2304
+ result = (int)((TagLib::Vorbis::Properties const *)arg1)->lengthInSeconds();
2305
+ vresult = SWIG_From_int(static_cast< int >(result));
2306
+ return vresult;
2307
+ fail:
2308
+ return Qnil;
2309
+ }
2310
+
2311
+
2312
+ SWIGINTERN VALUE
2313
+ _wrap_Properties_length_in_milliseconds(int argc, VALUE *argv, VALUE self) {
2314
+ TagLib::Vorbis::Properties *arg1 = (TagLib::Vorbis::Properties *) 0 ;
2315
+ void *argp1 = 0 ;
2316
+ int res1 = 0 ;
2317
+ int result;
2318
+ VALUE vresult = Qnil;
2319
+
2320
+ if ((argc < 0) || (argc > 0)) {
2321
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
2322
+ }
2323
+ res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TagLib__Vorbis__Properties, 0 | 0 );
2324
+ if (!SWIG_IsOK(res1)) {
2325
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::Vorbis::Properties const *","lengthInMilliseconds", 1, self ));
2326
+ }
2327
+ arg1 = reinterpret_cast< TagLib::Vorbis::Properties * >(argp1);
2328
+ result = (int)((TagLib::Vorbis::Properties const *)arg1)->lengthInMilliseconds();
2304
2329
  vresult = SWIG_From_int(static_cast< int >(result));
2305
2330
  return vresult;
2306
2331
  fail:
@@ -2480,7 +2505,7 @@ static swig_class SwigClassFile;
2480
2505
 
2481
2506
  SWIGINTERN VALUE
2482
2507
  _wrap_new_File__SWIG_0(int argc, VALUE *argv, VALUE self) {
2483
- SwigValueWrapper< TagLib::FileName > arg1 ;
2508
+ TagLib::FileName arg1 ;
2484
2509
  bool arg2 ;
2485
2510
  TagLib::Vorbis::Properties::ReadStyle arg3 ;
2486
2511
  bool val2 ;
@@ -2519,7 +2544,7 @@ fail:
2519
2544
 
2520
2545
  SWIGINTERN VALUE
2521
2546
  _wrap_new_File__SWIG_1(int argc, VALUE *argv, VALUE self) {
2522
- SwigValueWrapper< TagLib::FileName > arg1 ;
2547
+ TagLib::FileName arg1 ;
2523
2548
  bool arg2 ;
2524
2549
  bool val2 ;
2525
2550
  int ecode2 = 0 ;
@@ -2567,7 +2592,7 @@ _wrap_File_allocate(VALUE self) {
2567
2592
 
2568
2593
  SWIGINTERN VALUE
2569
2594
  _wrap_new_File__SWIG_2(int argc, VALUE *argv, VALUE self) {
2570
- SwigValueWrapper< TagLib::FileName > arg1 ;
2595
+ TagLib::FileName arg1 ;
2571
2596
  TagLib::Vorbis::File *result = 0 ;
2572
2597
 
2573
2598
  if ((argc < 1) || (argc > 1)) {
@@ -2762,6 +2787,7 @@ static void *_p_TagLib__Vorbis__FileTo_p_TagLib__File(void *x, int *SWIGUNUSEDPA
2762
2787
  static swig_type_info _swigt__p_MapT_TagLib__String_TagLib__StringList_t = {"_p_MapT_TagLib__String_TagLib__StringList_t", "Map< TagLib::String,TagLib::StringList > *|TagLib::Ogg::FieldListMap *", 0, 0, (void*)0, 0};
2763
2788
  static swig_type_info _swigt__p_TagLib__AudioProperties = {"_p_TagLib__AudioProperties", "TagLib::AudioProperties *|TagLib::Ogg::Vorbis::AudioProperties *", 0, 0, (void*)0, 0};
2764
2789
  static swig_type_info _swigt__p_TagLib__File = {"_p_TagLib__File", "TagLib::File *", 0, 0, (void*)0, 0};
2790
+ static swig_type_info _swigt__p_TagLib__ListT_TagLib__FLAC__Picture_t = {"_p_TagLib__ListT_TagLib__FLAC__Picture_t", "TagLib::List< TagLib::FLAC::Picture > *|TagLib::FLAC::PictureList *", 0, 0, (void*)0, 0};
2765
2791
  static swig_type_info _swigt__p_TagLib__Ogg__File = {"_p_TagLib__Ogg__File", "TagLib::Ogg::File *", 0, 0, (void*)0, 0};
2766
2792
  static swig_type_info _swigt__p_TagLib__Ogg__XiphComment = {"_p_TagLib__Ogg__XiphComment", "TagLib::Ogg::XiphComment *", 0, 0, (void*)0, 0};
2767
2793
  static swig_type_info _swigt__p_TagLib__Vorbis__File = {"_p_TagLib__Vorbis__File", "TagLib::Vorbis::File *|TagLib::Ogg::Vorbis::File *", 0, 0, (void*)0, 0};
@@ -2776,6 +2802,7 @@ static swig_type_info *swig_type_initial[] = {
2776
2802
  &_swigt__p_MapT_TagLib__String_TagLib__StringList_t,
2777
2803
  &_swigt__p_TagLib__AudioProperties,
2778
2804
  &_swigt__p_TagLib__File,
2805
+ &_swigt__p_TagLib__ListT_TagLib__FLAC__Picture_t,
2779
2806
  &_swigt__p_TagLib__Ogg__File,
2780
2807
  &_swigt__p_TagLib__Ogg__XiphComment,
2781
2808
  &_swigt__p_TagLib__Vorbis__File,
@@ -2790,6 +2817,7 @@ static swig_type_info *swig_type_initial[] = {
2790
2817
  static swig_cast_info _swigc__p_MapT_TagLib__String_TagLib__StringList_t[] = { {&_swigt__p_MapT_TagLib__String_TagLib__StringList_t, 0, 0, 0},{0, 0, 0, 0}};
2791
2818
  static swig_cast_info _swigc__p_TagLib__AudioProperties[] = { {&_swigt__p_TagLib__AudioProperties, 0, 0, 0}, {&_swigt__p_TagLib__Vorbis__Properties, _p_TagLib__Vorbis__PropertiesTo_p_TagLib__AudioProperties, 0, 0},{0, 0, 0, 0}};
2792
2819
  static swig_cast_info _swigc__p_TagLib__File[] = { {&_swigt__p_TagLib__Ogg__File, _p_TagLib__Ogg__FileTo_p_TagLib__File, 0, 0}, {&_swigt__p_TagLib__Vorbis__File, _p_TagLib__Vorbis__FileTo_p_TagLib__File, 0, 0}, {&_swigt__p_TagLib__File, 0, 0, 0},{0, 0, 0, 0}};
2820
+ static swig_cast_info _swigc__p_TagLib__ListT_TagLib__FLAC__Picture_t[] = { {&_swigt__p_TagLib__ListT_TagLib__FLAC__Picture_t, 0, 0, 0},{0, 0, 0, 0}};
2793
2821
  static swig_cast_info _swigc__p_TagLib__Ogg__File[] = { {&_swigt__p_TagLib__Ogg__File, 0, 0, 0}, {&_swigt__p_TagLib__Vorbis__File, _p_TagLib__Vorbis__FileTo_p_TagLib__Ogg__File, 0, 0},{0, 0, 0, 0}};
2794
2822
  static swig_cast_info _swigc__p_TagLib__Ogg__XiphComment[] = { {&_swigt__p_TagLib__Ogg__XiphComment, 0, 0, 0},{0, 0, 0, 0}};
2795
2823
  static swig_cast_info _swigc__p_TagLib__Vorbis__File[] = { {&_swigt__p_TagLib__Vorbis__File, 0, 0, 0},{0, 0, 0, 0}};
@@ -2804,6 +2832,7 @@ static swig_cast_info *swig_cast_initial[] = {
2804
2832
  _swigc__p_MapT_TagLib__String_TagLib__StringList_t,
2805
2833
  _swigc__p_TagLib__AudioProperties,
2806
2834
  _swigc__p_TagLib__File,
2835
+ _swigc__p_TagLib__ListT_TagLib__FLAC__Picture_t,
2807
2836
  _swigc__p_TagLib__Ogg__File,
2808
2837
  _swigc__p_TagLib__Ogg__XiphComment,
2809
2838
  _swigc__p_TagLib__Vorbis__File,
@@ -3071,12 +3100,14 @@ SWIGEXPORT void Init_taglib_vorbis(void) {
3071
3100
  SWIG_RubyInitializeTrackings();
3072
3101
  rb_require("taglib_ogg");
3073
3102
  rb_require("taglib_base");
3103
+ rb_require("taglib_flac_picture");
3074
3104
 
3075
3105
  SwigClassProperties.klass = rb_define_class_under(mVorbis, "Properties", ((swig_class *) SWIGTYPE_p_TagLib__AudioProperties->clientdata)->klass);
3076
3106
  SWIG_TypeClientData(SWIGTYPE_p_TagLib__Vorbis__Properties, (void *) &SwigClassProperties);
3077
3107
  rb_define_alloc_func(SwigClassProperties.klass, _wrap_Properties_allocate);
3078
3108
  rb_define_method(SwigClassProperties.klass, "initialize", VALUEFUNC(_wrap_new_Properties), -1);
3079
- rb_define_method(SwigClassProperties.klass, "length", VALUEFUNC(_wrap_Properties_length), -1);
3109
+ rb_define_method(SwigClassProperties.klass, "length_in_seconds", VALUEFUNC(_wrap_Properties_length_in_seconds), -1);
3110
+ rb_define_method(SwigClassProperties.klass, "length_in_milliseconds", VALUEFUNC(_wrap_Properties_length_in_milliseconds), -1);
3080
3111
  rb_define_method(SwigClassProperties.klass, "bitrate", VALUEFUNC(_wrap_Properties_bitrate), -1);
3081
3112
  rb_define_method(SwigClassProperties.klass, "sample_rate", VALUEFUNC(_wrap_Properties_sample_rate), -1);
3082
3113
  rb_define_method(SwigClassProperties.klass, "channels", VALUEFUNC(_wrap_Properties_channels), -1);
@@ -4,11 +4,18 @@
4
4
  #include <taglib/wavfile.h>
5
5
  #include <taglib/wavproperties.h>
6
6
  #include <taglib/id3v2tag.h>
7
+ using namespace TagLib::RIFF;
7
8
  %}
8
9
 
9
10
  %include "../taglib_base/includes.i"
10
11
  %import(module="taglib_base") "../taglib_base/taglib_base.i"
11
12
 
13
+ // Deprecated
14
+ %ignore TagLib::RIFF::WAV::Properties::Properties(const ByteVector&, ReadStyle);
15
+ %ignore TagLib::RIFF::WAV::Properties::Properties(const ByteVector&, unsigned int, ReadStyle);
16
+ %ignore TagLib::RIFF::WAV::Properties::length;
17
+ %ignore TagLib::RIFF::WAV::Properties::sampleWidth;
18
+
12
19
  %include <taglib/wavproperties.h>
13
20
 
14
21
  %freefunc TagLib::RIFF::WAV::File "free_taglib_riff_wav_file";
@@ -19,6 +26,23 @@ namespace TagLib {
19
26
  }
20
27
  }
21
28
 
29
+ // Ignore IOStream and all the constructors using it.
30
+ %ignore IOStream;
31
+ %ignore TagLib::RIFF::WAV::File::File(IOStream *, bool, Properties::ReadStyle);
32
+ %ignore TagLib::RIFF::WAV::File::File(IOStream *, bool);
33
+ %ignore TagLib::RIFF::WAV::File::File(IOStream *);
34
+
35
+ // Ignore the unified property interface.
36
+ %ignore TagLib::RIFF::WAV::File::properties;
37
+ %ignore TagLib::RIFF::WAV::File::setProperties;
38
+ %ignore TagLib::RIFF::WAV::File::removeUnsupportedProperties;
39
+
40
+ %ignore TagLib::RIFF::WAV::File::InfoTag;
41
+
42
+ %rename(id3v2_tag) TagLib::RIFF::WAV::File::ID3v2Tag;
43
+ %rename("id3v2_tag?") TagLib::RIFF::WAV::File::hasID3v2Tag;
44
+ %rename("info_tag?") TagLib::RIFF::WAV::File::hasInfoTag;
45
+
22
46
  %include <taglib/wavfile.h>
23
47
 
24
48
  // Unlink Ruby objects from the deleted C++ objects. Otherwise Ruby code
@@ -1870,6 +1870,7 @@ static VALUE mWAV;
1870
1870
  #include <taglib/wavfile.h>
1871
1871
  #include <taglib/wavproperties.h>
1872
1872
  #include <taglib/id3v2tag.h>
1873
+ using namespace TagLib::RIFF;
1873
1874
 
1874
1875
 
1875
1876
  #include <taglib/tstring.h>
@@ -1891,7 +1892,7 @@ VALUE taglib_bytevector_to_ruby_string(const TagLib::ByteVector &byteVector) {
1891
1892
  if (byteVector.isNull()) {
1892
1893
  return Qnil;
1893
1894
  } else {
1894
- return rb_tainted_str_new(byteVector.data(), byteVector.size());
1895
+ return rb_str_new(byteVector.data(), byteVector.size());
1895
1896
  }
1896
1897
  }
1897
1898
 
@@ -1907,7 +1908,7 @@ VALUE taglib_string_to_ruby_string(const TagLib::String & string) {
1907
1908
  if (string.isNull()) {
1908
1909
  return Qnil;
1909
1910
  } else {
1910
- VALUE result = rb_tainted_str_new2(string.toCString(true));
1911
+ VALUE result = rb_str_new2(string.toCString(true));
1911
1912
  ASSOCIATE_UTF8_ENCODING(result);
1912
1913
  return result;
1913
1914
  }
@@ -1947,9 +1948,9 @@ VALUE taglib_filename_to_ruby_string(TagLib::FileName filename) {
1947
1948
  VALUE result;
1948
1949
  #ifdef _WIN32
1949
1950
  const char *s = (const char *) filename;
1950
- result = rb_tainted_str_new2(s);
1951
+ result = rb_str_new2(s);
1951
1952
  #else
1952
- result = rb_tainted_str_new2(filename);
1953
+ result = rb_str_new2(filename);
1953
1954
  #endif
1954
1955
  ASSOCIATE_FILESYSTEM_ENCODING(result);
1955
1956
  return result;
@@ -2046,6 +2047,50 @@ SWIG_AsVal_int (VALUE obj, int *val)
2046
2047
  }
2047
2048
 
2048
2049
 
2050
+ #define SWIG_From_long LONG2NUM
2051
+
2052
+
2053
+ SWIGINTERNINLINE VALUE
2054
+ SWIG_From_int (int value)
2055
+ {
2056
+ return SWIG_From_long (value);
2057
+ }
2058
+
2059
+
2060
+ SWIGINTERNINLINE VALUE
2061
+ SWIG_From_unsigned_SS_long (unsigned long value)
2062
+ {
2063
+ return ULONG2NUM(value);
2064
+ }
2065
+
2066
+
2067
+ SWIGINTERNINLINE VALUE
2068
+ SWIG_From_unsigned_SS_int (unsigned int value)
2069
+ {
2070
+ return SWIG_From_unsigned_SS_long (value);
2071
+ }
2072
+
2073
+
2074
+ SWIGINTERN int
2075
+ SWIG_AsVal_bool (VALUE obj, bool *val)
2076
+ {
2077
+ if (obj == Qtrue) {
2078
+ if (val) *val = true;
2079
+ return SWIG_OK;
2080
+ } else if (obj == Qfalse) {
2081
+ if (val) *val = false;
2082
+ return SWIG_OK;
2083
+ } else {
2084
+ int res = 0;
2085
+ if (SWIG_AsVal_int (obj, &res) == SWIG_OK) {
2086
+ if (val) *val = res ? true : false;
2087
+ return SWIG_OK;
2088
+ }
2089
+ }
2090
+ return SWIG_TypeError;
2091
+ }
2092
+
2093
+
2049
2094
  SWIGINTERN swig_type_info*
2050
2095
  SWIG_pchar_descriptor(void)
2051
2096
  {
@@ -2096,81 +2141,6 @@ SWIG_AsCharPtrAndSize(VALUE obj, char** cptr, size_t* psize, int *alloc)
2096
2141
 
2097
2142
 
2098
2143
 
2099
- /*@SWIG:/usr/local/share/swig/3.0.7/ruby/rubyprimtypes.swg,19,%ruby_aux_method@*/
2100
- SWIGINTERN VALUE SWIG_AUX_NUM2ULONG(VALUE *args)
2101
- {
2102
- VALUE obj = args[0];
2103
- VALUE type = TYPE(obj);
2104
- unsigned long *res = (unsigned long *)(args[1]);
2105
- *res = type == T_FIXNUM ? NUM2ULONG(obj) : rb_big2ulong(obj);
2106
- return obj;
2107
- }
2108
- /*@SWIG@*/
2109
-
2110
- SWIGINTERN int
2111
- SWIG_AsVal_unsigned_SS_long (VALUE obj, unsigned long *val)
2112
- {
2113
- VALUE type = TYPE(obj);
2114
- if ((type == T_FIXNUM) || (type == T_BIGNUM)) {
2115
- unsigned long v;
2116
- VALUE a[2];
2117
- a[0] = obj;
2118
- a[1] = (VALUE)(&v);
2119
- if (rb_rescue(RUBY_METHOD_FUNC(SWIG_AUX_NUM2ULONG), (VALUE)a, RUBY_METHOD_FUNC(SWIG_ruby_failed), 0) != Qnil) {
2120
- if (val) *val = v;
2121
- return SWIG_OK;
2122
- }
2123
- }
2124
- return SWIG_TypeError;
2125
- }
2126
-
2127
-
2128
- SWIGINTERN int
2129
- SWIG_AsVal_unsigned_SS_int (VALUE obj, unsigned int *val)
2130
- {
2131
- unsigned long v;
2132
- int res = SWIG_AsVal_unsigned_SS_long (obj, &v);
2133
- if (SWIG_IsOK(res)) {
2134
- if ((v > UINT_MAX)) {
2135
- return SWIG_OverflowError;
2136
- } else {
2137
- if (val) *val = static_cast< unsigned int >(v);
2138
- }
2139
- }
2140
- return res;
2141
- }
2142
-
2143
-
2144
- #define SWIG_From_long LONG2NUM
2145
-
2146
-
2147
- SWIGINTERNINLINE VALUE
2148
- SWIG_From_int (int value)
2149
- {
2150
- return SWIG_From_long (value);
2151
- }
2152
-
2153
-
2154
- SWIGINTERN int
2155
- SWIG_AsVal_bool (VALUE obj, bool *val)
2156
- {
2157
- if (obj == Qtrue) {
2158
- if (val) *val = true;
2159
- return SWIG_OK;
2160
- } else if (obj == Qfalse) {
2161
- if (val) *val = false;
2162
- return SWIG_OK;
2163
- } else {
2164
- int res = 0;
2165
- if (SWIG_AsVal_int (obj, &res) == SWIG_OK) {
2166
- if (val) *val = res ? true : false;
2167
- return SWIG_OK;
2168
- }
2169
- }
2170
- return SWIG_TypeError;
2171
- }
2172
-
2173
-
2174
2144
  SWIGINTERNINLINE VALUE
2175
2145
  SWIG_From_bool (bool value)
2176
2146
  {
@@ -2211,36 +2181,6 @@ SWIGINTERN void TagLib_RIFF_WAV_File_close(TagLib::RIFF::WAV::File *self){
2211
2181
 
2212
2182
  static swig_class SwigClassProperties;
2213
2183
 
2214
- SWIGINTERN VALUE
2215
- _wrap_new_Properties__SWIG_0(int argc, VALUE *argv, VALUE self) {
2216
- TagLib::ByteVector *arg1 = 0 ;
2217
- TagLib::AudioProperties::ReadStyle arg2 ;
2218
- TagLib::ByteVector tmp1 ;
2219
- int val2 ;
2220
- int ecode2 = 0 ;
2221
- TagLib::RIFF::WAV::Properties *result = 0 ;
2222
-
2223
- if ((argc < 2) || (argc > 2)) {
2224
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
2225
- }
2226
- {
2227
- tmp1 = ruby_string_to_taglib_bytevector(argv[0]);
2228
- arg1 = &tmp1;
2229
- }
2230
- ecode2 = SWIG_AsVal_int(argv[1], &val2);
2231
- if (!SWIG_IsOK(ecode2)) {
2232
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "TagLib::AudioProperties::ReadStyle","Properties", 2, argv[1] ));
2233
- }
2234
- arg2 = static_cast< TagLib::AudioProperties::ReadStyle >(val2);
2235
- result = (TagLib::RIFF::WAV::Properties *)new TagLib::RIFF::WAV::Properties((TagLib::ByteVector const &)*arg1,arg2);
2236
- DATA_PTR(self) = result;
2237
- SWIG_RubyAddTracking(result, self);
2238
- return self;
2239
- fail:
2240
- return Qnil;
2241
- }
2242
-
2243
-
2244
2184
  #ifdef HAVE_RB_DEFINE_ALLOC_FUNC
2245
2185
  SWIGINTERN VALUE
2246
2186
  _wrap_Properties_allocate(VALUE self) {
@@ -2259,35 +2199,29 @@ _wrap_Properties_allocate(VALUE self) {
2259
2199
 
2260
2200
 
2261
2201
  SWIGINTERN VALUE
2262
- _wrap_new_Properties__SWIG_1(int argc, VALUE *argv, VALUE self) {
2263
- TagLib::ByteVector *arg1 = 0 ;
2264
- TagLib::uint arg2 ;
2265
- TagLib::AudioProperties::ReadStyle arg3 ;
2266
- TagLib::ByteVector tmp1 ;
2267
- unsigned int val2 ;
2202
+ _wrap_new_Properties(int argc, VALUE *argv, VALUE self) {
2203
+ TagLib::RIFF::WAV::File *arg1 = (TagLib::RIFF::WAV::File *) 0 ;
2204
+ TagLib::AudioProperties::ReadStyle arg2 ;
2205
+ void *argp1 = 0 ;
2206
+ int res1 = 0 ;
2207
+ int val2 ;
2268
2208
  int ecode2 = 0 ;
2269
- int val3 ;
2270
- int ecode3 = 0 ;
2271
2209
  TagLib::RIFF::WAV::Properties *result = 0 ;
2272
2210
 
2273
- if ((argc < 3) || (argc > 3)) {
2274
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 3)",argc); SWIG_fail;
2211
+ if ((argc < 2) || (argc > 2)) {
2212
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
2275
2213
  }
2276
- {
2277
- tmp1 = ruby_string_to_taglib_bytevector(argv[0]);
2278
- arg1 = &tmp1;
2214
+ res1 = SWIG_ConvertPtr(argv[0], &argp1,SWIGTYPE_p_TagLib__RIFF__WAV__File, 0 | 0 );
2215
+ if (!SWIG_IsOK(res1)) {
2216
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::File *","Properties", 1, argv[0] ));
2279
2217
  }
2280
- ecode2 = SWIG_AsVal_unsigned_SS_int(argv[1], &val2);
2218
+ arg1 = reinterpret_cast< TagLib::RIFF::WAV::File * >(argp1);
2219
+ ecode2 = SWIG_AsVal_int(argv[1], &val2);
2281
2220
  if (!SWIG_IsOK(ecode2)) {
2282
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "TagLib::uint","Properties", 2, argv[1] ));
2283
- }
2284
- arg2 = static_cast< TagLib::uint >(val2);
2285
- ecode3 = SWIG_AsVal_int(argv[2], &val3);
2286
- if (!SWIG_IsOK(ecode3)) {
2287
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "TagLib::AudioProperties::ReadStyle","Properties", 3, argv[2] ));
2221
+ SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "TagLib::AudioProperties::ReadStyle","Properties", 2, argv[1] ));
2288
2222
  }
2289
- arg3 = static_cast< TagLib::AudioProperties::ReadStyle >(val3);
2290
- result = (TagLib::RIFF::WAV::Properties *)new TagLib::RIFF::WAV::Properties((TagLib::ByteVector const &)*arg1,arg2,arg3);
2223
+ arg2 = static_cast< TagLib::AudioProperties::ReadStyle >(val2);
2224
+ result = (TagLib::RIFF::WAV::Properties *)new TagLib::RIFF::WAV::Properties(arg1,arg2);
2291
2225
  DATA_PTR(self) = result;
2292
2226
  SWIG_RubyAddTracking(result, self);
2293
2227
  return self;
@@ -2296,68 +2230,38 @@ fail:
2296
2230
  }
2297
2231
 
2298
2232
 
2299
- SWIGINTERN VALUE _wrap_new_Properties(int nargs, VALUE *args, VALUE self) {
2300
- int argc;
2301
- VALUE argv[3];
2302
- int ii;
2233
+ SWIGINTERN void
2234
+ free_TagLib_RIFF_WAV_Properties(TagLib::RIFF::WAV::Properties *arg1) {
2235
+ SWIG_RubyRemoveTracking(arg1);
2236
+ delete arg1;
2237
+ }
2238
+
2239
+ SWIGINTERN VALUE
2240
+ _wrap_Properties_length_in_seconds(int argc, VALUE *argv, VALUE self) {
2241
+ TagLib::RIFF::WAV::Properties *arg1 = (TagLib::RIFF::WAV::Properties *) 0 ;
2242
+ void *argp1 = 0 ;
2243
+ int res1 = 0 ;
2244
+ int result;
2245
+ VALUE vresult = Qnil;
2303
2246
 
2304
- argc = nargs;
2305
- if (argc > 3) SWIG_fail;
2306
- for (ii = 0; (ii < argc); ++ii) {
2307
- argv[ii] = args[ii];
2308
- }
2309
- if (argc == 2) {
2310
- int _v;
2311
- int res = SWIG_AsCharPtrAndSize(argv[0], 0, NULL, 0);
2312
- _v = SWIG_CheckState(res);
2313
- if (_v) {
2314
- {
2315
- int res = SWIG_AsVal_int(argv[1], NULL);
2316
- _v = SWIG_CheckState(res);
2317
- }
2318
- if (_v) {
2319
- return _wrap_new_Properties__SWIG_0(nargs, args, self);
2320
- }
2321
- }
2247
+ if ((argc < 0) || (argc > 0)) {
2248
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
2322
2249
  }
2323
- if (argc == 3) {
2324
- int _v;
2325
- int res = SWIG_AsCharPtrAndSize(argv[0], 0, NULL, 0);
2326
- _v = SWIG_CheckState(res);
2327
- if (_v) {
2328
- {
2329
- int res = SWIG_AsVal_unsigned_SS_int(argv[1], NULL);
2330
- _v = SWIG_CheckState(res);
2331
- }
2332
- if (_v) {
2333
- {
2334
- int res = SWIG_AsVal_int(argv[2], NULL);
2335
- _v = SWIG_CheckState(res);
2336
- }
2337
- if (_v) {
2338
- return _wrap_new_Properties__SWIG_1(nargs, args, self);
2339
- }
2340
- }
2341
- }
2250
+ res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TagLib__RIFF__WAV__Properties, 0 | 0 );
2251
+ if (!SWIG_IsOK(res1)) {
2252
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::Properties const *","lengthInSeconds", 1, self ));
2342
2253
  }
2343
-
2254
+ arg1 = reinterpret_cast< TagLib::RIFF::WAV::Properties * >(argp1);
2255
+ result = (int)((TagLib::RIFF::WAV::Properties const *)arg1)->lengthInSeconds();
2256
+ vresult = SWIG_From_int(static_cast< int >(result));
2257
+ return vresult;
2344
2258
  fail:
2345
- Ruby_Format_OverloadedError( argc, 3, "Properties.new",
2346
- " Properties.new(TagLib::ByteVector const &data, TagLib::AudioProperties::ReadStyle style)\n"
2347
- " Properties.new(TagLib::ByteVector const &data, TagLib::uint streamLength, TagLib::AudioProperties::ReadStyle style)\n");
2348
-
2349
2259
  return Qnil;
2350
2260
  }
2351
2261
 
2352
2262
 
2353
- SWIGINTERN void
2354
- free_TagLib_RIFF_WAV_Properties(TagLib::RIFF::WAV::Properties *arg1) {
2355
- SWIG_RubyRemoveTracking(arg1);
2356
- delete arg1;
2357
- }
2358
-
2359
2263
  SWIGINTERN VALUE
2360
- _wrap_Properties_length(int argc, VALUE *argv, VALUE self) {
2264
+ _wrap_Properties_length_in_milliseconds(int argc, VALUE *argv, VALUE self) {
2361
2265
  TagLib::RIFF::WAV::Properties *arg1 = (TagLib::RIFF::WAV::Properties *) 0 ;
2362
2266
  void *argp1 = 0 ;
2363
2267
  int res1 = 0 ;
@@ -2369,10 +2273,10 @@ _wrap_Properties_length(int argc, VALUE *argv, VALUE self) {
2369
2273
  }
2370
2274
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TagLib__RIFF__WAV__Properties, 0 | 0 );
2371
2275
  if (!SWIG_IsOK(res1)) {
2372
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::Properties const *","length", 1, self ));
2276
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::Properties const *","lengthInMilliseconds", 1, self ));
2373
2277
  }
2374
2278
  arg1 = reinterpret_cast< TagLib::RIFF::WAV::Properties * >(argp1);
2375
- result = (int)((TagLib::RIFF::WAV::Properties const *)arg1)->length();
2279
+ result = (int)((TagLib::RIFF::WAV::Properties const *)arg1)->lengthInMilliseconds();
2376
2280
  vresult = SWIG_From_int(static_cast< int >(result));
2377
2281
  return vresult;
2378
2282
  fail:
@@ -2453,7 +2357,55 @@ fail:
2453
2357
 
2454
2358
 
2455
2359
  SWIGINTERN VALUE
2456
- _wrap_Properties_sample_width(int argc, VALUE *argv, VALUE self) {
2360
+ _wrap_Properties_bits_per_sample(int argc, VALUE *argv, VALUE self) {
2361
+ TagLib::RIFF::WAV::Properties *arg1 = (TagLib::RIFF::WAV::Properties *) 0 ;
2362
+ void *argp1 = 0 ;
2363
+ int res1 = 0 ;
2364
+ int result;
2365
+ VALUE vresult = Qnil;
2366
+
2367
+ if ((argc < 0) || (argc > 0)) {
2368
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
2369
+ }
2370
+ res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TagLib__RIFF__WAV__Properties, 0 | 0 );
2371
+ if (!SWIG_IsOK(res1)) {
2372
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::Properties const *","bitsPerSample", 1, self ));
2373
+ }
2374
+ arg1 = reinterpret_cast< TagLib::RIFF::WAV::Properties * >(argp1);
2375
+ result = (int)((TagLib::RIFF::WAV::Properties const *)arg1)->bitsPerSample();
2376
+ vresult = SWIG_From_int(static_cast< int >(result));
2377
+ return vresult;
2378
+ fail:
2379
+ return Qnil;
2380
+ }
2381
+
2382
+
2383
+ SWIGINTERN VALUE
2384
+ _wrap_Properties_sample_frames(int argc, VALUE *argv, VALUE self) {
2385
+ TagLib::RIFF::WAV::Properties *arg1 = (TagLib::RIFF::WAV::Properties *) 0 ;
2386
+ void *argp1 = 0 ;
2387
+ int res1 = 0 ;
2388
+ unsigned int result;
2389
+ VALUE vresult = Qnil;
2390
+
2391
+ if ((argc < 0) || (argc > 0)) {
2392
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
2393
+ }
2394
+ res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TagLib__RIFF__WAV__Properties, 0 | 0 );
2395
+ if (!SWIG_IsOK(res1)) {
2396
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::Properties const *","sampleFrames", 1, self ));
2397
+ }
2398
+ arg1 = reinterpret_cast< TagLib::RIFF::WAV::Properties * >(argp1);
2399
+ result = (unsigned int)((TagLib::RIFF::WAV::Properties const *)arg1)->sampleFrames();
2400
+ vresult = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
2401
+ return vresult;
2402
+ fail:
2403
+ return Qnil;
2404
+ }
2405
+
2406
+
2407
+ SWIGINTERN VALUE
2408
+ _wrap_Properties_format(int argc, VALUE *argv, VALUE self) {
2457
2409
  TagLib::RIFF::WAV::Properties *arg1 = (TagLib::RIFF::WAV::Properties *) 0 ;
2458
2410
  void *argp1 = 0 ;
2459
2411
  int res1 = 0 ;
@@ -2465,10 +2417,10 @@ _wrap_Properties_sample_width(int argc, VALUE *argv, VALUE self) {
2465
2417
  }
2466
2418
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TagLib__RIFF__WAV__Properties, 0 | 0 );
2467
2419
  if (!SWIG_IsOK(res1)) {
2468
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::Properties const *","sampleWidth", 1, self ));
2420
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::Properties const *","format", 1, self ));
2469
2421
  }
2470
2422
  arg1 = reinterpret_cast< TagLib::RIFF::WAV::Properties * >(argp1);
2471
- result = (int)((TagLib::RIFF::WAV::Properties const *)arg1)->sampleWidth();
2423
+ result = (int)((TagLib::RIFF::WAV::Properties const *)arg1)->format();
2472
2424
  vresult = SWIG_From_int(static_cast< int >(result));
2473
2425
  return vresult;
2474
2426
  fail:
@@ -2480,7 +2432,7 @@ static swig_class SwigClassFile;
2480
2432
 
2481
2433
  SWIGINTERN VALUE
2482
2434
  _wrap_new_File__SWIG_0(int argc, VALUE *argv, VALUE self) {
2483
- SwigValueWrapper< TagLib::FileName > arg1 ;
2435
+ TagLib::FileName arg1 ;
2484
2436
  bool arg2 ;
2485
2437
  TagLib::RIFF::WAV::Properties::ReadStyle arg3 ;
2486
2438
  bool val2 ;
@@ -2519,7 +2471,7 @@ fail:
2519
2471
 
2520
2472
  SWIGINTERN VALUE
2521
2473
  _wrap_new_File__SWIG_1(int argc, VALUE *argv, VALUE self) {
2522
- SwigValueWrapper< TagLib::FileName > arg1 ;
2474
+ TagLib::FileName arg1 ;
2523
2475
  bool arg2 ;
2524
2476
  bool val2 ;
2525
2477
  int ecode2 = 0 ;
@@ -2567,7 +2519,7 @@ _wrap_File_allocate(VALUE self) {
2567
2519
 
2568
2520
  SWIGINTERN VALUE
2569
2521
  _wrap_new_File__SWIG_2(int argc, VALUE *argv, VALUE self) {
2570
- SwigValueWrapper< TagLib::FileName > arg1 ;
2522
+ TagLib::FileName arg1 ;
2571
2523
  TagLib::RIFF::WAV::File *result = 0 ;
2572
2524
 
2573
2525
  if ((argc < 1) || (argc > 1)) {
@@ -2676,11 +2628,11 @@ fail:
2676
2628
 
2677
2629
 
2678
2630
  SWIGINTERN VALUE
2679
- _wrap_File_audio_properties(int argc, VALUE *argv, VALUE self) {
2631
+ _wrap_File_id3v2_tag(int argc, VALUE *argv, VALUE self) {
2680
2632
  TagLib::RIFF::WAV::File *arg1 = (TagLib::RIFF::WAV::File *) 0 ;
2681
2633
  void *argp1 = 0 ;
2682
2634
  int res1 = 0 ;
2683
- TagLib::RIFF::WAV::Properties *result = 0 ;
2635
+ TagLib::ID3v2::Tag *result = 0 ;
2684
2636
  VALUE vresult = Qnil;
2685
2637
 
2686
2638
  if ((argc < 0) || (argc > 0)) {
@@ -2688,7 +2640,126 @@ _wrap_File_audio_properties(int argc, VALUE *argv, VALUE self) {
2688
2640
  }
2689
2641
  res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TagLib__RIFF__WAV__File, 0 | 0 );
2690
2642
  if (!SWIG_IsOK(res1)) {
2691
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::File const *","audioProperties", 1, self ));
2643
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::File const *","ID3v2Tag", 1, self ));
2644
+ }
2645
+ arg1 = reinterpret_cast< TagLib::RIFF::WAV::File * >(argp1);
2646
+ result = (TagLib::ID3v2::Tag *)((TagLib::RIFF::WAV::File const *)arg1)->ID3v2Tag();
2647
+ vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_TagLib__ID3v2__Tag, 0 | 0 );
2648
+ return vresult;
2649
+ fail:
2650
+ return Qnil;
2651
+ }
2652
+
2653
+
2654
+ SWIGINTERN VALUE
2655
+ _wrap_File_strip__SWIG_0(int argc, VALUE *argv, VALUE self) {
2656
+ TagLib::RIFF::WAV::File *arg1 = (TagLib::RIFF::WAV::File *) 0 ;
2657
+ TagLib::RIFF::WAV::File::TagTypes arg2 ;
2658
+ void *argp1 = 0 ;
2659
+ int res1 = 0 ;
2660
+ int val2 ;
2661
+ int ecode2 = 0 ;
2662
+
2663
+ if ((argc < 1) || (argc > 1)) {
2664
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
2665
+ }
2666
+ res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TagLib__RIFF__WAV__File, 0 | 0 );
2667
+ if (!SWIG_IsOK(res1)) {
2668
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::File *","strip", 1, self ));
2669
+ }
2670
+ arg1 = reinterpret_cast< TagLib::RIFF::WAV::File * >(argp1);
2671
+ ecode2 = SWIG_AsVal_int(argv[0], &val2);
2672
+ if (!SWIG_IsOK(ecode2)) {
2673
+ SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::File::TagTypes","strip", 2, argv[0] ));
2674
+ }
2675
+ arg2 = static_cast< TagLib::RIFF::WAV::File::TagTypes >(val2);
2676
+ (arg1)->strip(arg2);
2677
+ return Qnil;
2678
+ fail:
2679
+ return Qnil;
2680
+ }
2681
+
2682
+
2683
+ SWIGINTERN VALUE
2684
+ _wrap_File_strip__SWIG_1(int argc, VALUE *argv, VALUE self) {
2685
+ TagLib::RIFF::WAV::File *arg1 = (TagLib::RIFF::WAV::File *) 0 ;
2686
+ void *argp1 = 0 ;
2687
+ int res1 = 0 ;
2688
+
2689
+ if ((argc < 0) || (argc > 0)) {
2690
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
2691
+ }
2692
+ res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TagLib__RIFF__WAV__File, 0 | 0 );
2693
+ if (!SWIG_IsOK(res1)) {
2694
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::File *","strip", 1, self ));
2695
+ }
2696
+ arg1 = reinterpret_cast< TagLib::RIFF::WAV::File * >(argp1);
2697
+ (arg1)->strip();
2698
+ return Qnil;
2699
+ fail:
2700
+ return Qnil;
2701
+ }
2702
+
2703
+
2704
+ SWIGINTERN VALUE _wrap_File_strip(int nargs, VALUE *args, VALUE self) {
2705
+ int argc;
2706
+ VALUE argv[3];
2707
+ int ii;
2708
+
2709
+ argc = nargs + 1;
2710
+ argv[0] = self;
2711
+ if (argc > 3) SWIG_fail;
2712
+ for (ii = 1; (ii < argc); ++ii) {
2713
+ argv[ii] = args[ii-1];
2714
+ }
2715
+ if (argc == 1) {
2716
+ int _v;
2717
+ void *vptr = 0;
2718
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_TagLib__RIFF__WAV__File, 0);
2719
+ _v = SWIG_CheckState(res);
2720
+ if (_v) {
2721
+ return _wrap_File_strip__SWIG_1(nargs, args, self);
2722
+ }
2723
+ }
2724
+ if (argc == 2) {
2725
+ int _v;
2726
+ void *vptr = 0;
2727
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_TagLib__RIFF__WAV__File, 0);
2728
+ _v = SWIG_CheckState(res);
2729
+ if (_v) {
2730
+ {
2731
+ int res = SWIG_AsVal_int(argv[1], NULL);
2732
+ _v = SWIG_CheckState(res);
2733
+ }
2734
+ if (_v) {
2735
+ return _wrap_File_strip__SWIG_0(nargs, args, self);
2736
+ }
2737
+ }
2738
+ }
2739
+
2740
+ fail:
2741
+ Ruby_Format_OverloadedError( argc, 3, "File.strip",
2742
+ " void File.strip(TagLib::RIFF::WAV::File::TagTypes tags)\n"
2743
+ " void File.strip()\n");
2744
+
2745
+ return Qnil;
2746
+ }
2747
+
2748
+
2749
+ SWIGINTERN VALUE
2750
+ _wrap_File_audio_properties(int argc, VALUE *argv, VALUE self) {
2751
+ TagLib::RIFF::WAV::File *arg1 = (TagLib::RIFF::WAV::File *) 0 ;
2752
+ void *argp1 = 0 ;
2753
+ int res1 = 0 ;
2754
+ TagLib::RIFF::WAV::Properties *result = 0 ;
2755
+ VALUE vresult = Qnil;
2756
+
2757
+ if ((argc < 0) || (argc > 0)) {
2758
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
2759
+ }
2760
+ res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TagLib__RIFF__WAV__File, 0 | 0 );
2761
+ if (!SWIG_IsOK(res1)) {
2762
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::File const *","audioProperties", 1, self ));
2692
2763
  }
2693
2764
  arg1 = reinterpret_cast< TagLib::RIFF::WAV::File * >(argp1);
2694
2765
  result = (TagLib::RIFF::WAV::Properties *)((TagLib::RIFF::WAV::File const *)arg1)->audioProperties();
@@ -2700,7 +2771,7 @@ fail:
2700
2771
 
2701
2772
 
2702
2773
  SWIGINTERN VALUE
2703
- _wrap_File_save(int argc, VALUE *argv, VALUE self) {
2774
+ _wrap_File_save__SWIG_0(int argc, VALUE *argv, VALUE self) {
2704
2775
  TagLib::RIFF::WAV::File *arg1 = (TagLib::RIFF::WAV::File *) 0 ;
2705
2776
  void *argp1 = 0 ;
2706
2777
  int res1 = 0 ;
@@ -2723,6 +2794,269 @@ fail:
2723
2794
  }
2724
2795
 
2725
2796
 
2797
+ SWIGINTERN VALUE
2798
+ _wrap_File_save__SWIG_1(int argc, VALUE *argv, VALUE self) {
2799
+ TagLib::RIFF::WAV::File *arg1 = (TagLib::RIFF::WAV::File *) 0 ;
2800
+ TagLib::RIFF::WAV::File::TagTypes arg2 ;
2801
+ bool arg3 ;
2802
+ int arg4 ;
2803
+ void *argp1 = 0 ;
2804
+ int res1 = 0 ;
2805
+ int val2 ;
2806
+ int ecode2 = 0 ;
2807
+ bool val3 ;
2808
+ int ecode3 = 0 ;
2809
+ int val4 ;
2810
+ int ecode4 = 0 ;
2811
+ bool result;
2812
+ VALUE vresult = Qnil;
2813
+
2814
+ if ((argc < 3) || (argc > 3)) {
2815
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 3)",argc); SWIG_fail;
2816
+ }
2817
+ res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TagLib__RIFF__WAV__File, 0 | 0 );
2818
+ if (!SWIG_IsOK(res1)) {
2819
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::File *","save", 1, self ));
2820
+ }
2821
+ arg1 = reinterpret_cast< TagLib::RIFF::WAV::File * >(argp1);
2822
+ ecode2 = SWIG_AsVal_int(argv[0], &val2);
2823
+ if (!SWIG_IsOK(ecode2)) {
2824
+ SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::File::TagTypes","save", 2, argv[0] ));
2825
+ }
2826
+ arg2 = static_cast< TagLib::RIFF::WAV::File::TagTypes >(val2);
2827
+ ecode3 = SWIG_AsVal_bool(argv[1], &val3);
2828
+ if (!SWIG_IsOK(ecode3)) {
2829
+ SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "bool","save", 3, argv[1] ));
2830
+ }
2831
+ arg3 = static_cast< bool >(val3);
2832
+ ecode4 = SWIG_AsVal_int(argv[2], &val4);
2833
+ if (!SWIG_IsOK(ecode4)) {
2834
+ SWIG_exception_fail(SWIG_ArgError(ecode4), Ruby_Format_TypeError( "", "int","save", 4, argv[2] ));
2835
+ }
2836
+ arg4 = static_cast< int >(val4);
2837
+ result = (bool)(arg1)->save(arg2,arg3,arg4);
2838
+ vresult = SWIG_From_bool(static_cast< bool >(result));
2839
+ return vresult;
2840
+ fail:
2841
+ return Qnil;
2842
+ }
2843
+
2844
+
2845
+ SWIGINTERN VALUE
2846
+ _wrap_File_save__SWIG_2(int argc, VALUE *argv, VALUE self) {
2847
+ TagLib::RIFF::WAV::File *arg1 = (TagLib::RIFF::WAV::File *) 0 ;
2848
+ TagLib::RIFF::WAV::File::TagTypes arg2 ;
2849
+ bool arg3 ;
2850
+ void *argp1 = 0 ;
2851
+ int res1 = 0 ;
2852
+ int val2 ;
2853
+ int ecode2 = 0 ;
2854
+ bool val3 ;
2855
+ int ecode3 = 0 ;
2856
+ bool result;
2857
+ VALUE vresult = Qnil;
2858
+
2859
+ if ((argc < 2) || (argc > 2)) {
2860
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
2861
+ }
2862
+ res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TagLib__RIFF__WAV__File, 0 | 0 );
2863
+ if (!SWIG_IsOK(res1)) {
2864
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::File *","save", 1, self ));
2865
+ }
2866
+ arg1 = reinterpret_cast< TagLib::RIFF::WAV::File * >(argp1);
2867
+ ecode2 = SWIG_AsVal_int(argv[0], &val2);
2868
+ if (!SWIG_IsOK(ecode2)) {
2869
+ SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::File::TagTypes","save", 2, argv[0] ));
2870
+ }
2871
+ arg2 = static_cast< TagLib::RIFF::WAV::File::TagTypes >(val2);
2872
+ ecode3 = SWIG_AsVal_bool(argv[1], &val3);
2873
+ if (!SWIG_IsOK(ecode3)) {
2874
+ SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "bool","save", 3, argv[1] ));
2875
+ }
2876
+ arg3 = static_cast< bool >(val3);
2877
+ result = (bool)(arg1)->save(arg2,arg3);
2878
+ vresult = SWIG_From_bool(static_cast< bool >(result));
2879
+ return vresult;
2880
+ fail:
2881
+ return Qnil;
2882
+ }
2883
+
2884
+
2885
+ SWIGINTERN VALUE
2886
+ _wrap_File_save__SWIG_3(int argc, VALUE *argv, VALUE self) {
2887
+ TagLib::RIFF::WAV::File *arg1 = (TagLib::RIFF::WAV::File *) 0 ;
2888
+ TagLib::RIFF::WAV::File::TagTypes arg2 ;
2889
+ void *argp1 = 0 ;
2890
+ int res1 = 0 ;
2891
+ int val2 ;
2892
+ int ecode2 = 0 ;
2893
+ bool result;
2894
+ VALUE vresult = Qnil;
2895
+
2896
+ if ((argc < 1) || (argc > 1)) {
2897
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
2898
+ }
2899
+ res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TagLib__RIFF__WAV__File, 0 | 0 );
2900
+ if (!SWIG_IsOK(res1)) {
2901
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::File *","save", 1, self ));
2902
+ }
2903
+ arg1 = reinterpret_cast< TagLib::RIFF::WAV::File * >(argp1);
2904
+ ecode2 = SWIG_AsVal_int(argv[0], &val2);
2905
+ if (!SWIG_IsOK(ecode2)) {
2906
+ SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::File::TagTypes","save", 2, argv[0] ));
2907
+ }
2908
+ arg2 = static_cast< TagLib::RIFF::WAV::File::TagTypes >(val2);
2909
+ result = (bool)(arg1)->save(arg2);
2910
+ vresult = SWIG_From_bool(static_cast< bool >(result));
2911
+ return vresult;
2912
+ fail:
2913
+ return Qnil;
2914
+ }
2915
+
2916
+
2917
+ SWIGINTERN VALUE _wrap_File_save(int nargs, VALUE *args, VALUE self) {
2918
+ int argc;
2919
+ VALUE argv[5];
2920
+ int ii;
2921
+
2922
+ argc = nargs + 1;
2923
+ argv[0] = self;
2924
+ if (argc > 5) SWIG_fail;
2925
+ for (ii = 1; (ii < argc); ++ii) {
2926
+ argv[ii] = args[ii-1];
2927
+ }
2928
+ if (argc == 1) {
2929
+ int _v;
2930
+ void *vptr = 0;
2931
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_TagLib__RIFF__WAV__File, 0);
2932
+ _v = SWIG_CheckState(res);
2933
+ if (_v) {
2934
+ return _wrap_File_save__SWIG_0(nargs, args, self);
2935
+ }
2936
+ }
2937
+ if (argc == 2) {
2938
+ int _v;
2939
+ void *vptr = 0;
2940
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_TagLib__RIFF__WAV__File, 0);
2941
+ _v = SWIG_CheckState(res);
2942
+ if (_v) {
2943
+ {
2944
+ int res = SWIG_AsVal_int(argv[1], NULL);
2945
+ _v = SWIG_CheckState(res);
2946
+ }
2947
+ if (_v) {
2948
+ return _wrap_File_save__SWIG_3(nargs, args, self);
2949
+ }
2950
+ }
2951
+ }
2952
+ if (argc == 3) {
2953
+ int _v;
2954
+ void *vptr = 0;
2955
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_TagLib__RIFF__WAV__File, 0);
2956
+ _v = SWIG_CheckState(res);
2957
+ if (_v) {
2958
+ {
2959
+ int res = SWIG_AsVal_int(argv[1], NULL);
2960
+ _v = SWIG_CheckState(res);
2961
+ }
2962
+ if (_v) {
2963
+ {
2964
+ int res = SWIG_AsVal_bool(argv[2], NULL);
2965
+ _v = SWIG_CheckState(res);
2966
+ }
2967
+ if (_v) {
2968
+ return _wrap_File_save__SWIG_2(nargs, args, self);
2969
+ }
2970
+ }
2971
+ }
2972
+ }
2973
+ if (argc == 4) {
2974
+ int _v;
2975
+ void *vptr = 0;
2976
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_TagLib__RIFF__WAV__File, 0);
2977
+ _v = SWIG_CheckState(res);
2978
+ if (_v) {
2979
+ {
2980
+ int res = SWIG_AsVal_int(argv[1], NULL);
2981
+ _v = SWIG_CheckState(res);
2982
+ }
2983
+ if (_v) {
2984
+ {
2985
+ int res = SWIG_AsVal_bool(argv[2], NULL);
2986
+ _v = SWIG_CheckState(res);
2987
+ }
2988
+ if (_v) {
2989
+ {
2990
+ int res = SWIG_AsVal_int(argv[3], NULL);
2991
+ _v = SWIG_CheckState(res);
2992
+ }
2993
+ if (_v) {
2994
+ return _wrap_File_save__SWIG_1(nargs, args, self);
2995
+ }
2996
+ }
2997
+ }
2998
+ }
2999
+ }
3000
+
3001
+ fail:
3002
+ Ruby_Format_OverloadedError( argc, 5, "File.save",
3003
+ " bool File.save()\n"
3004
+ " bool File.save(TagLib::RIFF::WAV::File::TagTypes tags, bool stripOthers, int id3v2Version)\n"
3005
+ " bool File.save(TagLib::RIFF::WAV::File::TagTypes tags, bool stripOthers)\n"
3006
+ " bool File.save(TagLib::RIFF::WAV::File::TagTypes tags)\n");
3007
+
3008
+ return Qnil;
3009
+ }
3010
+
3011
+
3012
+ SWIGINTERN VALUE
3013
+ _wrap_File_id3v2_tagq___(int argc, VALUE *argv, VALUE self) {
3014
+ TagLib::RIFF::WAV::File *arg1 = (TagLib::RIFF::WAV::File *) 0 ;
3015
+ void *argp1 = 0 ;
3016
+ int res1 = 0 ;
3017
+ bool result;
3018
+ VALUE vresult = Qnil;
3019
+
3020
+ if ((argc < 0) || (argc > 0)) {
3021
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
3022
+ }
3023
+ res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TagLib__RIFF__WAV__File, 0 | 0 );
3024
+ if (!SWIG_IsOK(res1)) {
3025
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::File const *","hasID3v2Tag", 1, self ));
3026
+ }
3027
+ arg1 = reinterpret_cast< TagLib::RIFF::WAV::File * >(argp1);
3028
+ result = (bool)((TagLib::RIFF::WAV::File const *)arg1)->hasID3v2Tag();
3029
+ vresult = SWIG_From_bool(static_cast< bool >(result));
3030
+ return vresult;
3031
+ fail:
3032
+ return Qnil;
3033
+ }
3034
+
3035
+
3036
+ SWIGINTERN VALUE
3037
+ _wrap_File_info_tagq___(int argc, VALUE *argv, VALUE self) {
3038
+ TagLib::RIFF::WAV::File *arg1 = (TagLib::RIFF::WAV::File *) 0 ;
3039
+ void *argp1 = 0 ;
3040
+ int res1 = 0 ;
3041
+ bool result;
3042
+ VALUE vresult = Qnil;
3043
+
3044
+ if ((argc < 0) || (argc > 0)) {
3045
+ rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
3046
+ }
3047
+ res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TagLib__RIFF__WAV__File, 0 | 0 );
3048
+ if (!SWIG_IsOK(res1)) {
3049
+ SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TagLib::RIFF::WAV::File const *","hasInfoTag", 1, self ));
3050
+ }
3051
+ arg1 = reinterpret_cast< TagLib::RIFF::WAV::File * >(argp1);
3052
+ result = (bool)((TagLib::RIFF::WAV::File const *)arg1)->hasInfoTag();
3053
+ vresult = SWIG_From_bool(static_cast< bool >(result));
3054
+ return vresult;
3055
+ fail:
3056
+ return Qnil;
3057
+ }
3058
+
3059
+
2726
3060
  SWIGINTERN VALUE
2727
3061
  _wrap_File_close(int argc, VALUE *argv, VALUE self) {
2728
3062
  TagLib::RIFF::WAV::File *arg1 = (TagLib::RIFF::WAV::File *) 0 ;
@@ -3054,11 +3388,14 @@ SWIGEXPORT void Init_taglib_wav(void) {
3054
3388
  SWIG_TypeClientData(SWIGTYPE_p_TagLib__RIFF__WAV__Properties, (void *) &SwigClassProperties);
3055
3389
  rb_define_alloc_func(SwigClassProperties.klass, _wrap_Properties_allocate);
3056
3390
  rb_define_method(SwigClassProperties.klass, "initialize", VALUEFUNC(_wrap_new_Properties), -1);
3057
- rb_define_method(SwigClassProperties.klass, "length", VALUEFUNC(_wrap_Properties_length), -1);
3391
+ rb_define_method(SwigClassProperties.klass, "length_in_seconds", VALUEFUNC(_wrap_Properties_length_in_seconds), -1);
3392
+ rb_define_method(SwigClassProperties.klass, "length_in_milliseconds", VALUEFUNC(_wrap_Properties_length_in_milliseconds), -1);
3058
3393
  rb_define_method(SwigClassProperties.klass, "bitrate", VALUEFUNC(_wrap_Properties_bitrate), -1);
3059
3394
  rb_define_method(SwigClassProperties.klass, "sample_rate", VALUEFUNC(_wrap_Properties_sample_rate), -1);
3060
3395
  rb_define_method(SwigClassProperties.klass, "channels", VALUEFUNC(_wrap_Properties_channels), -1);
3061
- rb_define_method(SwigClassProperties.klass, "sample_width", VALUEFUNC(_wrap_Properties_sample_width), -1);
3396
+ rb_define_method(SwigClassProperties.klass, "bits_per_sample", VALUEFUNC(_wrap_Properties_bits_per_sample), -1);
3397
+ rb_define_method(SwigClassProperties.klass, "sample_frames", VALUEFUNC(_wrap_Properties_sample_frames), -1);
3398
+ rb_define_method(SwigClassProperties.klass, "format", VALUEFUNC(_wrap_Properties_format), -1);
3062
3399
  SwigClassProperties.mark = 0;
3063
3400
  SwigClassProperties.destroy = (void (*)(void *)) free_TagLib_RIFF_WAV_Properties;
3064
3401
  SwigClassProperties.trackObjects = 1;
@@ -3067,9 +3404,17 @@ SWIGEXPORT void Init_taglib_wav(void) {
3067
3404
  SWIG_TypeClientData(SWIGTYPE_p_TagLib__RIFF__WAV__File, (void *) &SwigClassFile);
3068
3405
  rb_define_alloc_func(SwigClassFile.klass, _wrap_File_allocate);
3069
3406
  rb_define_method(SwigClassFile.klass, "initialize", VALUEFUNC(_wrap_new_File), -1);
3407
+ rb_define_const(SwigClassFile.klass, "NoTags", SWIG_From_int(static_cast< int >(TagLib::RIFF::WAV::File::NoTags)));
3408
+ rb_define_const(SwigClassFile.klass, "ID3v2", SWIG_From_int(static_cast< int >(TagLib::RIFF::WAV::File::ID3v2)));
3409
+ rb_define_const(SwigClassFile.klass, "Info", SWIG_From_int(static_cast< int >(TagLib::RIFF::WAV::File::Info)));
3410
+ rb_define_const(SwigClassFile.klass, "AllTags", SWIG_From_int(static_cast< int >(TagLib::RIFF::WAV::File::AllTags)));
3070
3411
  rb_define_method(SwigClassFile.klass, "tag", VALUEFUNC(_wrap_File_tag), -1);
3412
+ rb_define_method(SwigClassFile.klass, "id3v2_tag", VALUEFUNC(_wrap_File_id3v2_tag), -1);
3413
+ rb_define_method(SwigClassFile.klass, "strip", VALUEFUNC(_wrap_File_strip), -1);
3071
3414
  rb_define_method(SwigClassFile.klass, "audio_properties", VALUEFUNC(_wrap_File_audio_properties), -1);
3072
3415
  rb_define_method(SwigClassFile.klass, "save", VALUEFUNC(_wrap_File_save), -1);
3416
+ rb_define_method(SwigClassFile.klass, "id3v2_tag?", VALUEFUNC(_wrap_File_id3v2_tagq___), -1);
3417
+ rb_define_method(SwigClassFile.klass, "info_tag?", VALUEFUNC(_wrap_File_info_tagq___), -1);
3073
3418
  rb_define_method(SwigClassFile.klass, "close", VALUEFUNC(_wrap_File_close), -1);
3074
3419
  SwigClassFile.mark = 0;
3075
3420
  SwigClassFile.destroy = (void (*)(void *)) free_taglib_riff_wav_file;