PPL Logo

PythonExecute Class Reference

#include <PythonCCS-client.h>

Inheritance diagram for PythonExecute:

Inheritance graph
[legend]
Collaboration diagram for PythonExecute:

Collaboration graph
[legend]

Public Member Functions

 PythonExecute (char *_code, bool _persistent=false, bool _highlevel=false, CmiUInt4 _interp=0)
 PythonExecute (char *_code, char *_method, PythonIterator *_info, bool _persistent=false, bool _highlevel=false, CmiUInt4 _interp=0)
 ~PythonExecute ()
void setCode (char *_set)
void setMethodName (char *_set)
void setIterator (PythonIterator *_set)
void setPersistent (bool _set)
void setIterate (bool _set)
void setHighLevel (bool _set)
void setKeepPrint (bool _set)
void setWait (bool _set)
void setInterpreter (CmiUInt4 i)
void setNoCheck (bool _set)
bool isPersistent ()
bool isIterate ()
bool isHighLevel ()
bool isKeepPrint ()
bool isWait ()
CmiUInt4 getInterpreter ()
bool isNoCheck ()
int size ()
char * pack ()
void unpack ()
void print ()

Static Public Attributes

static const CmiUInt4 localmagic = 37492037

Private Attributes

CmiUInt4 codeLength
union {
   char *   code
   char   dummy [8]
code
union {
   char *   methodName
   char   dummy [8]
methodName
CmiUInt4 methodNameLength
CmiUInt4 infoSize
union {
   PythonIterator *   info
   char   dummy [8]
info
CmiUInt4 interpreter
unsigned char flags

Static Private Attributes

static const unsigned char FLAG_PERSISTENT = 0x80
static const unsigned char FLAG_KEEPPRINT = 0x40
static const unsigned char FLAG_HIGHLEVEL = 0x20
static const unsigned char FLAG_ITERATE = 0x10
static const unsigned char FLAG_WAIT = 0x08
static const unsigned char FLAG_NOCHECK = 0x04

Friends

class PythonObject
class CpdPythonGroup

Detailed Description

Definition at line 67 of file PythonCCS-client.h.


Constructor & Destructor Documentation

PythonExecute::PythonExecute ( char *  _code,
bool  _persistent = false,
bool  _highlevel = false,
CmiUInt4  _interp = 0 
)

Definition at line 3 of file PythonCCS-client.C.

References code, codeLength, FLAG_HIGHLEVEL, FLAG_KEEPPRINT, FLAG_PERSISTENT, flags, info, infoSize, interpreter, localmagic, PythonAbstract::magic, methodName, methodNameLength, and strdup().

Here is the call graph for this function:

PythonExecute::PythonExecute ( char *  _code,
char *  _method,
PythonIterator _info,
bool  _persistent = false,
bool  _highlevel = false,
CmiUInt4  _interp = 0 
)

PythonExecute::~PythonExecute (  ) 

Definition at line 38 of file PythonCCS-client.C.

References code, free(), info, and methodName.

Here is the call graph for this function:


Member Function Documentation

void PythonExecute::setCode ( char *  _set  ) 

Definition at line 44 of file PythonCCS-client.C.

References code, codeLength, and strdup().

Here is the call graph for this function:

void PythonExecute::setMethodName ( char *  _set  ) 

Definition at line 49 of file PythonCCS-client.C.

References methodName, methodNameLength, and strdup().

Here is the call graph for this function:

void PythonExecute::setIterator ( PythonIterator _set  ) 

Definition at line 54 of file PythonCCS-client.C.

References info, infoSize, PythonIterator::pack(), and PythonIterator::size().

Here is the call graph for this function:

void PythonExecute::setPersistent ( bool  _set  ) 

Definition at line 59 of file PythonCCS-client.C.

References FLAG_PERSISTENT, and flags.

void PythonExecute::setIterate ( bool  _set  ) 

Definition at line 64 of file PythonCCS-client.C.

References FLAG_ITERATE, and flags.

void PythonExecute::setHighLevel ( bool  _set  ) 

Definition at line 69 of file PythonCCS-client.C.

References FLAG_HIGHLEVEL, and flags.

void PythonExecute::setKeepPrint ( bool  _set  ) 

Definition at line 74 of file PythonCCS-client.C.

References FLAG_KEEPPRINT, and flags.

void PythonExecute::setWait ( bool  _set  ) 

Definition at line 79 of file PythonCCS-client.C.

References FLAG_WAIT, and flags.

void PythonExecute::setInterpreter ( CmiUInt4  i  )  [inline]

Definition at line 124 of file PythonCCS-client.h.

References interpreter.

Referenced by CpdPythonGroup::registerPersistent().

Here is the caller graph for this function:

void PythonExecute::setNoCheck ( bool  _set  ) 

Definition at line 84 of file PythonCCS-client.C.

References FLAG_NOCHECK, and flags.

bool PythonExecute::isPersistent (  )  [inline]

Definition at line 127 of file PythonCCS-client.h.

References FLAG_PERSISTENT, and flags.

Referenced by PythonObject::cleanup().

Here is the caller graph for this function:

bool PythonExecute::isIterate (  )  [inline]

Definition at line 128 of file PythonCCS-client.h.

References FLAG_ITERATE, and flags.

Referenced by PythonObject::executeThread().

Here is the caller graph for this function:

bool PythonExecute::isHighLevel (  )  [inline]

Definition at line 129 of file PythonCCS-client.h.

References FLAG_HIGHLEVEL, and flags.

Referenced by PythonObject::execute(), PythonObject::executeThread(), and PythonObject::prepareInterpreter().

Here is the caller graph for this function:

bool PythonExecute::isKeepPrint (  )  [inline]

Definition at line 130 of file PythonCCS-client.h.

References FLAG_KEEPPRINT, and flags.

Referenced by PythonObject::prepareInterpreter().

Here is the caller graph for this function:

bool PythonExecute::isWait (  )  [inline]

Definition at line 131 of file PythonCCS-client.h.

References FLAG_WAIT, and flags.

Referenced by PythonObject::execute().

Here is the caller graph for this function:

CmiUInt4 PythonExecute::getInterpreter (  )  [inline]

Definition at line 132 of file PythonCCS-client.h.

References interpreter.

bool PythonExecute::isNoCheck (  )  [inline]

Definition at line 133 of file PythonCCS-client.h.

References FLAG_NOCHECK, and flags.

int PythonExecute::size ( void   ) 

Definition at line 89 of file PythonCCS-client.C.

References codeLength, infoSize, and methodNameLength.

Referenced by pack().

Here is the caller graph for this function:

char * PythonExecute::pack (  ) 

Definition at line 93 of file PythonCCS-client.C.

References code, codeLength, info, infoSize, PythonAbstract::magic, malloc(), methodName, methodNameLength, and size().

Here is the call graph for this function:

void PythonExecute::unpack (  ) 

Reimplemented from PythonAbstract.

Definition at line 118 of file PythonCCS-client.C.

References code, codeLength, info, infoSize, interpreter, methodName, methodNameLength, and ntohl().

Referenced by PythonObject::execute(), and CpdPythonGroup::registerPersistent().

Here is the call graph for this function:

Here is the caller graph for this function:

void PythonExecute::print ( void   ) 

Definition at line 175 of file PythonCCS-client.C.

References flags, interpreter, and PythonAbstract::magic.


Friends And Related Function Documentation

friend class PythonObject [friend]

Definition at line 68 of file PythonCCS-client.h.

friend class CpdPythonGroup [friend]

Definition at line 69 of file PythonCCS-client.h.


Field Documentation

Definition at line 71 of file PythonCCS-client.h.

Referenced by pack(), PythonExecute(), setCode(), size(), and unpack().

Definition at line 74 of file PythonCCS-client.h.

union { ... } PythonExecute::code [private]

union { ... } PythonExecute::methodName [private]

Definition at line 82 of file PythonCCS-client.h.

Referenced by pack(), PythonExecute(), setMethodName(), size(), and unpack().

Definition at line 83 of file PythonCCS-client.h.

Referenced by pack(), PythonExecute(), setIterator(), size(), and unpack().

union { ... } PythonExecute::info [private]

unsigned char PythonExecute::flags [private]

const unsigned char PythonExecute::FLAG_PERSISTENT = 0x80 [static, private]

Definition at line 100 of file PythonCCS-client.h.

Referenced by isPersistent(), PythonExecute(), and setPersistent().

const unsigned char PythonExecute::FLAG_KEEPPRINT = 0x40 [static, private]

Definition at line 101 of file PythonCCS-client.h.

Referenced by isKeepPrint(), PythonExecute(), and setKeepPrint().

const unsigned char PythonExecute::FLAG_HIGHLEVEL = 0x20 [static, private]

Definition at line 102 of file PythonCCS-client.h.

Referenced by isHighLevel(), PythonExecute(), and setHighLevel().

const unsigned char PythonExecute::FLAG_ITERATE = 0x10 [static, private]

Definition at line 103 of file PythonCCS-client.h.

Referenced by isIterate(), PythonExecute(), and setIterate().

const unsigned char PythonExecute::FLAG_WAIT = 0x08 [static, private]

Definition at line 104 of file PythonCCS-client.h.

Referenced by isWait(), and setWait().

const unsigned char PythonExecute::FLAG_NOCHECK = 0x04 [static, private]

Definition at line 105 of file PythonCCS-client.h.

Referenced by isNoCheck(), and setNoCheck().

const CmiUInt4 PythonExecute::localmagic = 37492037 [static]

Definition at line 107 of file PythonCCS-client.h.

Referenced by PythonAbstract::isExecute(), and PythonExecute().


The documentation for this class was generated from the following files:

Generated on Mon Sep 21 08:29:03 2020 for Charm++ by  doxygen 1.5.5