From 0ea5fc66924303d1bf73ba283a383e2aadee02f2 Mon Sep 17 00:00:00 2001 From: neodarz Date: Sat, 11 Aug 2018 20:21:34 +0200 Subject: Initial commit --- .../nel/classNLAIPYSERVER_1_1CPyExport.html | 1270 ++++++++++++++++++++ 1 file changed, 1270 insertions(+) create mode 100644 docs/doxygen/nel/classNLAIPYSERVER_1_1CPyExport.html (limited to 'docs/doxygen/nel/classNLAIPYSERVER_1_1CPyExport.html') diff --git a/docs/doxygen/nel/classNLAIPYSERVER_1_1CPyExport.html b/docs/doxygen/nel/classNLAIPYSERVER_1_1CPyExport.html new file mode 100644 index 00000000..8a07fc6e --- /dev/null +++ b/docs/doxygen/nel/classNLAIPYSERVER_1_1CPyExport.html @@ -0,0 +1,1270 @@ + + + + nevrax.org : docs + + + + + + + + + + + + + + +
# Home   # nevrax.com   
+ + + + +
Nevrax
+ + + + + + + + + + +
+ + +
+ Nevrax.org
+ + + + + + + +
#News
#Mailing-list
#Documentation
#CVS
#Bugs
#License
+
+ + +
+ + +
+Docs + +
+  + + + + + +
Documentation 
+ +
+Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Search  
+

NLAIPYSERVER::CPyExport Class Reference

#include <pylib.h> +

+List of all members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Public Methods

 CPyExport ()
bool setDebug ()
 Met le Mode debug à ON. More...

sint32 getDebugStat ()
bool unSetDebug ()
 Met le Mode debug à OFF. More...

bool isDebug ()
 Check the debug mode state. More...

sint32 runCode (const char *Code, char *NameSpace=NULL, sint32 ModeExec=Py_file_input, char *Format=NULL, void *ResultTarget=NULL, sint32 Error=true)
 Execution d'instruction Python dans le mode (Debug/Release) on fonction de l'etat de _DebugMode. More...

sint32 runMethod (PyObject *Obj, char *MethodName, char *ResFormat, void *ResTarget, char *Format,...)
 Execution d'une methode membre d'un objet Python dans le mode (Debug/Release) on fonction de l'etat de _DebugMode. More...

sint32 runFunction (char *ModuleName, char *MethodName, char *ResFormat, void *ResTarget, char *Format,...)
 Execution d'une fonctio membre d'un module Python dans le mode (Debug/Release) on fonction de l'etat de _DebugMode. More...

sint32 getMembreValue (PyObject *Obj, char *AttribName, char *ResFormat, void *ResTarget)
 Obtenir la valeur d'un attribut dans un objet Python. More...

sint32 setMembreValue (PyObject *Obj, char *AttribName, char *ResFormat,...)
 Changer la valeur d'un attribut dans un objet Python. More...

char * getCodeFromFile (const char *FileName)
 permet d'avoir un poiteur sur le contenu d'un fichier text, le pointeur est à detruir par l'utulisateur. More...

sint32 getGlobal (char *NameSpace, char *VarName, char *Format, void *VarValue)
sint32 setGlobal (char *NameSpace, char *VarName, char *Format,...)
PyObject * addModule (char *, PyMethodDef *)
PyObject * getRefVar (char *VarName)
 ~CPyExport ()

Static Public Methods

const char * getPathSeparator ()

Private Methods

const char * getNameSpace (const char *Name) const
PyObject * loadAttruibut (char *, char *)
PyObject * loadModule (char *)
sint32 convertResult (PyObject *Result, char *Format, void *Target)
PyObject * debugFunction (PyObject *Func, PyObject *Arg)
PyObject * debugCode (sint32 RunMode, const char *code, PyObject *ModDict)
void printLastError ()

Private Attributes

bool _DebugMode
+


Constructor & Destructor Documentation

+

+ + + + +
+ + + + + + + + + +
NLAIPYSERVER::CPyExport::CPyExport   [inline]
+
+ + + + + +
+   + + +

+ +

+Definition at line 33 of file pylib.h. +

+References _DebugMode.

+

+ + + + +
+ + + + + + + + + +
NLAIPYSERVER::CPyExport::~CPyExport   [inline]
+
+ + + + + +
+   + + +

+ +

+Definition at line 220 of file pylib.h.

+


Member Function Documentation

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
PyObject * NLAIPYSERVER::CPyExport::addModule char *  ,
PyMethodDef *  
+
+ + + + + +
+   + + +

+ +

+Definition at line 298 of file pylib.cpp.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
sint32 NLAIPYSERVER::CPyExport::convertResult PyObject *   Result,
char *   Format,
void *   Target
[private]
+
+ + + + + +
+   + + +

+ +

+Definition at line 62 of file pylib.cpp. +

+References sint32. +

+Referenced by getGlobal, getMembreValue, runCode, runFunction, and runMethod.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
PyObject * NLAIPYSERVER::CPyExport::debugCode sint32   RunMode,
const char *   code,
PyObject *   ModDict
[private]
+
+ + + + + +
+   + + +

+ +

+Definition at line 102 of file pylib.cpp. +

+References runFunction, and sint32. +

+Referenced by runCode.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
PyObject * NLAIPYSERVER::CPyExport::debugFunction PyObject *   Func,
PyObject *   Arg
[private]
+
+ + + + + +
+   + + +

+ +

+Definition at line 87 of file pylib.cpp. +

+Referenced by runFunction, and runMethod.

+

+ + + + +
+ + + + + + + + + + +
char * NLAIPYSERVER::CPyExport::getCodeFromFile const char *   FileName
+
+ + + + + +
+   + + +

+permet d'avoir un poiteur sur le contenu d'un fichier text, le pointeur est à detruir par l'utulisateur. +

+ +

+Definition at line 303 of file pylib.cpp. +

+References sint32, and uint16.

+

+ + + + +
+ + + + + + + + + +
sint32 NLAIPYSERVER::CPyExport::getDebugStat   [inline]
+
+ + + + + +
+   + + +

+ +

+Definition at line 46 of file pylib.h. +

+References _DebugMode, and sint32.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
sint32 NLAIPYSERVER::CPyExport::getGlobal char *   NameSpace,
char *   VarName,
char *   Format,
void *   VarValue
+
+ + + + + +
+   + + +

+ +

+Definition at line 251 of file pylib.cpp. +

+References convertResult, loadAttruibut, and sint32.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
sint32 NLAIPYSERVER::CPyExport::getMembreValue PyObject *   Obj,
char *   AttribName,
char *   ResFormat,
void *   ResTarget
+
+ + + + + +
+   + + +

+Obtenir la valeur d'un attribut dans un objet Python. +

+Obj: pointeur sur une instance d'un Objet python (voir l'exemple plus haut). +

+AttribName: Le nom de l'attribut à obtenir. +

+ResFormat: Type du resultat attendu. +

+ResTarget: pointeur pour resevoir le resultat de l'appelle de la fonction. +

+

exemple:
+
+        sint32 PyLeXDeA;
+        sint32 PyLeYDeA;
+        pExePythonExpression->GetMembreValue(PyObjetA,"X","i",&PyLeXDeA);
+        pExePythonExpression->GetMembreValue(PyObjetA,"Y","i",&PyLeYDeA);
+
+

+return: 0 Ok; -1 ehec. +

+Definition at line 226 of file pylib.cpp. +

+References convertResult, and sint32.

+

+ + + + +
+ + + + + + + + + + +
const char* NLAIPYSERVER::CPyExport::getNameSpace const char *   Name const [inline, private]
+
+ + + + + +
+   + + +

+ +

+Definition at line 19 of file pylib.h. +

+Referenced by loadAttruibut, and loadModule.

+

+ + + + +
+ + + + + + + + + +
const char * NLAIPYSERVER::CPyExport::getPathSeparator   [static]
+
+ + + + + +
+   + + +

+ +

+Definition at line 334 of file pylib.cpp. +

+References s.

+

+ + + + +
+ + + + + + + + + + +
PyObject * NLAIPYSERVER::CPyExport::getRefVar char *   VarName
+
+ + + + + +
+   + + +

+ +

+Definition at line 283 of file pylib.cpp. +

+References runCode, and NLAIC::stringGetBuild.

+

+ + + + +
+ + + + + + + + + +
bool NLAIPYSERVER::CPyExport::isDebug   [inline]
+
+ + + + + +
+   + + +

+Check the debug mode state. +

+ +

+Definition at line 59 of file pylib.h. +

+References _DebugMode. +

+Referenced by runCode, runFunction, and runMethod.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
PyObject * NLAIPYSERVER::CPyExport::loadAttruibut char *  ,
char *  
[private]
+
+ + + + + +
+   + + +

+ +

+Definition at line 52 of file pylib.cpp. +

+References getNameSpace, and loadModule. +

+Referenced by getGlobal, and runFunction.

+

+ + + + +
+ + + + + + + + + + +
PyObject * NLAIPYSERVER::CPyExport::loadModule char *   [private]
+
+ + + + + +
+   + + +

+ +

+Definition at line 33 of file pylib.cpp. +

+References getNameSpace. +

+Referenced by loadAttruibut, runCode, and setGlobal.

+

+ + + + +
+ + + + + + + + + +
void NLAIPYSERVER::CPyExport::printLastError   [private]
+
+ + + + + +
+   + + +

+

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
sint32 NLAIPYSERVER::CPyExport::runCode const char *   Code,
char *   NameSpace = NULL,
sint32   ModeExec = Py_file_input,
char *   Format = NULL,
void *   ResultTarget = NULL,
sint32   Error = true
+
+ + + + + +
+   + + +

+Execution d'instruction Python dans le mode (Debug/Release) on fonction de l'etat de _DebugMode. +

+Code: est le texte contenant les instruction Python à executer. Attention generalement les editeurs windows produit des fin de ligne marquer par les caractéres
+\r, l'interpréteur Python n'aime pas du tout le caractaire \r en fin de ligne donc il faut filtrer le texte à executer avant l'appelle à cette procedure, c'est à dire convertire tout \r en
+. Ou utiliser la methode GetCodeFromFile. +

+NameSpace: Le name space du code à executer. NULL c'est le name space Python par defaut c'est à dire __main__. +

+ModeExec: Le type d'excecution. Ce type peut être par defaut execution normal (file_input), ou evalution d'expression (eval_input). +

+Format: Le type de parametre dans le cas ou l'execution se fait avec eval_input. ce type peut être "O" (Objet); "i" (intger) ........ ; voir la doc Python. +

+ResultTarget: Pointeur sur un pointeur pour resevoir le resultat d'evaluation.

Exemple:
+        pExePythonExpression->RunCode(  "class C():\n"
+                                        "\t def __init__(self):\n"
+                                        "\t\t self.x = 5\n"
+                                        "\t\t self.y = 25\n"
+                                        "\t def M(self, nX, nY):\n"
+                                        "\t\t return self.x*nX,self.y*nY\n");
+        PyObject *PyObjetA;
+        pExePythonExpression->RunCode("A = C()",NULL,eval_input,"O",&PyObjetA);
+
+

+avec eval_input PyObjetA est le pointeur sur l'instance de l'Objet Python A crée dans Python +

+return: 0 Ok; -1 ehec. +

+Definition at line 147 of file pylib.cpp. +

+References convertResult, debugCode, NLNET::Error, isDebug, loadModule, and sint32. +

+Referenced by getRefVar.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
sint32 NLAIPYSERVER::CPyExport::runFunction char *   ModuleName,
char *   MethodName,
char *   ResFormat,
void *   ResTarget,
char *   Format,
...  
+
+ + + + + +
+   + + +

+Execution d'une fonctio membre d'un module Python dans le mode (Debug/Release) on fonction de l'etat de _DebugMode. +

+ModuleName: Nom du module contenant la fonction à executer. +

+MethodName: Le nom de la fonction à executer. +

+ResFormat: Type du resultat attendu. +

+ResTarget: pointeur pour resevoir le resultat de l'appelle de la fonction. +

+Format: Le type de l'argument par exemple: ResFormat "(iiO)" (2 sint32 et un pointeur sur un objet python). viennent ensuite se déposer sur la pile les valeurs de l'argument. return: 0 Ok; -1 ehec. +

+Definition at line 117 of file pylib.cpp. +

+References convertResult, debugFunction, isDebug, loadAttruibut, and sint32. +

+Referenced by debugCode.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
sint32 NLAIPYSERVER::CPyExport::runMethod PyObject *   Obj,
char *   MethodName,
char *   ResFormat,
void *   ResTarget,
char *   Format,
...  
+
+ + + + + +
+   + + +

+Execution d'une methode membre d'un objet Python dans le mode (Debug/Release) on fonction de l'etat de _DebugMode. +

+Obj: pointeur sur une instance d'un Objet python (voir l'exemple plus haut). +

+MethodName: Le nom de la methode membre à executer (je rappelle qu'en python tout est public). +

+ResFormat: Type du resultat attendu. +

+ResTarget: pointeur pour resevoir le resultat de l'appelle de la methode. +

+Format: Le type de l'argument par exemple: ResFormat "(iiO)" (2 sint32 et un pointeur sur un objet python). viennent ensuite se déposer sur la pile les valeurs de l'argument.

exemple:
+        PyObject *PyObjetA,*PyObjetResult;
+        pExePythonExpression->RunCode("A = C()",NULL,eval_input,"O",&PyObjetA);
+        pExePythonExpression->RunMethod(PyObjetA,"M","O",PyObjetResult,"ii",5,16);
+
+

+Le resulta sera un tupule Python du type(25,400); +

+return: 0 Ok; -1 ehec. +

+Definition at line 184 of file pylib.cpp. +

+References convertResult, debugFunction, isDebug, and sint32.

+

+ + + + +
+ + + + + + + + + +
bool NLAIPYSERVER::CPyExport::setDebug   [inline]
+
+ + + + + +
+   + + +

+Met le Mode debug à ON. +

+ +

+Definition at line 41 of file pylib.h. +

+References _DebugMode.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
sint32 NLAIPYSERVER::CPyExport::setGlobal char *   NameSpace,
char *   VarName,
char *   Format,
...  
+
+ + + + + +
+   + + +

+ +

+Definition at line 260 of file pylib.cpp. +

+References loadModule, and sint32.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
sint32 NLAIPYSERVER::CPyExport::setMembreValue PyObject *   Obj,
char *   AttribName,
char *   ResFormat,
...  
+
+ + + + + +
+   + + +

+Changer la valeur d'un attribut dans un objet Python. +

+Obj: pointeur sur une instance d'un Objet python (voir l'exemple plus haut). +

+AttribName: Le nom de l'attribut à obtenir. +

+ResFormat: Type du resultat attendu. vient ensuite la valeur de l'attribut. +

+

exemple:                                                        
+        pExePythonExpression->SetMembreValue(PyObjetA,"X","i",20);
+        pExePythonExpression->SetMembreValue(PyObjetA,"Y","i",2);
+        pExePythonExpression->RunMethod(PyObjetA,"M","O",PyObjetResult,"ii",5,16);
+
+

+Le resulta sera un tupule Python du type(100,30); return: 0 Ok; -1 ehec. +

+Definition at line 239 of file pylib.cpp. +

+References sint32.

+

+ + + + +
+ + + + + + + + + +
bool NLAIPYSERVER::CPyExport::unSetDebug   [inline]
+
+ + + + + +
+   + + +

+Met le Mode debug à OFF. +

+ +

+Definition at line 52 of file pylib.h. +

+References _DebugMode.

+


Member Data Documentation

+

+ + + + +
+ + +
bool NLAIPYSERVER::CPyExport::_DebugMode [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 17 of file pylib.h. +

+Referenced by CPyExport, getDebugStat, isDebug, setDebug, and unSetDebug.

+


The documentation for this class was generated from the following files: + + + +
                                                                                                                                                                    +
+ + -- cgit v1.2.1