VR-Forces 5.0.1 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
formationAutoLayoutFactory.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2013 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
8 
9 #pragma once
10 
12 #include <QtCore/QHash>
13 #include <QtCore/QVector>
14 #include <matrix/vlVector.h>
15 
16 class DtFormation;
18 
20 {
21 public:
23  virtual ~DtFormationAutoLayout();
24 
26  virtual DtFormation* layout(const DtVrfSubObjectParameterList*, double spacing) const;
27 
29  virtual DtVector positionOffset(double headingFromZeroInDegrees, double spacing) const;
30  virtual double headingOffset() const;
31 };
32 
34 {
35 public:
37  virtual ~DtColumnFormationAutoLayout();
38 
39  virtual double headingOffset() const;
40 };
41 
43 {
44 public:
46  virtual ~DtLineFormationAutoLayout();
47 
48  virtual double headingOffset() const;
49 };
50 
52 {
53 public:
55  virtual ~DtVeeFormationAutoLayout();
56 
58  virtual DtFormation* layout(const DtVrfSubObjectParameterList*, double spacing) const;
59 
60  virtual double headingOffset() const;
61 
62 protected:
63  mutable int myCenter;
64  mutable int myIndex;
65 };
66 
68 {
69 public:
71  virtual ~DtWedgeFormationAutoLayout();
72 
73  virtual double headingOffset() const;
74 };
75 
77 {
78 public:
82 
85  void addFormationAutoLayout(const QString& name, DtFormationAutoLayout*);
86  void removeFormationAutoLayout(const QString& name);
87 
89  virtual DtFormation* layout(const QString& autoLayout, double spacing, const DtVrfSubObjectParameterList*) const;
90 
91  const QHash<QString, DtFormationAutoLayout*>& formationAutoLayouts() const { return myFormationAutoLayouts; };
92  const QVector<QString>& orderedFormations() const { return myOrderedFormations; };
93 
94 protected:
95  QHash<QString, DtFormationAutoLayout*> myFormationAutoLayouts;
96  QVector<QString> myOrderedFormations;
97 };
Definition: formationAutoLayoutFactory.h:67
virtual double headingOffset() const
Definition: formationAutoLayoutFactory.h:42
Definition: formationAutoLayoutFactory.h:19
DtVrfSubObjectParameterList is a readable/writable list of DtVrfSubObjectParameterEntrys.
Definition: vrfSubObjectParameterList.h:21
virtual DtFormation * layout(const DtVrfSubObjectParameterList *, double spacing) const
Returns a new formation object. Needs to be freed by caller of this method.
Instances of DtFormation are a list of DtFormationEntry objects which make up an aggregate formation...
Definition: formation.h:22
Definition: formationAutoLayoutFactory.h:76
int myIndex
Definition: formationAutoLayoutFactory.h:64
const QHash< QString, DtFormationAutoLayout * > & formationAutoLayouts() const
Definition: formationAutoLayoutFactory.h:91
int myCenter
Definition: formationAutoLayoutFactory.h:63
Definition: formationAutoLayoutFactory.h:33
virtual double headingOffset() const
Definition: formationAutoLayoutFactory.h:51
QVector< QString > myOrderedFormations
Definition: formationAutoLayoutFactory.h:96
const QVector< QString > & orderedFormations() const
Definition: formationAutoLayoutFactory.h:92
#define DT_DLL_simulationObjectEditorimpl
This file is used to determine how to build.
Definition: simulationObjectEditorImplDefines.h:33

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)