X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=senf%2FUtils%2FFormat.cci;h=2f3765e775669d6e5e7366c4d479648b27cb73ba;hb=93d9568d448749dc187e7622b733a4a3caa319df;hp=ff8f87b4224d4ea5d011a583750d12d38d6a7a76;hpb=9c0d069987191bce78e13cdba410c34d34e736c2;p=senf.git diff --git a/senf/Utils/Format.cci b/senf/Utils/Format.cci index ff8f87b..2f3765e 100644 --- a/senf/Utils/Format.cci +++ b/senf/Utils/Format.cci @@ -1,6 +1,6 @@ // $Id$ // -// Copyright (C) 2009 +// Copyright (C) 2009 // Fraunhofer Institute for Open Communication Systems (FOKUS) // Competence Center NETwork research (NET), St. Augustin, GERMANY // Stefan Bund @@ -28,7 +28,10 @@ // Custom includes #define prefix_ inline -///////////////////////////////cci.p/////////////////////////////////////// +//-///////////////////////////////////////////////////////////////////////////////////////////////// + +//-///////////////////////////////////////////////////////////////////////////////////////////////// +// senf::format::eng prefix_ senf::format::eng::eng(float v, float d) : v_ (v), d_ (d), haveWidth_ (false), width_ (0), havePrecision_ (false), precision_ (0), @@ -150,14 +153,45 @@ prefix_ senf::format::eng const & senf::format::eng::right() return *this; } +//-///////////////////////////////////////////////////////////////////////////////////////////////// +// senf::format::IndentHelper + +prefix_ senf::format::IndentHelper::IndentHelper() + : instance_level(1) +{ + ++static_level; +} + +prefix_ senf::format::IndentHelper::~IndentHelper() +{ + static_level -= instance_level; +} + +prefix_ void senf::format::IndentHelper::increase() +{ + ++static_level; + ++instance_level; +} + +prefix_ unsigned int senf::format::IndentHelper::level() + const +{ + return static_level; +} + prefix_ std::ostream & senf::format::operator<<(std::ostream & os, senf::format::IndentHelper const & indent) { - for (unsigned int i = 0; i < indent.static_level; ++i) + for (unsigned int i=0, j=indent.level(); i