Добавление блоков кода по шаблону

Гость17 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
14.12.2007

Есть несколько .h, .cpp файлов, фрагмент программы, который занимается распознаванием команд и затем вызовом соответствующий методов или выполнением соответствующих действий.

НАПРИМЕР:

Вам дается doxygen-описание метода ISceneManager::addOctTreeSceneNode (см. вложение method-example.zip), нужно по этому описанию создать

файл addOctTreeSceneNodeC.h(см. вложение) addOctTreeSceneNodeC.cpp (см. вложение)

дополнить файл CmdProcessor.h (см. вложение), добавив в enum CmdType элемент smr_addOctTreeSceneNode

дополнить файл CmdProcessor.cpp, добавив в одно место распознавание команды

if(CmdName==L"smr_addOctTreeSceneNode")

{

return CmdType::smr_addOctTreeSceneNode;

}

в другое её реализацию

case CmdType::smr_addOctTreeSceneNode:

sc=new addOctTreeSceneNodeC(*cmd);

nd=smr->addOctTreeSceneNode(((addOctTreeSceneNodeC*)sc)->msh,((addOctTreeSceneNodeC*)sc)->parent,((addOctTreeSceneNodeC*)sc)->mppn);

obid=ObDb::Register(nd,ObDbElementType::node,ObDbSceneElementType::SceneNode,obid);

nd->setID(obid);

reply->name=cmd->name;

reply->addVar("obid",SCommand::Convert::longToStringw(obid));

break;

Смысл такой. CmdProcessor получает комманду типа Command (см. Command.h)

Команда эта представляет собой Словарик из названий параметров и их значений.

И конвертирует её в специальную команду (для каждой команды - свой класс, в нашем случае addOctTreeSceneNodeC.)

В addOctTreeSceneNodeC самое главное и единственное - конструктор, он принимает в качестве параметра объект типа Command и выбирает нужны параметры, заполняя свои поля, а поля у этой специальной команды соотвествуют параметрам метода.

Далее вызывается сам нужный метод, с параметрами из экземпляра это специальной команды и возможно создается какой-то объект, он потом регистрируется и заполняется CommandReply. (но иногда и ничего не возращается, это будет помечено)

Если ещё не запутались милости просим.

Происходит так: даем проект, сделанный в Visual Studio 2005, вы получаете от нас файлы типа method-example.zip в котором скажем 20 методов.

Делаете, мы тестируем и Вы получаете деньги.

Возможен вариант 50/50.

Пожалуйста, указывайте в ставке цену за 20 методов и срок, за который планируете делать такой объем.

Заявки фрилансеров