Integrations (PTC products, 3rd party products and code) > Code integration (Ada, ARINC 653, C, C#, C++, IDL, Java, SQL and VB) > C++ code > Generating C++ code > Generating C++ code > Mapping Information > Mapping information for state diagrams > Model mapping for C++ (C++ code)
  
Model mapping for C++ (C++ code)
If the Model directly owns Attributes, Operations or Type Definitions, ACS generates a header and implementation file for the Model. The header and implementation files declare and define the Model's Attributes, Operations and Type Definitions, and are derived from the properties and the tagged values set for Tag Definitions that are applied by the «C++ Package» stereotype.
Properties:
The Name property is generated as the name of the header and implementation files.
* 
ACS may modify the model name that is added to the code to make it valid for C++. You can specify the exact model name to add to the code through the CODE_GENERATION_NAME property of the Model. Tell me more...
Child items:
·If the Model directly owns Attributes, the Attributes are generated in the header and implementation files created for the Model. For Attribute mapping information, see Attribute mapping for C++ (C++ code). Example code
If the Model directly owns Basic Types, the Basic Types are ignored.
If the Model directly owns Classes, header and implementation files are generated for each Class. For Class mapping information, see Class mapping for C++ (C++ code)
If the Model directly owns Data Types, header and implementation files are generated for each Data Type. For Data Type mapping information, see Data type mapping for C++ (C++ code)
If the Model directly owns Interfaces, a header file is generated for each Interface. For Interface mapping information, see Interface mapping for C++ (C++ code).
·If the Model directly owns Operations, the Operations are generated in the header and implementation files created for the Model. For Operation mapping information, see Operation mapping for C++ (C++ code). Example code.
·If the Model directly owns Signals, header and implementation files are generated for each Signal. For Signal mapping information, see Signal mapping for C++ (C++ code)
·If the Model directly owns Type Definitions, the Type Definitions are generated in the header and implementation files created for the Model. For Type Definition mapping information, see Type definition mapping for C++ (C++ code). Example code.
Tag Definitions:
If the tagged value of the C++ Header Include tag definition has been set, the value is generated at the beginning of the header file so that you can generate your own #includes to files.
If the tagged value of the C++ Implementation Include tag definition has been set, the value is generated at the beginning of the implementation file so that you can generate your own #includes to files.