VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
taskStmt.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1999 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: taskStmt.h,v $ $Revision: 1.20 $ $State: Exp $
7 *********************************************************************/
8 
11 
12 #ifndef DtTaskStmt_H_
13 #define DtTaskStmt_H_
14 
15 class DtTaskStmt;
16 
17 #include "vrfplan/simStatement.h"
18 #include <vlutil/vlNetTypes.h>
19 #include "vrfplan/vrfplanDefines.h"
20 
21 const char DtTaskStmtTypeName[] = "Task";
22 
23 class DtSimTask;
24 
27 {
28 public:
29 
32 
34  DtTaskStmt(DtReaderWriterRegistry* parentRegistry = NULL);
35 
37  DtTaskStmt(const DtTaskStmt& orig,
38  DtReaderWriterRegistry* parentRegistry = NULL);
39 
41  virtual ~DtTaskStmt();
42 
44  DtTaskStmt& operator=(const DtTaskStmt& orig);
45 
47  virtual DtSimStatement* clone(
48  DtReaderWriterRegistry* parentRegistry = NULL) const;
49 
51  virtual int type() const;
52 
55  virtual void execute(DtPlan& planContext);
56 
64  virtual DtString stringRep(int subBlockIndex = DtSR_STMT) const;
65 
67  virtual DtSimTask* task() const;
69  virtual void setTask(DtSimTask* arg);
70 
75  virtual void putSelf(std::string& fp, int indentLevel = 0,
76  bool writeUnspecified = false, const DtFilename& path = DtReaderWriter::appPath());
77 
80  virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths& searchPaths,
81  const DtVariableBindingsList& variableBindings);
82 
84  virtual int netRepSize() const;
85 
87  virtual bool setFromNet(const char* contentBuffer,
88  unsigned contentSize);
89 
92  virtual bool setToNet();
93 
94  static DtSimStatement * creator(DtReaderWriterRegistry* parentRegistry = NULL);
95 
96 protected:
97 
99 };
100 
101 #endif
virtual DtSimStatement * clone(DtReaderWriterRegistry *parentRegistry=NULL) const =0
virtual copy constructor A typical clone function.
DtSimTask * myTask
Definition: taskStmt.h:98
virtual void execute(DtPlan &planContext)=0
Execute the current statement and make any changes to the Plan state as appropriate.
Definition: readerWriterRegistry.h:39
Instances of DtTaskStmt represent a single task command.
Definition: taskStmt.h:26
const char DtTaskStmtTypeName[]
Definition: taskStmt.h:21
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
virtual bool setFromNet(const char *contentBuffer, unsigned contentSize)
Extracts statement Id from buffer.
virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference())
Top level to read itself from an input stream.
virtual void putSelf(std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename())
Top level call to write itself to file.
virtual int netRepSize() const
Returns sizeof(DtNetSimStatement).
class DtPlan:
Definition: plan.h:91
class DtSimStatement:
Definition: simStatement.h:35
DtSimTask is an abstract base class from which real tasks can derive.
Definition: simTask.h:31
virtual bool setToNet()
Casts myNetRep to DtNetSimStatement* and fills in structure.
#define DT_DLL_vrfplan
This file is used to determine how to build.
Definition: vrfplanDefines.h:28
DtSimStatement & operator=(const DtSimStatement &orig)
Assignment operator (protected because this is an abstract base class).
static const DtFilename & appPath()
Gets the current working directory.
virtual int type() const =0
Returns the type of statement Type (defined in simStmtTypes.h)
virtual DtString stringRep(int subBlockIndex=DtSR_STMT) const =0
Get a readable string representation of this statement.

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)