VR-Forces 4.3.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtInstanceDofProcessor.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 #include <vrvOsg/vrvOsg.h>
14 
15 #include <tbb/cache_aligned_allocator.h>
16 
17 namespace makVrv
18 {
22  {
23  public:
26 
28  virtual ~DtInstanceDofProcessor();
29 
31  virtual void processRange(unsigned int instanceStride, unsigned int instanceOffset, unsigned int instanceCount);
32 
33  protected:
34 
37  {
38  InstanceMatrixVal matTmp[16];
39  osg::Quat quat;
40  osg::Quat quatTemp;
42  std::vector<InstanceMatrix,
43  tbb::cache_aligned_allocator<InstanceMatrix> > matStack;
44  std::vector<unsigned int,
45  tbb::cache_aligned_allocator<unsigned int> > childCountStack;
46  };
47 
49  void updateDofRange(unsigned int instanceStride, unsigned int instanceOffset, unsigned int instanceCount);
50 
52  bool isRangeVisible(unsigned int offset, unsigned int count);
53 
57  void updateDofs(DofUpdateStorage& localStorage, InstanceMatrix& baseSpatial,
58  unsigned int templateIx, const ArrayRange& dofRange, unsigned int drawableOffset);
59 
60  protected:
62  };
63 }

Document ID: Generated on Wed Jul 29 00:55:00 EDT 2015 from SVN revision 155257
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)