From b322643f1725063793228292625ad155577b30d6 Mon Sep 17 00:00:00 2001 From: Magnus Auvinen Date: Wed, 27 Aug 2008 15:51:09 +0000 Subject: missed some files --- datasrc/compile.py | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) (limited to 'datasrc/compile.py') diff --git a/datasrc/compile.py b/datasrc/compile.py index d3970ed6..6258b905 100644 --- a/datasrc/compile.py +++ b/datasrc/compile.py @@ -11,6 +11,16 @@ def create_enum_table(names, num): lines += ["\t%s,"%name] lines += ["\t%s" % num, "};"] return lines + +def create_flags_table(names): + lines = [] + lines += ["enum", "{"] + i = 0 + for name in names: + lines += ["\t%s = 1<<%d," % (name,i)] + i += 1 + lines += ["};"] + return lines def EmitEnum(names, num): print "enum" @@ -20,6 +30,15 @@ def EmitEnum(names, num): print "\t%s,"%name print "\t%s" % num print "};" + +def EmitFlags(names, num): + print "enum" + print "{" + i = 0 + for name in names: + print "\t%s = 1<<%d," % (name,i) + i += 1 + print "};" gen_network_header = False @@ -80,7 +99,11 @@ if gen_network_header: print network.RawHeader for e in network.Enums: - for l in create_enum_table(["%s_%s"%(e.name, v) for v in e.values], "NUM_%sS"%e.name): print l + for l in create_enum_table(["%s_%s"%(e.name, v) for v in e.values], 'NUM_%sS'%e.name): print l + print "" + + for e in network.Flags: + for l in create_flags_table(["%s_%s" % (e.name, v) for v in e.values]): print l print "" for l in create_enum_table(["NETOBJ_INVALID"]+[o.enum_name for o in network.Objects], "NUM_NETOBJTYPES"): print l -- cgit 1.4.1