[module CppBindBody('http://www.eclipse.org/uml2/4.0.0/UML')/] [import org::eclipse::papyrus::acceleo::GenUtils/] [import org::eclipse::papyrus::cpp::codegen::utils::CppGenUtils/] [import org::eclipse::papyrus::cpp::codegen::utils::ClassUtils/] [import org::eclipse::papyrus::cpp::codegen::acceleo::CppIncludeUtils/] [import org::eclipse::papyrus::cpp::codegen::preferences::CppCodeGenUtils/] [import org::eclipse::papyrus::cpp::codegen::acceleo::Constants/] [import org::eclipse::papyrus::cpp::codegen::acceleo::util::CppTemplates/] [import org::eclipse::papyrus::cpp::codegen::acceleo::util::clazz::CppClassIncludeClassDeclaration/] [template public CppBindBody(class : Class)] #define [getFullNameUC()/]_BODY /************************************************************ [class.name/] template binding body ************************************************************/ [CppIncludePreBody()/] [constIncludeHFile()/] #include <[_package.getFullPath()/]/[class.name/].[getHeaderSuffix()/]> [CppIncludeBody()/] [openNS()/] [constDerivedIncludes()/] [CppClassAllIncludesDeclaration()/] /************************************************************/ [let tb : TemplateBinding = getTemplateBindings()] [let templateElement : Element = tb.target->asSequence()->first()] template class [templateElement.owner.oclAsType(NamedElement).name/]<[for (tb.parameterSubstitution)][CppTemplateBindingParameter()/][/for]>; [/let][/let] [closeNS()/] /************************************************************ End of [class.name/] template binding body ************************************************************/ [/template]