-#!/usr/bin/env python2
+#!/usr/bin/env python3
import argparse
import os
import sys
import logging
-from vapi_c_gen import CField, CStruct, CSimpleType, CStructType, CMessage, \
- json_to_c_header_name
+from vapi_c_gen import CField, CEnum, CStruct, CSimpleType, CStructType,\
+ CMessage, json_to_c_header_name, CAlias
from vapi_json_parser import JsonParser
pass
+class CppEnum(CEnum):
+ pass
+
+
+class CppAlias(CAlias):
+ pass
+
+
class CppSimpleType (CSimpleType):
pass
return "%s%s" % (self.name[0].upper(), self.name[1:])
def get_req_template_name(self):
- if self.is_dump():
+ if self.reply_is_stream:
template = "Dump"
else:
template = "Request"
sys.stdout = io
d, f = os.path.split(j)
include_guard = "__included_hpp_%s" % (
- f.replace(".", "_").replace("/", "_").replace("-", "_"))
+ f.replace(".", "_").replace("/", "_").replace("-", "_").replace(
+ "@", "_"))
print("#ifndef %s" % include_guard)
print("#define %s" % include_guard)
print("")
print("/* m.get_cpp_constructor() */")
print("%s" % m.get_cpp_constructor())
print("")
- if not m.is_reply():
+ if not m.is_reply and not m.is_event:
if add_debug_comments:
print("/* m.get_alloc_template_instantiation() */")
print("%s" % m.get_alloc_template_instantiation())
print("/* m.get_msg_class_instantiation() */")
print("%s" % m.get_msg_class_instantiation())
print("")
- if m.is_reply():
+ if m.is_reply or m.is_event:
if add_debug_comments:
print("/* m.get_reply_type_alias() */")
print("%s" % m.get_reply_type_alias())
simple_type_class=CppSimpleType,
struct_type_class=CppStructType,
field_class=CppField,
- message_class=CppMessage)
+ enum_class=CppEnum,
+ message_class=CppMessage,
+ alias_class=CppAlias)
gen_cpp_headers(jsonparser, logger, args.prefix, args.gen_h_prefix,
args.remove_path)