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 *);
   146             virtual void clear();
   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;
   184             bool get_is_last() 
const;
   202             uint32_t get_length() 
const;
   210             void set_is_last(
bool);
   219             inline operator const ::FLAC__StreamMetadata *() 
const;
   226             inline void set_reference(
bool x) { is_reference_ = x; }
   240 #pragma warning ( disable : 4800 )   253 #pragma warning ( default : 4800 )   266         { 
return 0 != object_; }
   268         inline Prototype::operator const ::FLAC__StreamMetadata *() 
const   327             uint32_t get_min_blocksize() 
const;
   328             uint32_t get_max_blocksize() 
const;
   329             uint32_t get_min_framesize() 
const;
   330             uint32_t get_max_framesize() 
const;
   331             uint32_t get_sample_rate() 
const;
   332             uint32_t get_channels() 
const;
   333             uint32_t get_bits_per_sample() 
const;
   334             FLAC__uint64 get_total_samples() 
const;
   335             const FLAC__byte *get_md5sum() 
const;
   337             void set_min_blocksize(uint32_t value);
   338             void set_max_blocksize(uint32_t value);
   339             void set_min_framesize(uint32_t value);
   340             void set_max_framesize(uint32_t value);
   341             void set_sample_rate(uint32_t value);
   342             void set_channels(uint32_t value);
   343             void set_bits_per_sample(uint32_t value);
   344             void set_total_samples(FLAC__uint64 value);
   345             void set_md5sum(
const FLAC__byte value[16]);
   405             void set_length(uint32_t length);
   458             const FLAC__byte *get_id() 
const;
   459             const FLAC__byte *get_data() 
const;
   461             void set_id(
const FLAC__byte value[4]);
   463             bool set_data(
const FLAC__byte *data, uint32_t length);
   464             bool set_data(FLAC__byte *data, uint32_t length, 
bool copy);
   517             uint32_t get_num_points() 
const;
   521             bool resize_points(uint32_t new_num_points);
   524             void set_point(uint32_t index, const ::FLAC__StreamMetadata_SeekPoint &point);
   527             bool insert_point(uint32_t index, const ::FLAC__StreamMetadata_SeekPoint &point);
   530             bool delete_point(uint32_t index);
   533             bool is_legal() 
const;
   536             bool template_append_placeholders(uint32_t num);
   539             bool template_append_point(FLAC__uint64 sample_number);
   542             bool template_append_points(FLAC__uint64 sample_numbers[], uint32_t num);
   545             bool template_append_spaced_points(uint32_t num, FLAC__uint64 total_samples);
   548             bool template_append_spaced_points_by_samples(uint32_t samples, FLAC__uint64 total_samples);
   551             bool template_sort(
bool compact);
   593                 Entry(
const char *field, uint32_t field_length);
   594                 Entry(
const char *field); 
   596                 Entry(
const char *field_name, 
const char *field_value, uint32_t field_value_length);
   597                 Entry(
const char *field_name, 
const char *field_value); 
   605                 virtual bool is_valid() 
const; 
   607                 uint32_t get_field_length() 
const;
   608                 uint32_t get_field_name_length() 
const;
   609                 uint32_t get_field_value_length() 
const;
   612                 const char *get_field() 
const;
   613                 const char *get_field_name() 
const;
   614                 const char *get_field_value() 
const;
   616                 bool set_field(
const char *field, uint32_t field_length);
   617                 bool set_field(
const char *field); 
   618                 bool set_field_name(
const char *field_name);
   619                 bool set_field_value(
const char *field_value, uint32_t field_value_length);
   620                 bool set_field_value(
const char *field_value); 
   625                 uint32_t field_name_length_;
   627                 uint32_t field_value_length_;
   632                 void clear_field_name();
   633                 void clear_field_value();
   634                 void construct(
const char *field, uint32_t field_length);
   635                 void construct(
const char *field); 
   636                 void construct(
const char *field_name, 
const char *field_value, uint32_t field_value_length);
   637                 void construct(
const char *field_name, 
const char *field_value); 
   638                 void compose_field();
   686             uint32_t get_num_comments() 
const;
   687             const FLAC__byte *get_vendor_string() 
const; 
   688             Entry get_comment(uint32_t index) 
const;
   691             bool set_vendor_string(
const FLAC__byte *
string); 
   694             bool resize_comments(uint32_t new_num_comments);
   697             bool set_comment(uint32_t index, 
const Entry &entry);
   700             bool insert_comment(uint32_t index, 
const Entry &entry);
   703             bool append_comment(
const Entry &entry);
   706             bool replace_comment(
const Entry &entry, 
bool all);
   709             bool delete_comment(uint32_t index);
   712             int find_entry_from(uint32_t offset, 
const char *field_name);
   715             int remove_entry_matching(
const char *field_name);
   718             int remove_entries_matching(
const char *field_name);
   738                 Track(const ::FLAC__StreamMetadata_CueSheet_Track *track);
   744                 virtual bool is_valid() 
const; 
   747                 inline FLAC__uint64 get_offset()
 const { 
return object_->
offset; }
   748                 inline FLAC__byte get_number()
 const { 
return object_->
number; }
   749                 inline const char *get_isrc()
 const { 
return object_->
isrc; }
   750                 inline uint32_t get_type()
 const { 
return object_->
type; }
   751                 inline bool get_pre_emphasis()
 const { 
return object_->
pre_emphasis; }
   753                 inline FLAC__byte get_num_indices()
 const { 
return object_->
num_indices; }
   756                 inline const ::FLAC__StreamMetadata_CueSheet_Track *get_track()
 const { 
return object_; }
   758                 inline void set_offset(FLAC__uint64 value) { object_->
offset = value; }
   759                 inline void set_number(FLAC__byte value) { object_->
number = value; }
   760                 void set_isrc(
const char value[12]);
   761                 void set_type(uint32_t value);
   762                 inline void set_pre_emphasis(
bool value) { object_->
pre_emphasis = value? 1 : 0; }
   764                 void set_index(uint32_t i, const ::FLAC__StreamMetadata_CueSheet_Index &index);
   813             const char *get_media_catalog_number() 
const;
   814             FLAC__uint64 get_lead_in() 
const;
   815             bool get_is_cd() 
const;
   817             uint32_t get_num_tracks() 
const;
   818             Track get_track(uint32_t i) 
const;
   820             void set_media_catalog_number(
const char value[128]);
   821             void set_lead_in(FLAC__uint64 value);
   822             void set_is_cd(
bool value);
   824             void set_index(uint32_t track_num, uint32_t index_num, const ::FLAC__StreamMetadata_CueSheet_Index &index);
   827             bool resize_indices(uint32_t track_num, uint32_t new_num_indices);
   830             bool insert_index(uint32_t track_num, uint32_t index_num, const ::FLAC__StreamMetadata_CueSheet_Index &index);
   833             bool insert_blank_index(uint32_t track_num, uint32_t index_num);
   836             bool delete_index(uint32_t track_num, uint32_t index_num);
   839             bool resize_tracks(uint32_t new_num_tracks);
   842             bool set_track(uint32_t i, 
const Track &track);
   845             bool insert_track(uint32_t i, 
const Track &track);
   848             bool insert_blank_track(uint32_t i);
   851             bool delete_track(uint32_t i);
   854             bool is_legal(
bool check_cd_da_subset = 
false, 
const char **violation = 0) 
const;
   857             FLAC__uint32 calculate_cddb_id() 
const;
   911             const char *get_mime_type() 
const; 
   912             const FLAC__byte *get_description() 
const; 
   913             FLAC__uint32 get_width() 
const;
   914             FLAC__uint32 get_height() 
const;
   915             FLAC__uint32 get_depth() 
const;
   916             FLAC__uint32 get_colors() 
const; 
   917             FLAC__uint32 get_data_length() 
const;
   918             const FLAC__byte *get_data() 
const;
   923             bool set_mime_type(
const char *
string); 
   926             bool set_description(
const FLAC__byte *
string); 
   928             void set_width(FLAC__uint32 value) 
const;
   929             void set_height(FLAC__uint32 value) 
const;
   930             void set_depth(FLAC__uint32 value) 
const;
   931             void set_colors(FLAC__uint32 value) 
const; 
   934             bool set_data(
const FLAC__byte *data, FLAC__uint32 data_length);
   937             bool is_legal(
const char **violation);
   992             const FLAC__byte *get_data() 
const;
   995             bool set_data(
const FLAC__byte *data, uint32_t length);
   996             bool set_data(FLAC__byte *data, uint32_t length, 
bool copy);
  1014         FLACPP_API 
bool get_streaminfo(
const char *filename, StreamInfo &streaminfo); 
  1016         FLACPP_API 
bool get_tags(
const char *filename, VorbisComment *&tags); 
  1017         FLACPP_API 
bool get_tags(
const char *filename, VorbisComment &tags); 
  1019         FLACPP_API 
bool get_cuesheet(
const char *filename, CueSheet *&cuesheet); 
  1020         FLACPP_API 
bool get_cuesheet(
const char *filename, CueSheet &cuesheet); 
  1022         FLACPP_API 
bool get_picture(
const char *filename, Picture *&picture, ::
FLAC__StreamMetadata_Picture_Type type, 
const char *mime_type, 
const FLAC__byte *description, uint32_t max_width, uint32_t max_height, uint32_t max_depth, uint32_t max_colors); 
  1023         FLACPP_API 
bool get_picture(
const char *filename, Picture &picture, ::
FLAC__StreamMetadata_Picture_Type type, 
const char *mime_type, 
const FLAC__byte *description, uint32_t max_width, uint32_t max_height, uint32_t max_depth, uint32_t max_colors); 
  1069                 inline operator ::FLAC__Metadata_SimpleIteratorStatus()
 const { 
return status_; }
  1078             bool is_valid() 
const; 
  1080             bool init(
const char *filename, 
bool read_only, 
bool preserve_file_stats); 
  1083             bool is_writable() 
const;                                           
  1087             bool is_last() 
const;                                               
  1089             off_t get_block_offset() 
const;                                     
  1091             uint32_t get_block_length() 
const;                                  
  1092             bool get_application_id(FLAC__byte *
id);                            
  1094             bool set_block(
Prototype *block, 
bool use_padding = 
true);          
  1095             bool insert_block_after(
Prototype *block, 
bool use_padding = 
true); 
  1096             bool delete_block(
bool use_padding = 
true);                         
  1159                 inline operator ::FLAC__Metadata_ChainStatus()
 const { 
return status_; }
  1170             bool is_valid() 
const; 
  1174             bool read(
const char *filename, 
bool is_ogg = 
false);                                
  1177             bool check_if_tempfile_needed(
bool use_padding);                
  1179             bool write(
bool use_padding = 
true, 
bool preserve_file_stats = 
false); 
  1183             void merge_padding();                                           
  1184             void sort_padding();                                            
  1188             virtual void clear();
  1205             bool is_valid() 
const; 
  1208             void init(
Chain &chain);                       
  1216             bool delete_block(
bool replace_with_padding);  
  1217             bool insert_block_before(
Prototype *block);    
  1218             bool insert_block_after(
Prototype *block);     
  1222             virtual void clear();
 
Definition: callback.h:170
This module contains #defines and symbols for exporting function calls, and providing version informa...
void * FLAC__IOHandle
Definition: callback.h:89