• Tag Archives Внутренние тулзы
  • Генерация классов

    Posted on by admin

    Последовал совету Hyborg и написал генератор классов из xml в cpp с помощью xslt.

    Впринципе xslt оказался достаточно простым для человека который ни разу с ним не работал.

    пример xml  описания

    результирующий файл

    сам конвертер

    Приветствуются мысли о том, как можно это сделать проще 🙂


  • Мысли об удобстве

    Posted on by admin

    Возникала мысль создать набор макросов для повышения удобства написания кода и выдирания параметров.

    Дело в том, что каждый объект имеет некоторый формат данных, которые он умеет читать из конфигурационных файлов. например картинка умеет читать название загрузчика и имя файла который надо загрузить, текстовый объект умеет читать цвет текста, шрифт, его размер и сам текст. На данный момент это реализовано прямым кодом. Есть у объекта некий метод load который вычитывает все эти параметры. Минусы очевидны — нет простого способа получить список параметров для документации и каждый раз надо писать похожий код.

    Надо сделать чтото типа макросов: REGISTER_CONFIG_VARIABLE(type, name, optional, default value). Как вариант сделать это в отдельном классе, который вместить во все классы объектов, чтобы небыло лишнего внешнего интерфейса и далее писать:

    CREATE_CONFIG_PARSER(TextObject)

    REGISTER_CONFIG_VARIABLE(type, name, optional, default value)

    При этом препроцессором надо будет создать класс и функцию которые будут обслуживать данный набор переменных. Надо подумать над этой идеей.