VR-Forces 4.0.4 Class Documentation
include/vrftasks/setDataReq.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 1999 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 /*******************************************************************************
00006 ** $RCSfile: setDataReq.h,v $ $Revision: 1.23 $ $State: Exp $
00007 *******************************************************************************/
00008 
00011 
00017 
00018 
00019 #ifndef DtSetDataRequest_H_
00020 #define DtSetDataRequest_H_
00021 
00022 #include "vrfutil/rdrWritr.h"
00023 #include "vrftasks/setReqFact.h"
00024 #include "tdbutil/translation.h"
00025 #include "tdbutil/tdbUnits.h"
00026 
00027 class DtRwString;
00028 class DtSetDataRequestFactory;
00029 
00043 
00044 #include "vrftasks/vrftasksDefines.h"
00045 class DT_DLL_vrftasks DtSetDataRequest : public DtReaderWriter
00046 {
00047 protected:
00050 
00052    DtSetDataRequest();
00053 
00056    DtSetDataRequest(const DtString & writeName,
00057       DtReaderWriterRegistry * parentRegistry = 0);
00058 
00060    DtSetDataRequest(const DtString & writeName, const DtSetDataRequest & orig,
00061       DtReaderWriterRegistry * parentRegistry = 0);
00062 
00064    const DtSetDataRequest & operator=(const DtSetDataRequest & orig);
00065 
00066 public:
00067 
00069    virtual ~DtSetDataRequest();
00070 
00073    virtual bool init();
00074 
00079    virtual int type() const = 0;
00080 
00085    virtual DtSetDataRequest * clone(const DtString & name,
00086       DtReaderWriterRegistry * parentRegistry = 0) const = 0;
00087 
00094    virtual DtString stringRep() const = 0;
00095 
00098    virtual void putData(FILE *fp, int indentLevel = 0);
00099 
00102    virtual DtlObjPtr getData(DtlObjPtr args, const DtFilename& searchPath,
00103       const DtVariableBindingsList& variableBindings);
00104 
00105    virtual char* netRep();
00106 
00111 
00112 
00113 
00114    virtual int netRepSize() const;
00115 
00118    virtual bool setFromNet(const char* contentBuffer,
00119       unsigned contentSize);
00120 
00123    virtual bool setToNet();
00125 
00129    static DtSetDataRequest * createSetDataRequest(DtlObjPtr mtlStream);
00130    static DtSetDataRequest * createSetDataRequest(int requestType);
00131 
00132    static void addSetDataRequestCreatorFcn(const DtString & setDataName,
00133       int setDataType, DtSetDataRequestCreatorFcn fcn);
00134 
00135    static void setFactory(DtSetDataRequestFactory * factory);
00136    static DtSetDataRequestFactory * factory();
00137 
00138    static bool getSetDataNameFromSetDataType(int setDataType,
00139       DtString& setDataName);
00140    static bool getSetDataTypeFromSetDataName(const DtString& setDataName,
00141       int& setDataType);
00142 
00143    //static bool addSetDataTypeMapping(const DtString& setDataName, int setDataType);
00144    //static bool removeSetDataTypeMapping(const DtString& setDataName,
00146 
00147 protected:
00148    virtual char* createNetworkBuffer();
00149 
00150 protected:
00151    char*     myNetRep;
00152 
00153 protected:
00154 
00155    static DtSetDataRequestFactory * myFactory;
00156 };
00157 
00158 namespace DtBufferSerialize
00159 {
00162    DT_DLL_vrftasks int getSize(const DtSetDataRequest* const&  setDataPtr);
00163 
00168    DT_DLL_vrftasks char *encode(const DtSetDataRequest* const& setDataPtr, char *buffer);
00169 
00178    DT_DLL_vrftasks const char *decode(DtSetDataRequest*& setDataPtr, const char *buffer);
00179 }
00180 
00181 #endif
00182 
00183 
00184 

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)