Main Page Modules Class Hierarchy Alphabetical List Compound List File List Compound Members File Members
Level 2 metadata iterator.
More...
Detailed Description
Level 2 metadata iterator.
The flow through the iterator in the C++ layer is similar to the C layer:
- Create a Chain instance
- Check Chain::is_valid()
- Call Chain::read() and check the return
- Traverse and/or edit with an Iterator or with Chain::merge_padding() or Chain::sort_padding()
- Write changes back to FLAC file with Chain::write()
- Destroy the Chain instance
The ownership of pointers in the C++ layer follows that in the C layer, i.e.
- The objects returned by Iterator::get_block() are owned by the iterator and should not be deleted. When you modify the block, you are directly editing what's in the chain and do not need to call Iterator::set_block(). However the changes will not be reflected in the FLAC file until the chain is written with Chain::write().
- When you pass an object to Iterator::set_block(), Iterator::insert_block_before(), or Iterator::insert_block_after(), the iterator takes ownership of the block and it will be deleted with the chain.
See the C layer equivalent for more.
Generated on Tue Sep 24 21:17:45 2002 for FLAC by
1.2.14 written by Dimitri van Heesch,
© 1997-2002