cisst-saw
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
osaOSGManipulator.h
Go to the documentation of this file.
1 /*
2 
3  Author(s): Simon Leonard
4  Created on: Nov 11 2009
5 
6  (C) Copyright 2008 Johns Hopkins University (JHU), All Rights
7  Reserved.
8 
9 --- begin cisst license - do not edit ---
10 
11 This software is provided "as is" under an open source license, with
12 no warranty. The complete license can be found in license.txt and
13 http://www.cisst.org/cisst/license.txt.
14 
15 --- end cisst license ---
16 */
17 
18 #ifndef _osaOSGManipulator_h
19 #define _osaOSGManipulator_h
20 
25 
27 
28  public osg::Group,
29  public robManipulator{
30 
31  protected:
32 
35 
36  osg::ref_ptr<osaOSGBody> base;
37 
38  osg::ref_ptr<osg::Group> osglinks;
39 
40 
43  const std::string& robotfile ) :
44  robManipulator( robotfile, Rtw0 ),
45  base( NULL ){}
46 
48  osaOSGManipulator( const vctFrm3& Rtw0,
49  const std::string& robotfile ) :
50  robManipulator( robotfile, vctFrame4x4<double>( Rtw0.Rotation(),
51  Rtw0.Translation() ) ),
52  base( NULL ){}
53 
54  public:
55 
57 
67  osaOSGManipulator( const std::vector<std::string>& models,
68  osaOSGWorld* world,
69  const vctFrame4x4<double>& Rtw0,
70  const std::string& robfilename,
71  const std::string& basemodel = "" );
72 
74 
84  osaOSGManipulator( const std::vector<std::string>& models,
85  osaOSGWorld* world,
86  const vctFrm3& Rtw0,
87  const std::string& robfilename,
88  const std::string& basemodel = "" );
89 
91 
92  void Initialize();
93 
95 
100  virtual
102  GetPositions( vctDynamicVector<double>& q ) const;
103 
105 
110  virtual
112  SetPositions( const vctDynamicVector<double>& q );
113 
114  unsigned int GetNumLinks();
115 
116  osaOSGBody* GetLink( size_t i );
118  { return base.get(); }
119 
120  virtual void Attach( osaOSGManipulator* CMN_UNUSED(tool) ){}
121 
122 };
123 
124 #endif
#define CISST_EXPORT
Definition: cmnExportMacros.h:50
Definition: robManipulator.h:34
Definition: osaOSGBody.h:34
#define CMN_UNUSED(argument)
Definition: cmnPortability.h:479
osg::ref_ptr< osaOSGBody > base
Definition: osaOSGManipulator.h:36
osaOSGBody * GetBase()
Definition: osaOSGManipulator.h:117
Errno
Definition: robManipulator.h:43
Definition: osaOSGWorld.h:24
Definition: osaOSGManipulator.h:26
virtual void Attach(osaOSGManipulator *CMN_UNUSED(tool))
Definition: osaOSGManipulator.h:120
osaOSGManipulator(const vctFrame4x4< double > &Rtw0, const std::string &robotfile)
Definition: osaOSGManipulator.h:42
osg::ref_ptr< osg::Group > osglinks
Definition: osaOSGManipulator.h:38
vctDynamicVector< double > q
Store the current joints values.
Definition: osaOSGManipulator.h:34
osaOSGManipulator(const vctFrm3 &Rtw0, const std::string &robotfile)
Definition: osaOSGManipulator.h:48