List<String> generateTypesToIncludes(final List<Token> tokens)
    {
        final List<String> typesToInclude = new ArrayList<>();

        for (final Token token : tokens)
        {
            switch (token.signal())
            {
                case BEGIN_ENUM:
                case BEGIN_SET:
                case BEGIN_COMPOSITE:
                    typesToInclude.add(token.applicableTypeName());
                    break;

                default:
                    break;
            }
        }

        return typesToInclude;
    }
Generate the composites for dealing with the message header.

@throws IOException if an error is encountered when writing the output.
sbe-tool/src/main/java/uk/co/real_logic/sbe/generation/c/CGenerator.java