コード例 #1
0
        /// <summary>
        /// Generates declaration and data files
        /// </summary>
        /// <param name="in_header_file"></param>
        /// <param name="in_default_value_file"></param>
        /// <param name="in_value_info_file"></param>
        public void GenerateFiles(ParserConfig in_parser_config)
        {
            string declaration;

            // generate header declaration
            if (in_parser_config.UseOffsets)
            {
                declaration = "#define cfgVAL_" + m_parent_group.ID.ToUpper() + "_" + m_id.ToUpper() + " " + m_binary_value_offset.ToString();
            }
            else
            {
                declaration = "#define cfgVAL_" + m_parent_group.ID.ToUpper() + "_" + m_id.ToUpper() + " " + m_value_index.ToString();
            }

            in_parser_config.HeaderFile.AppendLine(declaration);

            // generate value info file
            BinaryValueInfo value_info = new BinaryValueInfo((UInt16)m_binary_value_offset, (byte)m_binary_length, m_value_type);

            byte[] value_info_binary = RawBinarySerialization.SerializeObject(value_info);
            in_parser_config.ValueInfoFile.Write(value_info_binary, 0, value_info_binary.Length);

            // generate default data
            byte[] default_value = GetBinaryData();
            in_parser_config.DefaultValueFile.Write(default_value, 0, default_value.Length);
        }
コード例 #2
0
 /// <summary>
 /// Generates declaration and data files
 /// </summary>
 /// <param name="in_header_file"></param>
 /// <param name="in_default_value_file"></param>
 /// <param name="in_value_info_file"></param>
 public void GenerateFiles(ParserConfig in_parser_config)
 {
     // process all groups
     for (int i = 0; i < m_values.Count; i++)
     {
         m_values[i].GenerateFiles(in_parser_config);
     }
 }
コード例 #3
0
        /// <summary>
        /// Generates declaration and data files
        /// </summary>
        /// <param name="in_header_file"></param>
        /// <param name="in_default_value_file"></param>
        /// <param name="in_value_info_file"></param>
        public void GenerateFiles(ParserConfig in_parser_config)
        {
            for (int i = 0; i < m_values.Count; i++)
            {
                string declaration = "#define cfgENUM_" + m_id.ToUpper() + "_" + m_values[i].ID.ToUpper() + " " + i.ToString();

                in_parser_config.HeaderFile.AppendLine(declaration);
            }

            in_parser_config.HeaderFile.AppendLine();
        }
コード例 #4
0
        /// <summary>
        /// Generates declaration and data files
        /// </summary>
        /// <param name="in_header_file"></param>
        /// <param name="in_default_value_file"></param>
        /// <param name="in_value_info_file"></param>
        public void GenerateFiles(ParserConfig in_parser_config)
        {
            // process enums
            if (m_enum_defs.Count > 0)
            {
                in_parser_config.HeaderFile.AppendLine("// Enum definitions");

                for (int i = 0; i < m_enum_defs.Count; i++)
                {
                    m_enum_defs[i].GenerateFiles(in_parser_config);
                }
            }

            if (m_groups.Count > 0)
            {
                in_parser_config.HeaderFile.AppendLine("// Value definitions");

                // process all groups
                for (int i = 0; i < m_groups.Count; i++)
                {
                    m_groups[i].GenerateFiles(in_parser_config);
                }
            }
        }