API Documentation
Loading...
Searching...
No Matches
DesignCommandExecutor.h
Go to the documentation of this file.
1/*--------------------------------------------------------------------------------------------
2Copyright (c) 2019, NDEVR LLC
3tyler.parke@ndevr.org
4 __ __ ____ _____ __ __ _______
5 | \ | | | __ \ | ___|\ \ / / | __ \
6 | \ | | | | \ \ | |___ \ \ / / | |__) |
7 | . \| | | |__/ / | |___ \ V / | _ /
8 | |\ |_|_____/__|_____|___\_/____| | \ \
9 |__| \__________________________________| \__\
10
11Subject to the terms of the Enterprise+ Agreement, NDEVR hereby grants
12Licensee a limited, non-exclusive, non-transferable, royalty-free license
13(without the right to sublicense) to use the API solely for the purpose of
14Licensee's internal development efforts to develop applications for which
15the API was provided.
16
17The above copyright notice and this permission notice shall be included in all
18copies or substantial portions of the Software.
19
20THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
21INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
22PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
23FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
24OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
25DEALINGS IN THE SOFTWARE.
26
27Library: Design
28File: DesignCommandExecutor
29Included in API: False
30Author(s): Tyler Parke
31 *-----------------------------------------------------------------------------------------**/
32#pragma once
33#include "DLLInfo.h"
34#include <NDEVR/DesignObject.h>
35#include <NDEVR/ModelIterator.h>
36
37namespace NDEVR
38{
39 class Geometry;
40 class Model;
41 class TableColumn;
42 class DesignObject;
43 class DesignObjectLookup;
44 class ManagedDesignCommand;
45 /**--------------------------------------------------------------------------------------------------
46 \brief Used to execute a ManagedDesignCommand
47
48 **/
50 {
51 public:
53 ParseResult process(Model& model) override;
54 ParseResult process(Model& model, Geometry& geo) override;
55 ParseResult process(Model& model, Material& mat) override;
57 protected:
58 virtual bool processDesignCommand(DesignObject& object);
59 protected:
62 };
63
64
65}
66
67
68
69
#define NDEVR_DESIGN_API
Definition DLLInfo.h:55
A low-level database object that can be used to access general stored properties within the NDEVR Mod...
Definition DesignObject.h:67
A core class where all Design Objects including models, materials, and geometries are stored....
Definition DesignObjectLookup.h:65
Used to execute a ManagedDesignCommand.
Definition DesignCommandExecutor.h:50
ParseResult process(Model &model) override
ParseResult process(Model &model, Geometry &geo) override
DesignObjectLookup * m_lookup
Definition DesignCommandExecutor.h:61
ParseResult process(Model &model, Material &mat) override
virtual bool processDesignCommand(DesignObject &object)
ManagedDesignCommand * m_command
Definition DesignCommandExecutor.h:60
bool shouldProcess(DesignObject &object)
DesignParameterExecutor(ManagedDesignCommand *command, DesignObjectLookup *lookup)
A core class within the model heirarchy containing vertex-based data (Usually 3D data) within a set c...
Definition Geometry.h:64
A specified type of DesignCommand that performs common actions such as grouping or setting property v...
Definition ManagedDesignCommand.h:14
Container responsible for storing and setting the appearance of a Model or Geometry within the NDEVR ...
Definition Material.h:51
A core class that represents a node on model heirarchy. This node may contain a Geometry or one or mo...
Definition Model.h:58
A base class for easily transversing a model heirarchy, applying an overritten function at each level...
Definition ModelIterator.h:43
ParseResult
Definition ModelIterator.h:46
Definition ACIColor.h:37