Добавление блоков кода по шаблону
Есть несколько .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 методов и срок, за который планируете делать такой объем.