summaryrefslogtreecommitdiff
path: root/src/libFLAC++
diff options
context:
space:
mode:
authorErik de Castro Lopo <erikd@mega-nerd.com>2012-05-07 19:22:37 +1000
committerErik de Castro Lopo <erikd@mega-nerd.com>2012-05-07 19:22:37 +1000
commitcd9053cd31559c03ae0e48da541c27a7a0582ed5 (patch)
tree94ca56c92a5789f95cba0bfa814d4a3d545a1815 /src/libFLAC++
parentc5c4ce918f89a5043b273cd4bb46b49c01d23b74 (diff)
downloadflac-cd9053cd31559c03ae0e48da541c27a7a0582ed5.tar.gz
Add functionality present in the C library to the to C++ SeekTable class.
Patch from Bastiaan Timmer <basjetimmer@yahoo.com> sent to the <flac-dev@xiph.org> mailing list.
Diffstat (limited to 'src/libFLAC++')
-rw-r--r--src/libFLAC++/metadata.cpp42
1 files changed, 42 insertions, 0 deletions
diff --git a/src/libFLAC++/metadata.cpp b/src/libFLAC++/metadata.cpp
index 3c9f657a..0870d029 100644
--- a/src/libFLAC++/metadata.cpp
+++ b/src/libFLAC++/metadata.cpp
@@ -438,6 +438,12 @@ namespace FLAC {
return object_->data.seek_table.points[index];
}
+ bool SeekTable::resize_points(unsigned new_num_points)
+ {
+ FLAC__ASSERT(is_valid());
+ return (bool)::FLAC__metadata_object_seektable_resize_points(object_, new_num_points);
+ }
+
void SeekTable::set_point(unsigned index, const ::FLAC__StreamMetadata_SeekPoint &point)
{
FLAC__ASSERT(is_valid());
@@ -465,6 +471,42 @@ namespace FLAC {
return (bool)::FLAC__metadata_object_seektable_is_legal(object_);
}
+ bool SeekTable::template_append_placeholders(unsigned num)
+ {
+ FLAC__ASSERT(is_valid());
+ return (bool)::FLAC__metadata_object_seektable_template_append_placeholders(object_, num);
+ }
+
+ bool SeekTable::template_append_point(FLAC__uint64 sample_number)
+ {
+ FLAC__ASSERT(is_valid());
+ return (bool)::FLAC__metadata_object_seektable_template_append_point(object_, sample_number);
+ }
+
+ bool SeekTable::template_append_points(FLAC__uint64 sample_numbers[], unsigned num)
+ {
+ FLAC__ASSERT(is_valid());
+ return (bool)::FLAC__metadata_object_seektable_template_append_points(object_, sample_numbers, num);
+ }
+
+ bool SeekTable::template_append_spaced_points(unsigned num, FLAC__uint64 total_samples)
+ {
+ FLAC__ASSERT(is_valid());
+ return (bool)::FLAC__metadata_object_seektable_template_append_spaced_points(object_, num, total_samples);
+ }
+
+ bool SeekTable::template_append_spaced_points_by_samples(unsigned samples, FLAC__uint64 total_samples)
+ {
+ FLAC__ASSERT(is_valid());
+ return (bool)::FLAC__metadata_object_seektable_template_append_spaced_points_by_samples(object_, samples, total_samples);
+ }
+
+ bool SeekTable::template_sort(bool compact)
+ {
+ FLAC__ASSERT(is_valid());
+ return (bool)::FLAC__metadata_object_seektable_template_sort(object_, compact);
+ }
+
//
// VorbisComment::Entry