AURobotServers  4
Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
UResFile Class Reference

#include <uresfile.h>

Inheritance diagram for UResFile:
Inheritance graph

Public Member Functions

bool add (const int client, const char *text)
 
bool closeFile (const int client)
 
bool del (const char *name)
 
const char * getDirName ()
 
const char * getFilename (const int client, const char *preStr, char *buff, const int buffCnt)
 
const char * getFilename (const int client)
 
const char * getList (const char *preStr, char *buff, const int buffCnt)
 
bool newFile (const int client, const char *newName)
 
int setOpenFilesCnt ()
 
 UResFile ()
 
void UResFileInit ()
 
virtual ~UResFile ()
 
- Public Member Functions inherited from UResVarPool
int addMethod (const char *formalName, const char *paramTypes, const char *comment)
 
int addMethodV (const char *formalName, const char *paramTypes, const char *comment)
 
UVarPooladdStruct (const char *name, const char *comment, bool copy=false)
 
UVariableaddVar (const char *name, const double initialValue, const char *type, const char *comment)
 
UVariableaddVar (const char *name, const char *initialValue, const char *type, const char *comment)
 
UVariableaddVarA (const char *name, const char *initialValue, const char *type, const char *comment)
 
bool callGlobal (const char *name, const char *paramOrder, char **strings, const double *doubles, double *value, UDataBase **returnStruct, int *returnStructCnt)
 
bool callGlobalV (const char *name, const char *paramOrder, UVariable **params, UDataBase **returnStruct, int *returnStructCnt)
 Call a method from the root var pool scope It may be in the structure direct (no '.') or in any sub-structure that the 'name.subname' indicate. More...
 
bool callLocal (const char *name, const char *paramOrder, char **strings, const double *doubles, double *value, UDataBase **returnStruct, int *returnStructCnt)
 
bool callVS (const char *function, const char *stringParam)
 
int callVSCD (const char *function, const char *strPar, UDataBase *data, int cooSys)
 
void createBaseVar ()
 
virtual bool createVarSpace (const int varCnt, const int structCnt, const int methCnt, const char *note, bool copy=false)
 
bool getGlobalString (const char *name, const char **value)
 
bool getGlobalValue (const char *name, double *value)
 
bool getGlobalValue (const char *name, const char **value)
 
bool getGlobalValue (const char *name, bool *value)
 
bool getGlobalValue (const char *name, UTime *value)
 
bool getLocalValue (const char *name, double *value)
 get a value in this variable tree More...
 
bool getLocalValue (const char *name, bool *value)
 
bool getLocalValue (const char *name, UTime *value)
 
double getLocalValue (int idx)
 
UPosition getLocalValue3D (int idx)
 
UPosRot getLocalValue6D (int idx)
 
bool getLocalValueBool (int idx)
 
int getLocalValueInt (int idx)
 
UTime getLocalValueTime (int idx)
 
const char * getLogFileName ()
 
const char * getVarDescription (int idx)
 
UVarCalcgetVarPool ()
 
virtual bool gotAllResources (char *missingThese, int missingTheseCnt)
 
bool isLogFileOpen ()
 
bool isLogFileOpen (const char *structName)
 
bool isVarPoolUpdated (int lastCnt, int *newCnt)
 
void logFileClose ()
 
bool logFileOpen ()
 
void logFileStart (const char *structName, bool open)
 
virtual bool methodCall (const char *name, const char *paramOrder, char **strings, const double *doubles, double *value, UDataBase **returnStruct=NULL, int *returnStructCnt=NULL)
 
virtual const char * print (const char *preString, char *buff, int buffCnt)
 
bool setGlobalVar (const char *name, const double value, bool mayAdd)
 Assigns a value to a variable. The variable may be a part of a structure. More...
 
bool setLocalVar (int idx, double value, const int element)
 
bool setLocalVar (const char *name, const double value, bool mayAdd)
 Assigns a value to a variable. The variable may be a part of a structure. More...
 
bool setLocalVar3D (int idx, UPosition *value)
 
bool setLocalVar6D (int idx, UPosRot *value)
 
bool setLocalVarAdd (int idx, double value, const int element)
 
bool setLocalVarPose (int idx, UPose *value)
 
virtual bool setResource (UResBase *resource, bool remove)
 
void setVarPool (UVarCalc *sharedVarPool)
 
int updateQTvars (int structIdx)
 
 UResVarPool ()
 
virtual ~UResVarPool ()
 
- Public Member Functions inherited from UResBase
void createReplayVar (UVarPool *pool)
 
virtual void createResources ()
 
UCmdExegetCorePointer ()
 
char * getLogFileName (char *fn, const int fnCnt)
 
int getResFuncIdx ()
 
const char * getResID ()
 
int getResVersion ()
 
bool isA (const char *idStr)
 
bool isAlsoA (const char *id)
 
virtual void print (const char *preString)
 
virtual void saveSettings ()
 
void setCorePointer (UCmdExe *serverCore)
 
void setResFuncIdx (int idx)
 
virtual void setResID (const char *id, const int version)
 
virtual void stop (bool)
 
virtual void updateReplayStatus ()
 
 UResBase ()
 
virtual ~UResBase ()
 
- Public Member Functions inherited from UReplay
void addChild (UReplay *child)
 
virtual bool decodeReplayLine (char *)
 
char * getLogFileName (char *fn, const int fnCnt)
 
char * getReplayFileName (char *fn, const int fnCnt)
 
int getReplayLogLine ()
 
bool isReplay ()
 
bool isReplayFileOpen ()
 
void removeChild (UReplay *child)
 
virtual void replayAdvanceTime (UTime untilTime)
 
void replaySetBaseFileName (const char *name, const char *preName="")
 
void replaySetFileName (const char *name)
 
virtual bool replayStep ()
 
int replayStep (int steps)
 
virtual bool replayToTime (UTime untilTime)
 
void setParent (UReplay *parent)
 
bool setReplay (bool value)
 
 UReplay ()
 
virtual ~UReplay ()
 
- Public Member Functions inherited from ULock
bool lock ()
 
void lockInit ()
 
void post ()
 
bool tryLock ()
 
bool tryWait ()
 
 ULock ()
 
void unlock ()
 
bool wait ()
 
 ~ULock ()
 
- Public Member Functions inherited from UVarMethodImplement
virtual bool methodCallV (const char *name, const char *paramOrder, UVariable *params[], UDataBase **returnStruct, int *returnStructCnt)
 
virtual ~UVarMethodImplement ()
 
- Public Member Functions inherited from ULogFile
void closeLog ()
 
void doFlush ()
 
FILE * getF ()
 
const char * getLogFileName ()
 
const char * getLogName ()
 
bool isLogOpen ()
 
bool isOpen ()
 
void logLock ()
 
bool logRename (const char *name)
 
void logUnlock ()
 
bool openLog ()
 
bool openLog (bool doOpen)
 
bool openLog (const char *resName)
 
void setLogFlush (bool doFlush)
 
void setLogName (const char *resName, const char *ext="log")
 
void setLogNameNumber (int number)
 add a number to the logfile name, That is if the logName is 'svs' and number is 2 (and logPath is '/rhome/demo'), then logfilename is set to '/rhome/demo/svs_2.log'. The purpose is to have an alternative, if the file renaming fails (if the file system is locked or something). More...
 
void setLogTime (UTime timestamp)
 
void toLog (const char *logString)
 
void toLog (const char *s1, const char *s2)
 
void toLog (const int num, const char *s1, const char *s2)
 
void toLog (const char *s1, const int num, const char *s2)
 
void toLog (const char *s1, const int n1, const int n2, const char *s2)
 
void toLog (const char *s1, const int num, const char *s2, const char *s3)
 
void toLog (const char *s1, const int n1, const int n2, const char *s2, const char *s3)
 
 ULogFile ()
 
void useLogTime (bool value)
 
 ~ULogFile ()
 

Public Attributes

bool verbose
 
- Public Attributes inherited from UReplay
bool replayTimeAdvancePending
 
UTime replayTimeNow
 

Protected Member Functions

void createBaseVar ()
 
UFileItemgetItem (const int client, bool mayCreate)
 
- Protected Member Functions inherited from UResVarPool
void setDescription (const char *note, bool copy=false)
 
- Protected Member Functions inherited from UResBase
UResBasegetStaticResource (const char *resName, bool mayCreate, bool staticOnly=true)
 get a pointer to a static resource. More...
 

Protected Attributes

UFileItemopenFiles [MAX_FILE_CNT]
 array of poly handles More...
 
int openFilesCnt
 Number of polys allocated. More...
 
UVariablevarFileDir
 directory for the files More...
 
UVariablevarOpenFiles
 number of open files More...
 
- Protected Attributes inherited from UResBase
int resFuncIdx
 
char resID [MAX_RESOURCE_ID_LENGTH]
 
char resIsAlso [MAX_RESOURCE_ISALSO_LENGTH]
 
int resVersion
 
- Protected Attributes inherited from UReplay
bool replay
 
FILE * replayFile
 
char replayFileName [REPLAY_FILE_NAME_LENGTH]
 replay filename More...
 
char replayLine [MAX_LOG_LINE_LENGTH]
 
int replayLogLine
 
UReplayreplayParent
 
UTime replayTimeNext
 
- Protected Attributes inherited from ULogFile
int failCnt
 
FILE * logFile
 
ULock logFileLock
 
char logFileName [MAX_FILENAME_SIZE]
 
bool logFlush
 
char logName [MAX_FILENAME_SIZE]
 
UTime logTime
 
bool logTimeUse
 

Static Protected Attributes

static const int MAX_FILE_CNT = 100
 maximum number of files More...
 
- Static Protected Attributes inherited from UReplay
static const int MAX_LOG_LINE_LENGTH = 10000
 
static const int REPLAY_FILE_NAME_LENGTH = 264
 max length of replay filename More...
 

Additional Inherited Members

- Static Public Member Functions inherited from UResVarPool
static const char * getResClassID ()
 

Detailed Description

This is the shared resource class. It must enherit from the resource base class (or one of its decendents) as shown.

Author
Christian Andersen

Constructor & Destructor Documentation

UResFile::UResFile ( )
inline
UResFile::~UResFile ( )
virtual

Destructor

Member Function Documentation

bool UResFile::add ( const int  client,
const char *  text 
)

Add some text to the file

Parameters
clientis the client trying to add some text to a file.
textis the name text to add, is assumed to be coded with XML escapes, that will be removed.
Returns
true if added, false if no file is open.

References UFileItem::add().

Referenced by UFuncFile::handleCommand().

bool UResFile::closeFile ( const int  client)

close a file (after all text is added)

Parameters
clientis the owner of the file (one file can be open per client only)
Returns
true if file was open and is now closed, false if file was not open.

References bool2str(), and UFileItem::closeFile().

Referenced by UFuncFile::handleCommand().

void UResFile::createBaseVar ( )
protected

Make the variables that will be available to other plugins

bool UResFile::del ( const char *  name)

Delete a file

Parameters
nameis the name of the file - in current directory
Returns
true if deleted poly, false if not existed.

References bool2str(), and MAX_FILENAME_LENGTH.

Referenced by UFuncFile::handleCommand().

const char * UResFile::getDirName ( )

Get name of directory

Referenced by UFuncFile::handleCommand().

const char * UResFile::getFilename ( const int  client,
const char *  preStr,
char *  buff,
const int  buffCnt 
)

Get full filename for the item into provided buffer

Parameters
intclient if the file owner
preStris a string to be placed before the filename
buffis the buffer, where to place the filename.
buffCntis the length of the provided buffer
Returns
a pointer to the buffer.

References UFileItem::filename.

Referenced by UFuncFile::handleCommand().

const char * UResFile::getFilename ( const int  client)

Get filename (no path) for the item

Parameters
intclient if the file owner
Returns
a pointer to the filename.

References UFileItem::filename.

UFileItem * UResFile::getItem ( const int  client,
bool  mayCreate 
)
protected

Get the open file item for this client.

Parameters
clientis the client number (from message).
mayCreateif true and no file itemexist for the client, then it is created.
Returns
a pointer to the file item, or NULL if none exist (or not created).

References UFileItem::client, and UFileItem::UFileItem().

const char * UResFile::getList ( const char *  preStr,
char *  buff,
const int  buffCnt 
)

Get list of current files in the directory

Parameters
preStris a short string, that is added at the start of the buffer.
buffis the buffer, where to write the list.
buffCntis the size of the buffer
Returns
a pointer to buff

Referenced by UFuncFile::handleCommand().

bool UResFile::newFile ( const int  client,
const char *  newName 
)

Open a new file

Parameters
clientthe client number of the client creating the file
newNameis the new name of the file
Returns
true if the file was opened successfully

References bool2str(), UFileItem::closeFile(), UFileItem::filename, UFileItem::isOpen(), and UFileItem::openFile().

Referenced by UFuncFile::handleCommand().

int UResFile::setOpenFilesCnt ( )

Set global variable to the current number of open files.

Returns
the number of open files.

References UFileItem::isOpen().

void UResFile::UResFileInit ( )

Initialize resource

Member Data Documentation

const int UResFile::MAX_FILE_CNT = 100
staticprotected

maximum number of files

UFileItem* UResFile::openFiles[MAX_FILE_CNT]
protected

array of poly handles

int UResFile::openFilesCnt
protected

Number of polys allocated.

UVariable* UResFile::varFileDir
protected

directory for the files

UVariable* UResFile::varOpenFiles
protected

number of open files

bool UResFile::verbose

Is the resource to output verbose message to console

Referenced by UFuncFile::handleCommand().


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