Go to the documentation of this file.
33 #ifndef FLACPP__METADATA_H
34 #define FLACPP__METADATA_H
116 Prototype(const ::FLAC__StreamMetadata &);
117 Prototype(const ::FLAC__StreamMetadata *);
135 Prototype &operator=(const ::FLAC__StreamMetadata &);
136 Prototype &operator=(const ::FLAC__StreamMetadata *);
157 inline bool operator==(
const Prototype &)
const;
158 inline bool operator==(const ::FLAC__StreamMetadata &)
const;
159 inline bool operator==(const ::FLAC__StreamMetadata *)
const;
164 inline bool operator!=(
const Prototype &)
const;
165 inline bool operator!=(const ::FLAC__StreamMetadata &)
const;
166 inline bool operator!=(const ::FLAC__StreamMetadata *)
const;
176 inline bool is_valid()
const;
219 inline operator const ::FLAC__StreamMetadata *()
const;
226 inline void set_reference(
bool x) { is_reference_ = x; }
231 #pragma warning ( disable : 4800 )
244 #pragma warning ( default : 4800 )
257 {
return 0 != object_; }
259 inline Prototype::operator const ::FLAC__StreamMetadata *()
const
280 inline StreamInfo(const ::FLAC__StreamMetadata *
object): Prototype(object) { }
294 inline StreamInfo &operator=(const ::FLAC__StreamMetadata *
object) {
Prototype::operator=(
object);
return *
this; }
305 inline bool operator==(const ::FLAC__StreamMetadata &
object)
const {
return Prototype::operator==(
object); }
306 inline bool operator==(const ::FLAC__StreamMetadata *
object)
const {
return Prototype::operator==(
object); }
312 inline bool operator!=(const ::FLAC__StreamMetadata &
object)
const {
return Prototype::operator!=(
object); }
313 inline bool operator!=(const ::FLAC__StreamMetadata *
object)
const {
return Prototype::operator!=(
object); }
319 unsigned get_max_blocksize()
const;
320 unsigned get_min_framesize()
const;
321 unsigned get_max_framesize()
const;
322 unsigned get_sample_rate()
const;
323 unsigned get_channels()
const;
324 unsigned get_bits_per_sample()
const;
325 FLAC__uint64 get_total_samples()
const;
326 const FLAC__byte *get_md5sum()
const;
328 void set_min_blocksize(
unsigned value);
329 void set_max_blocksize(
unsigned value);
330 void set_min_framesize(
unsigned value);
331 void set_max_framesize(
unsigned value);
332 void set_sample_rate(
unsigned value);
333 void set_channels(
unsigned value);
334 void set_bits_per_sample(
unsigned value);
335 void set_total_samples(FLAC__uint64 value);
336 void set_md5sum(
const FLAC__byte value[16]);
354 inline Padding(const ::FLAC__StreamMetadata *
object): Prototype(object) { }
372 inline Padding &operator=(const ::FLAC__StreamMetadata *
object) {
Prototype::operator=(
object);
return *
this; }
383 inline bool operator==(const ::FLAC__StreamMetadata &
object)
const {
return Prototype::operator==(
object); }
384 inline bool operator==(const ::FLAC__StreamMetadata *
object)
const {
return Prototype::operator==(
object); }
390 inline bool operator!=(const ::FLAC__StreamMetadata &
object)
const {
return Prototype::operator!=(
object); }
391 inline bool operator!=(const ::FLAC__StreamMetadata *
object)
const {
return Prototype::operator!=(
object); }
413 inline Application(const ::FLAC__StreamMetadata *
object): Prototype(object) { }
427 inline Application &operator=(const ::FLAC__StreamMetadata *
object) {
Prototype::operator=(
object);
return *
this; }
438 inline bool operator==(const ::FLAC__StreamMetadata &
object)
const {
return Prototype::operator==(
object); }
439 inline bool operator==(const ::FLAC__StreamMetadata *
object)
const {
return Prototype::operator==(
object); }
445 inline bool operator!=(const ::FLAC__StreamMetadata &
object)
const {
return Prototype::operator!=(
object); }
446 inline bool operator!=(const ::FLAC__StreamMetadata *
object)
const {
return Prototype::operator!=(
object); }
449 const FLAC__byte *get_id()
const;
450 const FLAC__byte *get_data()
const;
452 void set_id(
const FLAC__byte value[4]);
454 bool set_data(
const FLAC__byte *data,
unsigned length);
455 bool set_data(FLAC__byte *data,
unsigned length,
bool copy);
472 inline SeekTable(const ::FLAC__StreamMetadata *
object): Prototype(object) { }
486 inline SeekTable &operator=(const ::FLAC__StreamMetadata *
object) {
Prototype::operator=(
object);
return *
this; }
497 inline bool operator==(const ::FLAC__StreamMetadata &
object)
const {
return Prototype::operator==(
object); }
498 inline bool operator==(const ::FLAC__StreamMetadata *
object)
const {
return Prototype::operator==(
object); }
504 inline bool operator!=(const ::FLAC__StreamMetadata &
object)
const {
return Prototype::operator!=(
object); }
505 inline bool operator!=(const ::FLAC__StreamMetadata *
object)
const {
return Prototype::operator!=(
object); }
508 unsigned get_num_points()
const;
515 void set_point(
unsigned index, const ::FLAC__StreamMetadata_SeekPoint &point);
518 bool insert_point(
unsigned index, const ::FLAC__StreamMetadata_SeekPoint &point);
584 Entry(
const char *field,
unsigned field_length);
585 Entry(
const char *field);
587 Entry(
const char *field_name,
const char *field_value,
unsigned field_value_length);
588 Entry(
const char *field_name,
const char *field_value);
598 unsigned get_field_length()
const;
599 unsigned get_field_name_length()
const;
600 unsigned get_field_value_length()
const;
603 const char *get_field()
const;
604 const char *get_field_name()
const;
605 const char *get_field_value()
const;
607 bool set_field(
const char *field,
unsigned field_length);
608 bool set_field(
const char *field);
609 bool set_field_name(
const char *field_name);
610 bool set_field_value(
const char *field_value,
unsigned field_value_length);
611 bool set_field_value(
const char *field_value);
616 unsigned field_name_length_;
618 unsigned field_value_length_;
623 void clear_field_name();
624 void clear_field_value();
625 void construct(
const char *field,
unsigned field_length);
626 void construct(
const char *field);
627 void construct(
const char *field_name,
const char *field_value,
unsigned field_value_length);
628 void construct(
const char *field_name,
const char *field_value);
629 void compose_field();
641 inline VorbisComment(const ::FLAC__StreamMetadata *
object): Prototype(object) { }
655 inline VorbisComment &operator=(const ::FLAC__StreamMetadata *
object) {
Prototype::operator=(
object);
return *
this; }
666 inline bool operator==(const ::FLAC__StreamMetadata &
object)
const {
return Prototype::operator==(
object); }
667 inline bool operator==(const ::FLAC__StreamMetadata *
object)
const {
return Prototype::operator==(
object); }
673 inline bool operator!=(const ::FLAC__StreamMetadata &
object)
const {
return Prototype::operator!=(
object); }
674 inline bool operator!=(const ::FLAC__StreamMetadata *
object)
const {
return Prototype::operator!=(
object); }
677 unsigned get_num_comments()
const;
678 const FLAC__byte *get_vendor_string()
const;
679 Entry get_comment(
unsigned index)
const;
729 Track(const ::FLAC__StreamMetadata_CueSheet_Track *track);
738 inline FLAC__uint64 get_offset()
const {
return object_->
offset; }
739 inline FLAC__byte get_number()
const {
return object_->
number; }
740 inline const char *get_isrc()
const {
return object_->
isrc; }
741 inline unsigned get_type()
const {
return object_->
type; }
742 inline bool get_pre_emphasis()
const {
return object_->
pre_emphasis; }
744 inline FLAC__byte get_num_indices()
const {
return object_->
num_indices; }
747 inline const ::FLAC__StreamMetadata_CueSheet_Track *get_track()
const {
return object_; }
749 inline void set_offset(FLAC__uint64 value) { object_->
offset = value; }
750 inline void set_number(FLAC__byte value) { object_->
number = value; }
751 void set_isrc(
const char value[12]);
752 void set_type(
unsigned value);
753 inline void set_pre_emphasis(
bool value) { object_->
pre_emphasis = value? 1 : 0; }
755 void set_index(
unsigned i, const ::FLAC__StreamMetadata_CueSheet_Index &index);
768 inline CueSheet(const ::FLAC__StreamMetadata *
object): Prototype(object) { }
782 inline CueSheet &operator=(const ::FLAC__StreamMetadata *
object) {
Prototype::operator=(
object);
return *
this; }
793 inline bool operator==(const ::FLAC__StreamMetadata &
object)
const {
return Prototype::operator==(
object); }
794 inline bool operator==(const ::FLAC__StreamMetadata *
object)
const {
return Prototype::operator==(
object); }
800 inline bool operator!=(const ::FLAC__StreamMetadata &
object)
const {
return Prototype::operator!=(
object); }
801 inline bool operator!=(const ::FLAC__StreamMetadata *
object)
const {
return Prototype::operator!=(
object); }
804 const char *get_media_catalog_number()
const;
805 FLAC__uint64 get_lead_in()
const;
806 bool get_is_cd()
const;
808 unsigned get_num_tracks()
const;
809 Track get_track(
unsigned i)
const;
811 void set_media_catalog_number(
const char value[128]);
812 void set_lead_in(FLAC__uint64 value);
813 void set_is_cd(
bool value);
815 void set_index(
unsigned track_num,
unsigned index_num, const ::FLAC__StreamMetadata_CueSheet_Index &index);
821 bool insert_index(
unsigned track_num,
unsigned index_num, const ::FLAC__StreamMetadata_CueSheet_Index &index);
845 bool is_legal(
bool check_cd_da_subset =
false,
const char **violation = 0)
const;
865 inline Picture(const ::FLAC__StreamMetadata *
object): Prototype(object) { }
879 inline Picture &operator=(const ::FLAC__StreamMetadata *
object) {
Prototype::operator=(
object);
return *
this; }
890 inline bool operator==(const ::FLAC__StreamMetadata &
object)
const {
return Prototype::operator==(
object); }
891 inline bool operator==(const ::FLAC__StreamMetadata *
object)
const {
return Prototype::operator==(
object); }
897 inline bool operator!=(const ::FLAC__StreamMetadata &
object)
const {
return Prototype::operator!=(
object); }
898 inline bool operator!=(const ::FLAC__StreamMetadata *
object)
const {
return Prototype::operator!=(
object); }
902 const char *get_mime_type()
const;
903 const FLAC__byte *get_description()
const;
904 FLAC__uint32 get_width()
const;
905 FLAC__uint32 get_height()
const;
906 FLAC__uint32 get_depth()
const;
908 FLAC__uint32 get_data_length()
const;
909 const FLAC__byte *get_data()
const;
919 void set_width(FLAC__uint32 value)
const;
920 void set_height(FLAC__uint32 value)
const;
921 void set_depth(FLAC__uint32 value)
const;
925 bool set_data(
const FLAC__byte *data, FLAC__uint32 data_length);
947 inline Unknown(const ::FLAC__StreamMetadata *
object): Prototype(object) { }
961 inline Unknown &operator=(const ::FLAC__StreamMetadata *
object) {
Prototype::operator=(
object);
return *
this; }
972 inline bool operator==(const ::FLAC__StreamMetadata &
object)
const {
return Prototype::operator==(
object); }
973 inline bool operator==(const ::FLAC__StreamMetadata *
object)
const {
return Prototype::operator==(
object); }
979 inline bool operator!=(const ::FLAC__StreamMetadata &
object)
const {
return Prototype::operator!=(
object); }
980 inline bool operator!=(const ::FLAC__StreamMetadata *
object)
const {
return Prototype::operator!=(
object); }
983 const FLAC__byte *get_data()
const;
986 bool set_data(
const FLAC__byte *data,
unsigned length);
987 bool set_data(FLAC__byte *data,
unsigned length,
bool copy);
1071 bool init(
const char *filename,
bool read_only,
bool preserve_file_stats);
1165 bool read(
const char *filename,
bool is_ogg =
false);
1170 bool write(
bool use_padding =
true,
bool preserve_file_stats =
false);
1179 virtual void clear();
1213 virtual void clear();
Definition: callback.h:170
void * FLAC__IOHandle
Definition: callback.h:89
This module contains #defines and symbols for exporting function calls, and providing version informa...
|
Copyright (c) 2000-2009 Josh Coalson
Copyright (c) 2011-2016 Xiph.Org Foundation
|