CFx SDK Documentation  2022 SP0
EdLispEngine.h
Go to the documentation of this file.
1 // Copyright (C) 2002-2017, Open Design Alliance (the "Alliance").
3 // All rights reserved.
4 //
5 // This software and its documentation and related materials are owned by
6 // the Alliance. The software may only be incorporated into application
7 // programs owned by members of the Alliance, subject to a signed
8 // Membership Agreement and Supplemental Software License Agreement with the
9 // Alliance. The structure and organization of this software are the valuable
10 // trade secrets of the Alliance and its suppliers. The software is also
11 // protected by copyright law and international treaty provisions. Application
12 // programs incorporating this software must include the following statement
13 // with their copyright notices:
14 //
15 // This application incorporates Teigha(R) software pursuant to a license
16 // agreement with Open Design Alliance.
17 // Teigha(R) Copyright (C) 2002-2017 by Open Design Alliance.
18 // All rights reserved.
19 //
20 // By use of this software, its documentation or related materials, you
21 // acknowledge and accept the above terms.
23 
24 #ifndef _EDLISPENGINE_H_INCLUDED_
25 #define _EDLISPENGINE_H_INCLUDED_
26 
27 #include "RxObject.h"
28 #include "RxModule.h"
29 
30 class OdEdCommandContext;
31 
35 {
36 protected:
38 public:
40 
42 
43  virtual void lispWillStart(OdEdCommandContext* pCmdCtx, const OdString& firstLine);
44 
45  virtual void lispEnded(OdEdCommandContext* pCmdCtx);
46 
47  virtual void lispCancelled(OdEdCommandContext* pCmdCtx);
48 };
49 
54 
55 
59 {
60 protected:
62 public:
64 
66 
72  virtual void addReactor(OdEdLispEngineReactor* pReactor) = 0;
73 
79  virtual void removeReactor(OdEdLispEngineReactor* pReactor) = 0;
80 
81  virtual void execute(OdEdCommandContext* pCmdCtx, const OdString& firstLine) = 0;
82 };
83 
88 
89 
93 {
94 protected:
96 public:
98 
100 
102 };
103 
105 
106 
107 #endif //_EDLISPENGINE_H_INCLUDED_
OdSmartPtr< OdEdLispModule > OdEdLispModulePtr
Definition: EdLispEngine.h:104
OdSmartPtr< OdEdLispEngine > OdEdLispEnginePtr
Definition: EdLispEngine.h:87
OdSmartPtr< OdEdLispEngineReactor > OdEdLispEngineReactorPtr
Definition: EdLispEngine.h:53
#define ODRX_ABSTRACT
#define FIRSTDLL_EXPORT
Definition: RootExport.h:39
virtual void removeReactor(OdEdLispEngineReactor *pReactor)=0
ODRX_DECLARE_MEMBERS(OdEdLispEngine)
virtual void addReactor(OdEdLispEngineReactor *pReactor)=0
virtual void execute(OdEdCommandContext *pCmdCtx, const OdString &firstLine)=0
ODRX_DECLARE_MEMBERS(OdEdLispEngineReactor)
virtual void lispWillStart(OdEdCommandContext *pCmdCtx, const OdString &firstLine)
virtual void lispEnded(OdEdCommandContext *pCmdCtx)
virtual void lispCancelled(OdEdCommandContext *pCmdCtx)
ODRX_DECLARE_MEMBERS(OdEdLispModule)
virtual OdEdLispEnginePtr createLispEngine()=0