Changeset 35a0c12 in git for Singular/pyobject.cc
- Timestamp:
- Dec 6, 2012, 2:46:43 PM (11 years ago)
- Branches:
- (u'spielwiese', '8e0ad00ce244dfd0756200662572aef8402f13d5')
- Children:
- 51f56350e07c1644b3a676e1ad934986088a0bd0
- Parents:
- 8a8315c064275dd1bdd822cbc4e00072d5a3761e
- git-author:
- Alexander Dreyer <adreyer@gmx.de>2012-12-06 14:46:43+01:00
- git-committer:
- Alexander Dreyer <adreyer@gmx.de>2012-12-06 15:20:24+01:00
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/pyobject.cc
r8a8315c r35a0c12 64 64 /// Initialize unique (singleton) python interpreter instance, 65 65 /// and set Singular type identifier 66 static void init(id_type num 66 static void init(id_type num) { instance().m_id = num; } 67 67 68 68 /// Get Singular type identitfier … … 702 702 703 703 704 // forward declaration 705 //int iiAddCproc(char *libname, char *procname, BOOLEAN pstatic, 706 // BOOLEAN(*func)(leftv res, leftv v)); 707 708 #define ADD_C_PROC(name) iiAddCproc("", (char*)#name, FALSE, name); 704 705 blackbox* pyobject_blackbox(int& tok) { 706 if(blackboxIsCmd("pyobject", tok) != ROOT_DECL) 707 { 708 tok = setBlackboxStuff((blackbox*)omAlloc0(sizeof(blackbox)), 709 "pyobject"); 710 } 711 return getBlackboxStuff(tok); 712 } 713 709 714 710 715 711 716 void pyobject_init() 712 717 { 713 blackbox *b = (blackbox*)omAlloc0(sizeof(blackbox)); 714 b->blackbox_destroy = pyobject_destroy; 715 b->blackbox_String = pyobject_String; 716 b->blackbox_Init = pyobject_Init; 717 b->blackbox_Copy = pyobject_Copy; 718 b->blackbox_Assign = pyobject_Assign; 719 b->blackbox_Op1 = pyobject_Op1; 720 b->blackbox_Op2 = pyobject_Op2; 721 b->blackbox_Op3 = pyobject_Op3; 722 b->blackbox_OpM = pyobject_OpM; 723 b->data = omAlloc0(newstruct_desc_size()); 724 725 PythonInterpreter::init(setBlackboxStuff(b,"pyobject")); 726 727 ADD_C_PROC(python_import); 728 ADD_C_PROC(python_eval); 729 ADD_C_PROC(python_run); 730 } 731 732 extern "C" { void mod_init() { pyobject_init(); } } 733 718 int tok = -1; 719 blackbox* bbx = pyobject_blackbox(tok); 720 if (bbx->blackbox_Init != pyobject_Init) 721 { 722 bbx->blackbox_destroy = pyobject_destroy; 723 bbx->blackbox_String = pyobject_String; 724 bbx->blackbox_Init = pyobject_Init; 725 bbx->blackbox_Copy = pyobject_Copy; 726 bbx->blackbox_Assign = pyobject_Assign; 727 bbx->blackbox_Op1 = pyobject_Op1; 728 bbx->blackbox_Op2 = pyobject_Op2; 729 bbx->blackbox_Op3 = pyobject_Op3; 730 bbx->blackbox_OpM = pyobject_OpM; 731 bbx->data = omAlloc0(newstruct_desc_size()); 732 733 PythonInterpreter::init(tok); 734 } 735 } 736 737 #define PYOBJECT_ADD_C_PROC(name) \ 738 psModulFunctions->iiAddCproc(currPack->libname, (char*)#name, FALSE, name); 739 740 extern "C" { 741 void mod_init(SModulFunctions* psModulFunctions) 742 { 743 pyobject_init(); 744 745 PYOBJECT_ADD_C_PROC(python_import); 746 PYOBJECT_ADD_C_PROC(python_eval); 747 PYOBJECT_ADD_C_PROC(python_run); 748 } 749 } 750 #undef PYOBJECT_ADD_C_PROC
Note: See TracChangeset
for help on using the changeset viewer.