VR-Forces Development_Version Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
include
vrvOsg
DtMetaFileVisitor.h
Go to the documentation of this file.
1
/******************************************************************************
2
** Copyright (c) 2014 MAK Technologies, Inc.
3
** All rights reserved.
4
******************************************************************************/
5
9
10
#pragma once
11
12
#include <
vrvCore/DtMetaFileManager.h
>
13
#include <
vrvOsg/DtMetaObjectFactory.h
>
14
#include <
vrvCore/DtTickableManagerInterface.h
>
15
#include <
vrvOsg/DtOsgTerrainPatchObject.h
>
16
#include <
vrvCore/DtModelDefinition.h
>
17
#include <
vrvCore/DtUniqueID.h
>
18
#include <
vrvOsg/DtOsgArticulatedModel.h
>
19
#include <osg/NodeVisitor>
20
#include <osgSim/MultiSwitch>
21
#include <osgSim/DOFTransform>
22
23
namespace
makVrv
24
{
30
class
DtMetaFileVisitor
:
public
osg::NodeVisitor
31
{
32
public
:
33
35
DtMetaFileVisitor
(
DtDe
& de,
36
DtMetaFileManager::LinkageValueVec
& metaFeatures,
37
std::vector<DtVirtualBaseClass*>& tickablesVec,
38
DtOsgArticulatedModel
* model,
39
const
std::string& modelDefName,
40
const
DtElementID
elementId,
41
const
DtUniqueID
uniqueId,
const
bool
useInstancing);
42
45
virtual
void
apply
(osg::Node& node);
46
47
virtual
void
apply
(osg::Geode& geode);
48
49
virtual
void
apply
(osg::Group& group);
50
51
virtual
void
apply
(osgSim::MultiSwitch& multiswitch);
52
53
virtual
void
apply
(osg::Switch& sw);
54
55
virtual
void
apply
(osgSim::DOFTransform& dof);
57
59
virtual
void
matchAndCreateMetaObject
(osg::Node& node,
DtOsgArticulatedModel
* osgArticulatedModel,
int
nodeTypeIndex);
60
63
virtual
bool
matches
(
const
DtMetaFileManager::NodeLinkage
& currLinkage,
64
const
osg::Node& n)
const
;
65
66
protected
:
67
68
DtDe
&
myDe
;
71
DtMetaObjectFactory
&
myMetaObjectFactory
;
73
DtMetaFileManager::LinkageValueVec
&
myDynamicFeatureNames
;
76
std::vector<DtVirtualBaseClass*>&
myCreatedDynamicFeatures
;
78
DtElementID
myElementId
;
80
std::string
myModelDefinitionName
;
82
DtOsgArticulatedModel
*
myOsgArticulatedModel
;
83
85
bool
myUseInstancing
;
87
DtUniqueID
myUniqueId
;
90
unsigned
int
myInstancedSwitchIndex
;
92
unsigned
int
myInstancedDofIndex
;
95
unsigned
int
myInstancedMultiswitchIndex
;
96
97
unsigned
int
myInstancedGeodeIndex
;
98
99
unsigned
int
myInstancedGroupIndex
;
100
};
101
}
102
Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (
www.mak.com
)