Boost logo

Boost :

Subject: Re: [boost] [compond_file_binary] Gauging interest in a possible library submission.
From: Alexander Voitenko (tarmik_at_[hidden])
Date: 2012-12-05 08:23:50

> I'd suggest trying to define a clean boundary between the interface and
> the implementation. You already have one back-end that makes the entire
> package usable. Adding another backend later, or as an option, that
> supports zlib/bzip2/whatever compression should be easier then.

I agree with your thoughts, Brian. To be sure that this point was achieved,
I must investigate such possibility well and implement at least one more

For now I have several questions about integration with boost.

1) Compound files use utf-16 encoding for names and I use third party
library for conversions utf-8 <-> utf-16
But looks like that Boost.Locale can be used as replacement. Is it?

2) I like TDD and automated tests, so implemented lot of them(for now about
7000 lines and plan add more). But most of my tests are not unit tests, but
integration test. For such software, testing in terms of usage scenarios is
better I think. As result, I have bunch of test data files which have size
about 100mb. Of course it is unacceptable to provide all this stuff within
the boost distribution. Is it possible to split tests? Module tests can be
included in boost distribution that available to the end user, and
integration test leave in repository and use only in nightly builds or
whatever you have there.

3) Compound files use red-black tree as format feature. And to deal with
compound files correctly, I need to access such low level data of a
red-black tree as color of a node. I searched on the Internet for a free C++
library that allow to access all the data within a tree but not found any
which is well-tested, so decided to make my own implementation using TDD

It was developed according to this book:
With my tiny modifications. ]:)
Is it any interest for binary and red-black tree implementations as separate
component? Or... the boost already have such facilities and I waste my time
by reinventing one more wheel? :-)

4) For integral types I use defines from <stdint.h> is it acceptable? Or
should I switch to similar types from the boost library?


View this message in context:
Sent from the Boost - Dev mailing list archive at

Boost list run by bdawes at, gregod at, cpdaniel at, john at