| 105 | } |
| 106 | |
| 107 | bool GenerateHeader(std::ostream& os) { |
| 108 | auto enum_names = tflite::EnumNamesBuiltinOperator(); |
| 109 | |
| 110 | // Check if all the input enum names are valid. |
| 111 | for (auto enum_value : EnumValuesBuiltinOperator()) { |
| 112 | auto enum_name = enum_names[enum_value]; |
| 113 | if (!IsValidInputEnumName(enum_name)) { |
| 114 | std::cerr << "Invalid input enum name: " << enum_name << std::endl; |
| 115 | return false; |
| 116 | } |
| 117 | } |
| 118 | |
| 119 | os << kFileHeader; |
| 120 | for (auto enum_value : EnumValuesBuiltinOperator()) { |
| 121 | auto enum_name = enum_names[enum_value]; |
| 122 | os << " "; |
| 123 | os << ConstantizeVariableName(enum_name); |
| 124 | os << " = "; |
| 125 | os << enum_value; |
| 126 | os << ",\n"; |
| 127 | } |
| 128 | os << kFileFooter; |
| 129 | return true; |
| 130 | } |
| 131 | |
| 132 | } // namespace builtin_ops_header |
| 133 | } // namespace tflite |