BodyCustomizerInterface.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2008, AIST, the University of Tokyo and General Robotix Inc.
3  * All rights reserved. This program is made available under the terms of the
4  * Eclipse Public License v1.0 which accompanies this distribution, and is
5  * available at http://www.eclipse.org/legal/epl-v10.html
6  * Contributors:
7  * National Institute of Advanced Industrial Science and Technology (AIST)
8  */
15 #ifndef HRPMODEL_BODY_CUSTOMIZER_INTERFACE_H_INCLUDED
16 #define HRPMODEL_BODY_CUSTOMIZER_INTERFACE_H_INCLUDED
17 
18 #include "Config.h"
19 #include <string>
20 #include <hrpUtil/EigenTypes.h>
21 
22 namespace hrp {
23 
24  typedef void* BodyHandle;
25  typedef void* BodyCustomizerHandle;
26 
27  typedef int (*BodyGetLinkIndexFromNameFunc) (BodyHandle bodyHandle, const char* linkName);
28  typedef const char* (*BodyGetLinkNameFunc) (BodyHandle bodyHandle, int linkIndex);
29  typedef double* (*BodyGetLinkDoubleValuePtrFunc)(BodyHandle bodyHandle, int linkIndex);
30 
31  static const int BODY_INTERFACE_VERSION = 1;
32 
34  {
35  int version;
36 
42  };
43 
44  typedef const char** (*BodyCustomizerGetTargetModelNamesFunc)();
45  typedef BodyCustomizerHandle (*BodyCustomizerCreateFunc)(BodyHandle bodyHandle, const char* modelName);
46 
47  typedef void (*BodyCustomizerDestroyFunc) (BodyCustomizerHandle customizerHandle);
48  typedef int (*BodyCustomizerInitializeAnalyticIkFunc) (BodyCustomizerHandle customizerHandle, int baseLinkIndex, int targetLinkIndex);
49 
50  /*
51  p and R are based on the coordinate of a base link
52  */
53  typedef bool (*BodyCustomizerCalcAnalyticIkFunc) (BodyCustomizerHandle customizerHandle, int ikPathId, const Vector3& p, const Matrix33& R);
54 
56 
57 
58  static const int BODY_CUSTOMIZER_INTERFACE_VERSION = 1;
59 
61  {
62  int version;
63 
70  };
71 
72  typedef BodyCustomizerInterface* (*GetBodyCustomizerInterfaceFunc)(BodyInterface* bodyInterface);
73 
74  HRPMODEL_API int loadBodyCustomizers(const std::string pathString, BodyInterface* bodyInterface);
75  HRPMODEL_API int loadBodyCustomizers(const std::string pathString);
77  HRPMODEL_API int loadBodyCustomizers();
78 
79  HRPMODEL_API BodyCustomizerInterface* findBodyCustomizer(std::string modelName);
80 
81 }
82 
83 #endif
hrp::BodyHandle
void * BodyHandle
Definition: Body.h:40
hrp::BodyCustomizerInitializeAnalyticIkFunc
int(* BodyCustomizerInitializeAnalyticIkFunc)(BodyCustomizerHandle customizerHandle, int baseLinkIndex, int targetLinkIndex)
Definition: BodyCustomizerInterface.h:48
hrp::BodyInterface::getJointValuePtr
BodyGetLinkDoubleValuePtrFunc getJointValuePtr
Definition: BodyCustomizerInterface.h:39
hrp::BodyCustomizerInterface::getTargetModelNames
BodyCustomizerGetTargetModelNamesFunc getTargetModelNames
Definition: BodyCustomizerInterface.h:64
hrp::BodyCustomizerInterface::destroy
BodyCustomizerDestroyFunc destroy
Definition: BodyCustomizerInterface.h:66
hrp::BodyCustomizerInterface::setVirtualJointForces
BodyCustomizerSetVirtualJointForcesFunc setVirtualJointForces
Definition: BodyCustomizerInterface.h:69
hrp::BodyGetLinkDoubleValuePtrFunc
double *(* BodyGetLinkDoubleValuePtrFunc)(BodyHandle bodyHandle, int linkIndex)
Definition: BodyCustomizerInterface.h:29
hrp
Definition: ColdetModel.h:28
hrp::BodyCustomizerInterface::initializeAnalyticIk
BodyCustomizerInitializeAnalyticIkFunc initializeAnalyticIk
Definition: BodyCustomizerInterface.h:67
hrp::Vector3
Eigen::Vector3d Vector3
Definition: EigenTypes.h:11
hrp::BodyCustomizerCreateFunc
BodyCustomizerHandle(* BodyCustomizerCreateFunc)(BodyHandle bodyHandle, const char *modelName)
Definition: BodyCustomizerInterface.h:45
hrp::BodyCustomizerInterface::create
BodyCustomizerCreateFunc create
Definition: BodyCustomizerInterface.h:65
int
typedef int
Definition: png.h:1111
hrp::BodyInterface::getLinkName
BodyGetLinkNameFunc getLinkName
Definition: BodyCustomizerInterface.h:38
hrp::BodyCustomizerDestroyFunc
void(* BodyCustomizerDestroyFunc)(BodyCustomizerHandle customizerHandle)
Definition: BodyCustomizerInterface.h:47
hrp::BodyCustomizerCalcAnalyticIkFunc
bool(* BodyCustomizerCalcAnalyticIkFunc)(BodyCustomizerHandle customizerHandle, int ikPathId, const Vector3 &p, const Matrix33 &R)
Definition: BodyCustomizerInterface.h:53
hrp::BodyInterface
Definition: BodyCustomizerInterface.h:33
hrp::BodyInterface::getJointForcePtr
BodyGetLinkDoubleValuePtrFunc getJointForcePtr
Definition: BodyCustomizerInterface.h:41
hrp::BodyInterface::getLinkIndexFromName
BodyGetLinkIndexFromNameFunc getLinkIndexFromName
Definition: BodyCustomizerInterface.h:37
hrp::BODY_INTERFACE_VERSION
static const int BODY_INTERFACE_VERSION
Definition: BodyCustomizerInterface.h:31
hrp::BodyCustomizerInterface::calcAnalyticIk
BodyCustomizerCalcAnalyticIkFunc calcAnalyticIk
Definition: BodyCustomizerInterface.h:68
hrp::BodyInterface::getJointVelocityPtr
BodyGetLinkDoubleValuePtrFunc getJointVelocityPtr
Definition: BodyCustomizerInterface.h:40
hrp::BodyCustomizerInterface::version
int version
Definition: BodyCustomizerInterface.h:62
EigenTypes.h
hrp::BodyCustomizerSetVirtualJointForcesFunc
void(* BodyCustomizerSetVirtualJointForcesFunc)(BodyCustomizerHandle customizerHandle)
Definition: BodyCustomizerInterface.h:55
hrp::Matrix33
Eigen::Matrix3d Matrix33
Definition: EigenTypes.h:12
void
typedef void(PNGAPI *png_error_ptr) PNGARG((png_structp
bodyInterface
static BodyInterface * bodyInterface
Definition: bush_customizer.cpp:48
hrp::BodyGetLinkNameFunc
const typedef char *(* BodyGetLinkNameFunc)(BodyHandle bodyHandle, int linkIndex)
Definition: BodyCustomizerInterface.h:28
hrp::BodyInterface::version
int version
Definition: BodyCustomizerInterface.h:35
hrp::BodyCustomizerInterface
Definition: BodyCustomizerInterface.h:60
hrp::BODY_CUSTOMIZER_INTERFACE_VERSION
static const int BODY_CUSTOMIZER_INTERFACE_VERSION
Definition: BodyCustomizerInterface.h:58
hrp::BodyCustomizerHandle
void * BodyCustomizerHandle
Definition: Body.h:42
hrp::BodyCustomizerGetTargetModelNamesFunc
const typedef char **(* BodyCustomizerGetTargetModelNamesFunc)()
Definition: BodyCustomizerInterface.h:44
hrp::BodyGetLinkIndexFromNameFunc
int(* BodyGetLinkIndexFromNameFunc)(BodyHandle bodyHandle, const char *linkName)
Definition: BodyCustomizerInterface.h:27
hrp::loadBodyCustomizers
HRPMODEL_API int loadBodyCustomizers(const std::string pathString, BodyInterface *bodyInterface)
Definition: BodyCustomizerInterface.cpp:147
hrp::findBodyCustomizer
HRPMODEL_API BodyCustomizerInterface * findBodyCustomizer(std::string modelName)
Definition: BodyCustomizerInterface.cpp:287


openhrp3
Author(s): AIST, General Robotix Inc., Nakamura Lab of Dept. of Mechano Informatics at University of Tokyo
autogenerated on Wed Sep 7 2022 02:51:02