kdo_class_obj.AddReference(extd_obj.MyDotHCode())
				kdo_class_obj.AddRefField(extd_obj.RelDotHField_Syskey())
				kdo_class_obj.AddInitRefField(extd_obj.RelDotCppField_Syskey())
				kdo_class_obj.AddInitRef(extd_obj.MyInitDotCppCode())

				rel_kdo_class_obj = kdo_class_list[extd_obj.RelClassName()]
				rel_kdo_class_obj.AddBeforeClass(extd_obj.RelBeforeClass())
				rel_kdo_class_obj.AddReference(extd_obj.RelDotHCode())

				rel_kdo_class_obj.AddCollectionFunction(extd_obj.RelDotHCollectionFunction())
				rel_kdo_class_obj.AddRelListFunction(extd_obj.RelDotCppCollectionFunction())
				kdo_class_list[extd_obj.RelClassName()] = rel_kdo_class_obj

		if class_chirld.tag == 'References':
			for reference_element in class_chirld:
				ref_obj = xml2ref(curr_class_name, reference_element.attrib['Name'], reference_element.attrib['Type'], reference_element.attrib['Relation'])
				kdo_class_obj.AddBeforeClass(ref_obj.MyBeforeClass())
				kdo_class_obj.AddReference(ref_obj.MyDotHCode())
				kdo_class_obj.AddInitRef(ref_obj.MyInitDotCppCode())
				if curr_class_name == 'ManufactureProcess':
					print(ref_obj.my_class_name)
				kdo_class_obj.AddRefField(ref_obj.RelDotHField_Syskey())
				kdo_class_obj.AddInitRefField(ref_obj.RelDotCppField_Syskey())

				rel_kdo_class_obj = kdo_class_list[ref_obj.RelClassName()]
				rel_kdo_class_obj.AddBeforeClass(ref_obj.RelBeforeClass())
				rel_kdo_class_obj.AddReference(ref_obj.RelDotHCode())
				rel_kdo_class_obj.AddCollectionFunction(ref_obj.RelDotHCollectionFunction())
				rel_kdo_class_obj.AddInitRef(ref_obj.RelInitDotCppCode())
				rel_kdo_class_obj.AddRelListFunction(ref_obj.RelDotCppCollectionFunction())
				kdo_class_list[ref_obj.RelClassName()] = rel_kdo_class_obj
        dot_h_code += '#define ' + self.class_name + '_H\n\n'
        dot_h_code += self.HInclude() + '\n'
        dot_h_code += self.HUsingNameSpace() + '\n'
        dot_h_code += self.HClassCode(0, self.member_list)
        dot_h_code += '\n#endif'
        return dot_h_code

    def Write2DotHFile(self, filePath):
        fil_path_ename = ""
        if len(filePath) != 0:
            fil_path_ename = filePath + '\\' + self.class_name + '.h'
        else:
            fil_path_ename = self.class_name + '.h'
        file = open(fil_path_ename, 'w')
        file.write(self.PrintDotHFile())
        file.close()


if __name__ == "__main__":
    classX = xml2Class("Employee")
    classX.AddMemberVariable("string", "Id")
    #classX.AddMemberVariable("string", "SystemKey")
    classX.AddMemberVariable("unsigned int", "ActiveFlag")
    classX.AddMemberVariable("float", "SomeValue")
    ref_obj1 = xml2ref("Employee", 'RawMaterial', 'Link', 'Has')
    classX.AddReference(ref_obj1.MyDotHCode())
    ref_obj2 = xml2ref("Employee", 'RawMaterialSize', 'Unique', 'Has')
    classX.AddReference(ref_obj2.MyDotHCode())
    classX.Write2DotHFile('')
    classX.Write2DotCppFile('')
		dot_h_code += '#define ' + self.class_name + '_H\n\n'
		dot_h_code += self.HInclude() + '\n'
		dot_h_code += self.HUsingNameSpace() + '\n'
		dot_h_code += self.HClassCode(0, self.member_list)
		dot_h_code += '\n#endif'
		return dot_h_code

	def Write2DotHFile(self, filePath):
		fil_path_ename = ""
		if len(filePath) != 0:
			fil_path_ename = filePath + '\\' + self.class_name + '.h'
		else:
			fil_path_ename = self.class_name + '.h'
		file = open( fil_path_ename, 'w')
		file.write(self.PrintDotHFile())
		file.close()


if __name__ == "__main__":
	classX = xml2Class("Employee")
	classX.AddMemberVariable("string", "Id")
	#classX.AddMemberVariable("string", "SystemKey")
	classX.AddMemberVariable("unsigned int", "ActiveFlag")
	classX.AddMemberVariable("float", "SomeValue")
	ref_obj1 = xml2ref("Employee", 'RawMaterial', 'Link' , 'Has')
	classX.AddReference(ref_obj1.MyDotHCode())
	ref_obj2 = xml2ref("Employee", 'RawMaterialSize', 'Unique' , 'Has')
	classX.AddReference(ref_obj2.MyDotHCode())
	classX.Write2DotHFile('')
	classX.Write2DotCppFile('')
Example #4
0
                kdo_class_obj.AddInitRef(extd_obj.MyInitDotCppCode())

                rel_kdo_class_obj = kdo_class_list[extd_obj.RelClassName()]
                rel_kdo_class_obj.AddBeforeClass(extd_obj.RelBeforeClass())
                rel_kdo_class_obj.AddReference(extd_obj.RelDotHCode())

                rel_kdo_class_obj.AddCollectionFunction(
                    extd_obj.RelDotHCollectionFunction())
                rel_kdo_class_obj.AddRelListFunction(
                    extd_obj.RelDotCppCollectionFunction())
                kdo_class_list[extd_obj.RelClassName()] = rel_kdo_class_obj

        if class_chirld.tag == 'References':
            for reference_element in class_chirld:
                ref_obj = xml2ref(curr_class_name,
                                  reference_element.attrib['Name'],
                                  reference_element.attrib['Type'],
                                  reference_element.attrib['Relation'])
                kdo_class_obj.AddBeforeClass(ref_obj.MyBeforeClass())
                kdo_class_obj.AddReference(ref_obj.MyDotHCode())
                kdo_class_obj.AddInitRef(ref_obj.MyInitDotCppCode())
                if curr_class_name == 'ManufactureProcess':
                    print(ref_obj.my_class_name)
                kdo_class_obj.AddRefField(ref_obj.RelDotHField_Syskey())
                kdo_class_obj.AddInitRefField(ref_obj.RelDotCppField_Syskey())

                rel_kdo_class_obj = kdo_class_list[ref_obj.RelClassName()]
                rel_kdo_class_obj.AddBeforeClass(ref_obj.RelBeforeClass())
                rel_kdo_class_obj.AddReference(ref_obj.RelDotHCode())
                rel_kdo_class_obj.AddCollectionFunction(
                    ref_obj.RelDotHCollectionFunction())
                rel_kdo_class_obj.AddInitRef(ref_obj.RelInitDotCppCode())