#include "rc.h"
#include "dsodefs.h"
#include <fstream>
#include <boost/thread/mutex.hpp>
#include <boost/format.hpp>
#include "gettext.h"
#include <boost/preprocessor/arithmetic/inc.hpp>
#include <boost/preprocessor/repetition/enum_params.hpp>
#include <boost/preprocessor/repetition/repeat.hpp>
#include <boost/preprocessor/repetition/repeat_from_to.hpp>
#include <boost/preprocessor/seq/for_each.hpp>
Go to the source code of this file.
Classes | |
class | gnash::LogFile |
class | gnash::HostFunctionReport |
Namespaces | |
namespace | gnash |
Anonymous namespace for callbacks, local functions, event handlers etc. | |
Defines | |
#define | DEFAULT_LOGFILE "gnash-dbg.log" |
#define | _(String) gettext (String) |
#define | N_(String) gettext_noop (String) |
#define | LOG_ONCE(x) |
#define | __FUNCDNAME__ __FUNCTION__ |
#define | TOKENIZE_FORMAT(z, n, t) % t##n |
#define | TOKENIZE_ARGS(z, n, t) BOOST_PP_COMMA_IF(n) const T##n& t##n |
#define | LOG_TYPES |
#define | LOG_TEMPLATES(z, n, data) |
#define | ARG_NUMBER 10 |
Defines the maximum number of template arguments. | |
#define | GENERATE_LOG_TYPES(r, _, t) BOOST_PP_REPEAT(ARG_NUMBER, LOG_TEMPLATES, t) |
#define | VERBOSE_PARSE 1 |
#define | VERBOSE_ACTION 1 |
#define | VERBOSE_ASCODING_ERRORS 1 |
#define | VERBOSE_MALFORMED_SWF 1 |
#define | VERBOSE_NETWORKING 1 |
#define | IF_VERBOSE_PARSE(x) do { if ( LogFile::getDefaultInstance().getParserDump() ) { x; } } while (0); |
#define | IF_VERBOSE_ACTION(x) do { if ( LogFile::getDefaultInstance().getActionDump() ) { x; } } while (0); |
#define | IF_VERBOSE_NETWORK(x) do { if ( LogFile::getDefaultInstance().getNetwork() ) { x; } } while (0); |
#define | IF_VERBOSE_ASCODING_ERRORS(x) { if ( gnash::RcInitFile::getDefaultInstance().showASCodingErrors() ) { x; } } |
#define | IF_VERBOSE_MALFORMED_SWF(x) { if ( gnash::RcInitFile::getDefaultInstance().showMalformedSWFErrors() ) { x; } } |
#define | dummystr(x) # x |
#define | dummyestr(x) dummystr(x) |
#define | __FUNCTION__ __FILE__":"dummyestr(__LINE__) |
#define | __PRETTY_FUNCTION__ __FUNCTION__ |
#define | GNASH_REPORT_FUNCTION gnash::log_debug("entering") |
#define | GNASH_REPORT_RETURN gnash::log_debug("returning") |
Functions | |
void | gnash::processLog_network (const boost::format &fmt) |
void | gnash::processLog_error (const boost::format &fmt) |
void | gnash::processLog_unimpl (const boost::format &fmt) |
void | gnash::processLog_trace (const boost::format &fmt) |
void | gnash::processLog_debug (const boost::format &fmt) |
void | gnash::processLog_action (const boost::format &fmt) |
void | gnash::processLog_parse (const boost::format &fmt) |
void | gnash::processLog_security (const boost::format &fmt) |
void | gnash::processLog_swferror (const boost::format &fmt) |
void | gnash::processLog_aserror (const boost::format &fmt) |
void | gnash::processLog_abc (const boost::format &fmt) |
std::string | gnash::hexify (const unsigned char *bytes, size_t length, bool ascii) |
Convert a sequence of bytes to hex or ascii format. |
#define _ | ( | String | ) | gettext (String) |
Referenced by gnash::sprite_definition::add_font(), gnash::SWFMovieDefinition::add_sound_sample(), gnash::sprite_definition::addBitmap(), gnash::GC::addCollectable(), gnash::PropertyList::addDestructiveGetter(), gnash::Font::addFontNameInfo(), gnash::sound::sound_handler::addSoundBlock(), gnash::ActionExec::adjustNextPC(), gnash::TouchDevice::apply_ts_calibration(), gnash::renderer::openvg::OpenVGBitmap::applyPatternBitmap(), gnash::SharedMem::attach(), gnash::BufferedAudioStreamer::attachAuxStreamer(), gnash::media::gst::audio_bus_call(), gnash::media::ffmpeg::AudioDecoderFfmpeg::AudioDecoderFfmpeg(), gnash::media::AudioDecoderSimple::AudioDecoderSimple(), gnash::media::AudioDecoderSpeex::AudioDecoderSpeex(), gnash::sound::AOS4_sound_handler::audioTask(), gnash::GtkAggVaapiGlue::beforeRendering(), gnash::GnashVaapiImage::begin(), gnash::renderer::EGLDevice::bindClient(), gnash::DisplayObject::blendMode(), gnash::SWF::ButtonAction::ButtonAction(), gnash::NetConnection_as::call(), gnash::movie_root::callExternalJavascript(), gnash::movie_root::callInterface(), gnash::TouchDevice::check(), gnash::MouseDevice::check(), gnash::media::gst::GstUtil::check_missing_plugins(), gnash::SWFStream::close_tag(), gnash::Font::codeTableLookup(), gnash::MouseDevice::command(), gnash::SWFMovieDefinition::completeLoad(), gnash::NetConnection_as::connect(), gnash::Button::construct(), gnash::SWFStream::consumeInput(), gnash::media::gst::VideoConverterGst::convert(), gnash::FreetypeGlyphsProvider::createFace(), gnash::media::MediaHandler::createMediaParser(), gnash::renderer::EGLDevice::createPbuffer(), gnash::SdlAggGlue::createRenderHandler(), gnash::HaikuAggGlue::createRenderHandler(), gnash::GtkAggVaapiGlue::createRenderHandler(), gnash::GtkAggGlue::createRenderHandler(), gnash::FltkAggGlue::createRenderHandler(), gnash::AOS4CairoGlue::createRenderHandler(), gnash::AOS4AggGlue::createRenderHandler(), gnash::renderer::x11::X11Device::createWindow(), gnash::media::ffmpeg::AudioDecoderFfmpeg::decode(), gnash::renderer::gles1::Renderer_gles1::drawVideoFrame(), gnash::renderer::openvg::Renderer_ovg::drawVideoFrame(), dump_ctrl(), dump_shm(), gnash::Socket::eof(), gnash::renderer::opengl::Tesselator::error(), gnash::SWFMovie::exportedCharacter(), gnash::abc::Trait::finalize(), gnash::image::JpegInput::finishImage(), gnash::Font::ftProvider(), gnash::GC::fuzzyCollect(), gnash::media::gst::GstUtil::get_audiosink_element(), gnash::MovieClip::getBounds(), gnash::CharacterDictionary::getDisplayObject(), gnash::renderer::x11::X11Device::getErrorString(), gnash::SharedLib::getInitEntry(), gnash::DisplayObject::getLoadedMovie(), gnash::SharedObjectLibrary::getLocal(), gnash::Gui::getQuality(), gnash::clocktime::getTimeZoneOffset(), gnash::MovieClip::goto_frame(), gnash::Video::height(), gnash::Gui::hideMenu(), gnash::SWFMovieDefinition::importResources(), gnash::movie_definition::importResources(), gnash::media::gst::VideoConverterGst::init(), gnash::UinputDevice::init(), gnash::TouchDevice::init(), gnash::Qt4Gui::init(), gnash::renderer::openvg::Renderer_ovg::init(), gnash::MouseDevice::init(), gnash::HaikuGui::init(), gnash::GtkGlExtGlue::init(), gnash::GtkAggVaapiGlue::init(), gnash::AOS4Gui::init(), gnash::renderer::x11::X11Device::initDevice(), gnash::Extension::initModule(), gnash::Extension::initModuleWithFunc(), gnash::XMLNode_as::insertBefore(), gnash::key_is_accessible(), gnash::key_is_down(), gnash::key_is_toggled(), gnash::SWF::VideoFrameTag::loader(), gnash::SWF::StreamSoundBlockTag::loader(), gnash::SWF::StartSound2Tag::loader(), gnash::SWF::StartSoundTag::loader(), gnash::SWF::SoundStreamHeadTag::loader(), gnash::SWF::RemoveObjectTag::loader(), gnash::SWF::DoInitActionTag::loader(), gnash::SWF::DoActionTag::loader(), gnash::SWF::DoABCTag::loader(), gnash::SWF::DefineText2Tag::loader(), gnash::SWF::DefineTextTag::loader(), gnash::SWF::DefineShapeTag::loader(), gnash::SWF::DefineFontInfoTag::loader(), gnash::SWF::DefineFontNameTag::loader(), gnash::SWF::DefineFontAlignZonesTag::loader(), gnash::SWF::DefineButton2Tag::loader(), gnash::SWF::DefineButtonTag::loader(), gnash::SWF::DefineButtonSoundTag::loader(), gnash::SWF::DefineButtonCxformTag::loader(), gnash::SWF::DefineBitsTag::loader(), gnash::SWF::CSMTextSettingsTag::loader(), gnash::RcInitFile::loadFiles(), main(), gnash::MovieFactory::makeMovie(), gnash::NetworkAdapter::makeStream(), gnash::media::gst::VideoInputGst::makeWebcamDeviceSelection(), gnash::GcResource::markReachableResources(), gnash::media::gst::MediaParserGst::MediaParserGst(), gnash::DisplayList::mergeDisplayList(), gnash::Button::mouseEvent(), gnash::DisplayList::moveDisplayObject(), gnash::SWFStream::open_tag(), gnash::SharedLib::openLib(), gnash::renderer::openvg::OpenVGBitmap::OpenVGBitmap(), gnash::ActionExec::operator()(), gnash::action_buffer::operator[](), gnash::RcInitFile::parseFile(), gnash::XML_as::parseXML(), gnash::sound::Mkit_sound_handler::pause(), gnash::sound::AOS4_sound_handler::pause(), gnash::NetStream_as::pause(), gnash::NetStream_as::play(), gnash::SdlAggGlue::prepDrawingArea(), gnash::HaikuAggGlue::prepDrawingArea(), gnash::AOS4CairoGlue::prepDrawingArea(), gnash::AOS4AggGlue::prepDrawingArea(), gnash::renderer::openvg::Renderer_ovg::printVGParams(), gnash::renderer::openvg::Renderer_ovg::printVGPath(), gnash::media::gst::VideoDecoderGst::push(), gnash::VM::pushCallFrame(), gnash::renderer::EGLDevice::queryEGLConfig(), gnash::qwidget::qwidget(), gnash::SWF::TextRecord::read(), gnash::SWFParser::read(), gnash::SWF::ShapeRecord::read(), gnash::image::JpegInput::read(), gnash::SWF::ButtonRecord::read(), gnash::action_buffer::read(), gnash::SWFMovieDefinition::read_all_swf(), gnash::SWFStream::read_d64(), gnash::action_buffer::read_int16(), gnash::action_buffer::read_int32(), gnash::SWFStream::read_long_float(), gnash::action_buffer::read_string(), gnash::SWFStream::read_u16(), gnash::SWFStream::read_u32(), gnash::SWF::DefineFontTag::readCodeTable(), gnash::action_buffer::readConstantPool(), gnash::InputDevice::readData(), gnash::SWFMovieDefinition::readHeader(), gnash::image::JpegInput::readHeader(), gnash::movie_root::registerClass(), gnash::TextField::removeTextField(), gnash::GtkAggVaapiGlue::render(), gnash::renderer::gles1::Renderer_gles1::Renderer_gles1(), gnash::Renderer::renderToImage(), gnash::movie_root::replaceLevel(), gnash::Qt4AggGlue::resize(), gnash::Gui::resizeWindow(), gnash::Player::run(), gnash::AOS4Gui::run(), gnash::Extension::scanAndLoad(), gnash::Extension::scanDir(), gnash::UinputDevice::scanForDevice(), gnash::TouchDevice::scanForDevices(), gnash::MouseDevice::scanForDevices(), gnash::InputDevice::scanForDevices(), gnash::sound::SDL_sound_handler::SDL_sound_handler(), gnash::SWFStream::seek(), gnash::NetStream_as::seek(), gnash::media::ffmpeg::MediaParserFfmpeg::seek(), gnash::renderer::gles1::Renderer_gles1::set_antialiased(), gnash::renderer::openvg::Renderer_ovg::set_antialiased(), gnash::SWFMovieDefinition::set_jpeg_loader(), gnash::Gui::setClipboard(), gnash::Font::setCodeTable(), gnash::Gui::setFullscreen(), gnash::setHeight(), gnash::gui::FBAggGlue::setInvalidatedRegions(), gnash::CallFrame::setLocalRegister(), gnash::Gui::setQuality(), gnash::GcResource::setReachable(), gnash::VM::setRegister(), gnash::DumpGui::setRenderHandlerSize(), gnash::TextField::setRestrict(), gnash::media::gst::VideoInputGst::setWebcam(), gnash::SharedLib::SharedLib(), gnash::Gui::showMenu(), gnash::Gui::showMouse(), gnash::ActionExec::skip_actions(), gnash::Gui::start(), gnash::DisplayList::swapDepths(), gnash::Font::unitsPerEM(), gnash::sound::Mkit_sound_handler::unpause(), gnash::sound::AOS4_sound_handler::unpause(), gnash::Gui::unsetFullscreen(), gnash::NetStream_as::update(), gnash::RcInitFile::updateFile(), gnash::Gui::updateStageMatrix(), gnash::VaapiImage::VaapiImage(), gnash::VaapiSubpicture::VaapiSubpicture(), gnash::NetConnection_as::validateURL(), gnash::media::ffmpeg::VideoConverterFfmpeg::VideoConverterFfmpeg(), gnash::media::gst::VideoConverterGst::VideoConverterGst(), gnash::media::ffmpeg::VideoDecoderFfmpeg::VideoDecoderFfmpeg(), gnash::media::gst::VideoDecoderGst::VideoDecoderGst(), gnash::media::gst::VideoInputGst::VideoInputGst(), gnash::sound::WAVWriter::WAVWriter(), gnash::media::gst::VideoInputGst::webcamBreakVideoDisplayLink(), gnash::media::gst::VideoInputGst::webcamBreakVideoSaveLink(), gnash::media::gst::VideoInputGst::webcamCreateSaveBin(), gnash::media::gst::VideoInputGst::webcamMakeVideoDisplayLink(), gnash::media::gst::VideoInputGst::webcamMakeVideoSaveLink(), gnash::as_value::writeAMF0(), gnash::image::Output::writeImageRGBA(), gnash::renderer::x11::X11Device::X11Device(), gnash::Gui::yesno(), gnash::media::AudioDecoderSimple::~AudioDecoderSimple(), gnash::media::AudioDecoderSpeex::~AudioDecoderSpeex(), gnash::renderer::directfb::DirectFBDevice::~DirectFBDevice(), gnash::gui::FBOvgGlue::~FBOvgGlue(), gnash::FreetypeGlyphsProvider::~FreetypeGlyphsProvider(), gnash::SharedMem::~SharedMem(), gnash::UinputDevice::~UinputDevice(), and gnash::Video::~Video().
#define __FUNCDNAME__ __FUNCTION__ |
#define __FUNCTION__ __FILE__":"dummyestr(__LINE__) |
Referenced by handleInvoke(), gnash::media::gst::VideoInputGst::makeWebcamDeviceSelection(), gnash::media::ffmpeg::MediaParserFfmpeg::seek(), gnash::media::gst::VideoInputGst::setWebcam(), gnash::nsPluginInstance::SetWindow(), gnash::media::gst::VideoInputGst::webcamBreakVideoDisplayLink(), gnash::media::gst::VideoInputGst::webcamBreakVideoSaveLink(), gnash::media::gst::VideoInputGst::webcamCreateSaveBin(), and gnash::media::gst::VideoInputGst::webcamMakeVideoSaveLink().
#define __PRETTY_FUNCTION__ __FUNCTION__ |
Referenced by gnash::GnashPluginScriptObject::Construct(), gnash::GnashPluginScriptObject::Enumerate(), gnash::nsPluginInstance::init(), gnash::GnashPluginScriptObject::InvokeDefault(), gnash::GnashPluginScriptObject::marshalConstruct(), gnash::GnashPluginScriptObject::marshalEnumerate(), NPN_Construct(), NPN_CreateObject(), NPN_DestroyStream(), NPN_Enumerate(), NPN_Evaluate(), NPN_GetIntIdentifier(), NPN_GetProperty(), NPN_GetStringIdentifier(), NPN_GetStringIdentifiers(), NPN_GetURL(), NPN_GetURLNotify(), NPN_HasMethod(), NPN_HasProperty(), NPN_IdentifierIsString(), NPN_IntFromIdentifier(), NPN_InvalidateRect(), NPN_InvalidateRegion(), NPN_Invoke(), NPN_InvokeDefault(), NPN_NewStream(), NPN_PluginThreadAsyncCall(), NPN_PostURL(), NPN_PostURLNotify(), NPN_ReloadPlugins(), NPN_RemoveProperty(), NPN_RequestRead(), NPN_SetException(), NPN_Status(), NPN_UserAgent(), NPN_UTF8FromIdentifier(), NPN_Write(), NS_DestroyPluginInstance(), and NS_PluginShutdown().
#define ARG_NUMBER 10 |
Defines the maximum number of template arguments.
The preprocessor generates templates with 1..ARG_NUMBER arguments.
#define DEFAULT_LOGFILE "gnash-dbg.log" |
#define GENERATE_LOG_TYPES | ( | r, | ||
_, | ||||
t | ||||
) | BOOST_PP_REPEAT(ARG_NUMBER, LOG_TEMPLATES, t) |
Calls the macro LOG_TEMPLATES an ARG_NUMBER number of times, each time adding an extra typename argument to the template.
#define GNASH_REPORT_FUNCTION gnash::log_debug("entering") |
Referenced by gnash::VaapiGlobalContext::get().
#define GNASH_REPORT_RETURN gnash::log_debug("returning") |
#define IF_VERBOSE_ASCODING_ERRORS | ( | x | ) | { if ( gnash::RcInitFile::getDefaultInstance().showASCodingErrors() ) { x; } } |
Referenced by gnash::NetConnection_as::call(), gnash::Button::construct(), gnash::fileio_fopen(), gnash::MovieClip::getBounds(), gnash::XMLNode_as::insertBefore(), gnash::invoke(), gnash::key_is_down(), gnash::NetStream_as::play(), gnash::ActionExec::pushWith(), gnash::movie_root::replaceLevel(), gnash::setHeight(), and gnash::DisplayList::swapDepths().
#define IF_VERBOSE_MALFORMED_SWF | ( | x | ) | { if ( gnash::RcInitFile::getDefaultInstance().showMalformedSWFErrors() ) { x; } } |
Referenced by gnash::sprite_definition::add_font(), gnash::sprite_definition::addBitmap(), gnash::Font::addFontNameInfo(), gnash::SWF::ButtonAction::ButtonAction(), gnash::SWF::TextRecord::displayRecords(), gnash::SWFMovie::exportedCharacter(), gnash::movie_definition::importResources(), gnash::SWF::VideoFrameTag::loader(), gnash::SWF::SymbolClassTag::loader(), gnash::SWF::StreamSoundBlockTag::loader(), gnash::SWF::StartSoundTag::loader(), gnash::SWF::SoundStreamHeadTag::loader(), gnash::SWF::DoInitActionTag::loader(), gnash::SWF::DoActionTag::loader(), gnash::SWF::DoABCTag::loader(), gnash::SWF::DefineSceneAndFrameLabelDataTag::loader(), gnash::SWF::DefineFontInfoTag::loader(), gnash::SWF::DefineFontNameTag::loader(), gnash::SWF::DefineFontAlignZonesTag::loader(), gnash::SWF::DefineButtonSoundTag::loader(), gnash::SWF::DefineButtonCxformTag::loader(), gnash::SWF::DefineBitsTag::loader(), gnash::DisplayList::moveDisplayObject(), gnash::ActionExec::operator()(), gnash::SWF::ShapeRecord::read(), gnash::SWF::ButtonRecord::read(), gnash::action_buffer::read(), gnash::SWFMovieDefinition::read_all_swf(), gnash::SWFMovieDefinition::readHeader(), gnash::Font::setCodeTable(), and gnash::ActionExec::skip_actions().
#define IF_VERBOSE_NETWORK | ( | x | ) | do { if ( LogFile::getDefaultInstance().getNetwork() ) { x; } } while (0); |
#define IF_VERBOSE_PARSE | ( | x | ) | do { if ( LogFile::getDefaultInstance().getParserDump() ) { x; } } while (0); |
Referenced by gnash::SWFMovieDefinition::add_sound_sample(), gnash::SWF::ButtonAction::ButtonAction(), gnash::CharacterDictionary::getDisplayObject(), gnash::SWF::SymbolClassTag::loader(), gnash::SWF::StartSound2Tag::loader(), gnash::SWF::StartSoundTag::loader(), gnash::SWF::SoundStreamHeadTag::loader(), gnash::SWF::SetTabIndexTag::loader(), gnash::SWF::RemoveObjectTag::loader(), gnash::SWF::DoInitActionTag::loader(), gnash::SWF::DoActionTag::loader(), gnash::SWF::DoABCTag::loader(), gnash::SWF::DefineText2Tag::loader(), gnash::SWF::DefineTextTag::loader(), gnash::SWF::DefineShapeTag::loader(), gnash::SWF::DefineScalingGridTag::loader(), gnash::SWF::DefineMorphShapeTag::loader(), gnash::SWF::DefineFontAlignZonesTag::loader(), gnash::SWF::DefineButton2Tag::loader(), gnash::SWF::DefineButtonTag::loader(), gnash::SWF::DefineButtonCxformTag::loader(), gnash::SWF::DefineBitsTag::loader(), gnash::SWF::CSMTextSettingsTag::loader(), gnash::SWFStream::open_tag(), gnash::SWF::TextRecord::read(), gnash::SWFParser::read(), gnash::SWF::SoundInfoRecord::read(), gnash::SWF::ShapeRecord::read(), gnash::SWF::ButtonRecord::read(), gnash::SWF::DefineFontTag::readCodeTable(), and gnash::SWFMovieDefinition::readHeader().
#define LOG_ONCE | ( | x | ) |
{ \ static bool warned = false; \ if (!warned) { warned = true; x; } \ }
Referenced by gnash::DisplayObject::blendMode(), gnash::SWF::ScriptLimitsTag::executeState(), gnash::VaapiGlobalContext::get(), gnash::DisplayObject::getLoadedMovie(), gnash::clocktime::getTimeZoneOffset(), gnash::Gui::hideMenu(), gnash::SWF::SoundStreamHeadTag::loader(), gnash::SWF::SetTabIndexTag::loader(), gnash::SWF::DefineFontInfoTag::loader(), gnash::SWF::DefineFontAlignZonesTag::loader(), gnash::SWF::CSMTextSettingsTag::loader(), gnash::SWF::ShapeRecord::read(), gnash::SWF::ButtonRecord::read(), gnash::Gui::setClipboard(), gnash::Gui::showMenu(), gnash::Gui::showMouse(), and gnash::Video::~Video().
#define LOG_TEMPLATES | ( | z, | ||
n, | ||||
data | ||||
) |
template<BOOST_PP_ENUM_PARAMS(BOOST_PP_INC(n), typename T)>\ inline void log_##data(BOOST_PP_REPEAT(BOOST_PP_INC(n), TOKENIZE_ARGS, t)) \ {\ if (LogFile::getDefaultInstance().getVerbosity() == 0) return; \ boost::format f(t0); \ using namespace boost::io; \ f.exceptions(all_error_bits ^ (too_many_args_bit | \ too_few_args_bit | \ bad_format_string_bit)); \ processLog_##data(f BOOST_PP_REPEAT_FROM_TO(1, \ BOOST_PP_INC(n), \ TOKENIZE_FORMAT, t));\ }
This actually creates the template functions using the TOKENIZE functions above. The templates look like this: template<typename T0 , typename T1 , typename T2> void log_error(const T0& t0 , const T1& t1 , const T2& t2) { if (LogFile::getDefaultInstance().getVerbosity() == 0) return; boost::format f(t0); using namespace boost::io; f.exceptions(all_error_bits ^ (too_many_args_bit | too_few_args_bit | bad_format_string_bit)); processLog_error(f % t1 % t2); }
Only not as nicely indented.
Use "g++ -E log.h" or "cpp log.h" to check.
#define LOG_TYPES |
(error) (debug) (unimpl) (aserror) (swferror) \ (security) (action) (parse) (trace) (abc) (network)
This is a sequence of different log message types to be used in the code. Append the name to log_ to call the function, e.g. log_error, log_unimpl.
#define N_ | ( | String | ) | gettext_noop (String) |
#define TOKENIZE_ARGS | ( | z, | ||
n, | ||||
t | ||||
) | BOOST_PP_COMMA_IF(n) const T##n& t##n |
Macro to add a number of arguments to the templated function corresponding to the number of template arguments. Produces code like this: "const T0& t0, const T1& t1, const T2& t2 ..."
#define TOKENIZE_FORMAT | ( | z, | ||
n, | ||||
t | ||||
) | % t##n |
This heap of steaming preprocessor code magically converts printf-style statements into boost::format messages using templates. Macro to feed boost::format strings to the boost::format object, producing code like this: "% t1 % t2 % t3 ..."
#define VERBOSE_ACTION 1 |
#define VERBOSE_ASCODING_ERRORS 1 |
#define VERBOSE_MALFORMED_SWF 1 |
#define VERBOSE_NETWORKING 1 |
#define VERBOSE_PARSE 1 |