Changeset 0a9686d in sasview for sansmodels/src/python_wrapper/wrapping.py
- Timestamp:
- Jun 25, 2012 9:07:41 AM (12 years ago)
- Branches:
- master, ESS_GUI, ESS_GUI_Docs, ESS_GUI_batch_fitting, ESS_GUI_bumps_abstraction, ESS_GUI_iss1116, ESS_GUI_iss879, ESS_GUI_iss959, ESS_GUI_opencl, ESS_GUI_ordering, ESS_GUI_sync_sascalc, costrafo411, magnetic_scatt, release-4.1.1, release-4.1.2, release-4.2.2, release_4.0.1, ticket-1009, ticket-1094-headless, ticket-1242-2d-resolution, ticket-1243, ticket-1249, ticket885, unittest-saveload
- Children:
- 33c671e
- Parents:
- f8be87d
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
sansmodels/src/python_wrapper/wrapping.py
r101065a r0a9686d 6 6 def generate_wrappers(header_dir, output_dir='.', c_wrapper_dir='.'): 7 7 nModels=0 8 model_list = list() 9 8 10 for item in os.listdir(header_dir): 9 11 toks = os.path.splitext(os.path.basename(item)) … … 17 19 app.write_c_wrapper() 18 20 app.write_python_wrapper() 19 #print app 21 model_list.append(app.getModelName()) 22 write_c_models(model_list) 20 23 print "Total number of model wrappers created is %s" % nModels 24 25 def write_c_models(model_list): 26 # simultaneously generates 'sansmodels/installed_models.txt' 27 # and 'sansmodels/src/c_models/c_models.cpp' 28 model_list_file = open(os.path.join("sansmodels","installed_models.txt"),"w") 29 for model in model_list: 30 model_list_file.write(model + "\n") 31 32 model_list_file.close() 33 34 35 template_file = open(os.path.join("sansmodels","src","c_models","c_models.cpp.template"),"r") 36 write_file = open(os.path.join("sansmodels","src","c_models","c_models.cpp"),"w") 37 buf = template_file.read() 38 lines = buf.split('\n') 39 40 tag1 = "[TAG_1]" 41 tag2 = "[TAG_2]" 42 43 for line in lines: 44 45 if line.count(tag1) > 0: 46 write_file.write("\n // adding generated code \n") 47 for pyclass in model_list: 48 write_file.write("void addC" + pyclass 49 + "(PyObject *module); \n") 50 write_file.write(" // end generated code \n") 51 52 53 elif line.count(tag2) > 0: 54 write_file.write("\n // adding generated code \n") 55 56 for pyclass in model_list: 57 write_file.write("addC" + pyclass + "(m); \n") 58 59 write_file.write("addDisperser(m); \n") 60 write_file.write("\n // end generated code \n") 61 62 63 else: 64 write_file.write(line + "\n") 65 66 21 67 22 68 if __name__ == '__main__': … … 25 71 26 72 73 74
Note: See TracChangeset
for help on using the changeset viewer.