--- libgig/trunk/TODO 2003/10/25 20:15:04 2 +++ libgig/trunk/TODO 2005/11/22 11:26:55 809 @@ -1,10 +1,24 @@ -Portability: - - finish endian dependent macros and structures - - test library on non intel machines +In General: + - introduce 'iterator' design pattern as a replacement for the simple but + error-prone GetFirstFoo() / GetNextFoo() methods + +RIFF Part: + - replace Chunk::SetPos(), Chunk::GetPos(), Chunk::Read() and + Chunk::Write() methods and all other position dependant methods by a + 'Reader' / 'Writer' design pattern, that is each Chunk object would + only provide a new instance to a 'Reader' / 'Writer' object which allows + to read and write to the chunk independant how many parties are + currently using the respective Chunk object for reading/writing DLS Part: - support for conditional chunks - check for ZSTR terminated strings in DLS::Info::LoadString() + - real support for 64 bit offsets (used by Gigasampler v3 files) + - adding methods Articulator::AddArticulation() and + Articulator::DeleteArticulation(Articulation* pArticulation) to allow + creating and deleting DLS::Articulation objects + - modify DLS::Articulation class to allow adding and deleting + DLS::Connection objects Gig Part: - support for <3dnl> chunk in gig::Region class which provides optional @@ -18,3 +32,7 @@ - low level optimization in decompression algorithm - optional writing of frame table to disk to speed up loading of compressed samples + - real support for 24 bit samples (introduced by Gigasampler v3 format) + - support for additional articulation informations introduced by the + Gigasampler v3 format + - support for creating and modifying compressed samples