Integrations (PTC products, 3rd party products and code) > Code integration (Ada, ARINC 653, C, C#, C++, IDL, Java, SQL and VB) > IDL Code > Generating IDL code > How to > Customizing ACS Code Generator DLLs - optional (IDL code)
  
Customizing ACS Code Generator DLLs - optional (IDL code)
If you want to customize how ACS generates IDL code, you must create a customized version of an existing ACS Code Generator DLL.
For more information about customizing an ACS Code Generator DLL, see Overview of Generation Templates (link works only if TDK is installed).
The TDK model for generating the IDL ACS Code Generator DLL has the following build options available when you right-click the TheGenerator package and point to TDK options:
Build submenu:
Top-level Module Files - specifies that the ACS Code Generator DLL will support IDL3+ and will generate a top-level module files.
Individual Item Files - specifies that the ACS Code Generator DLL will support IDL3+ and will generate individual item files.
File > Name submenu:
Standard- specifies that the name of each generated file is based on the item for which the file is generated.
Elaborated- specifies that the name of each generated file is based on the item for which the file is generated and that item's scoping modules. This is the default option for the provided ACS Code Generator DLL.
File > Structure submenu: The Per Interface, Per Module and Per Top Level Module commands are mutually exclusive. Likewise, the Module Directories commands (True, False and Use Ignore Flag) are mutually exclusive.
Per Interface - specifies that ACS generates an IDL file for each Interface and Component that is not an assembly.
Per Module - specifies that Interfaces and Components are not generated in their own individual files, instead they are generated within the IDL file generated for the scoping module.
Per Top Level Module - specifies that Interfaces and Components are not generated in their own individual files, instead they are generated within the IDL file generated for the appropriate top-level module. ACS generates sub-modules as nested modules in their parent's IDL file
Module Directories > True - specifies that for Package set up as a namespace, ACS generates a folder for that Package.
Module Directories > False - specifies that for Package set up as a namespace, ACS does not generate a folder for that Package
Module Directories > Use Ignore Flag - specifies that for a Package set up as a namespace, ACS generates a folder for that Package depending on the tagged value of the Ignore tag definition, which is applied by the «source» stereotype. If the tagged value is set to FALSE, ACS generates a folder for the Package; if the tagged value is set to TRUE, ACS does not generate a folder for the Package.
Includes option:
Relative Paths - specifies that #includes are generated with paths relative to the including item.
File Only - specifies that #includes are generated with the included file name only. This is the default option for the provided ACS Code Generator DLLs.
Generate Composition Files option:
True- specifies that composition files (.cidl) are generated for Components.
False- specifies that composition files (.cidl) are not generated for Components. This is the default option for the provided ACS Code Generator DLLs.
Generate Assemblies option:
True - specifies that IDL files will be generated for assemblies as for regular components.
False - specifies that IDL files will not be generated for assemblies. This is the default option for the provided ACS Code Generator DLL.