resolving some symbol problems : these functions don't link in the sample code with the new namespace scheme - they apparently have to be declared extern "C"

This commit is contained in:
Manuel Kraemer 2012-06-11 07:54:26 -07:00
parent 36dc03f3b0
commit 03e474f422
2 changed files with 18 additions and 18 deletions

View File

@ -61,7 +61,7 @@
namespace OpenSubdiv {
namespace OPENSUBDIV_VERSION {
extern void computeFace( const VertexDescriptor *vdesc, float * vertex, float * varying, const int *F_IT, const int *F_ITa, int offset, int start, int end) {
void computeFace( const VertexDescriptor *vdesc, float * vertex, float * varying, const int *F_IT, const int *F_ITa, int offset, int start, int end) {
int ve = vdesc->numVertexElements;
int vev = vdesc->numVaryingElements;
@ -88,7 +88,7 @@ extern void computeFace( const VertexDescriptor *vdesc, float * vertex, float *
}
}
extern void computeEdge( const VertexDescriptor *vdesc, float *vertex, float *varying, const int *E_IT, const float *E_W, int offset, int start, int end) {
void computeEdge( const VertexDescriptor *vdesc, float *vertex, float *varying, const int *E_IT, const float *E_W, int offset, int start, int end) {
int ve = vdesc->numVertexElements;
int vev = vdesc->numVaryingElements;
@ -123,7 +123,7 @@ extern void computeEdge( const VertexDescriptor *vdesc, float *vertex, float *va
}
}
extern void computeVertexA(const VertexDescriptor *vdesc, float *vertex, float *varying, const int *V_ITa, const float *V_W, int offset, int start, int end, int pass) {
void computeVertexA(const VertexDescriptor *vdesc, float *vertex, float *varying, const int *V_ITa, const float *V_W, int offset, int start, int end, int pass) {
int ve = vdesc->numVertexElements;
int vev = vdesc->numVaryingElements;
@ -163,7 +163,7 @@ extern void computeVertexA(const VertexDescriptor *vdesc, float *vertex, float *
}
}
extern void computeVertexB(const VertexDescriptor *vdesc, float *vertex, float *varying, const int *V_ITa, const int *V_IT, const float *V_W, int offset, int start, int end) {
void computeVertexB(const VertexDescriptor *vdesc, float *vertex, float *varying, const int *V_ITa, const int *V_IT, const float *V_W, int offset, int start, int end) {
int ve = vdesc->numVertexElements;
int vev = vdesc->numVaryingElements;
@ -194,7 +194,7 @@ extern void computeVertexB(const VertexDescriptor *vdesc, float *vertex, float *
}
}
extern void computeLoopVertexB(const VertexDescriptor *vdesc, float *vertex, float *varying, const int *V_ITa, const int *V_IT, const float *V_W, int offset, int start, int end) {
void computeLoopVertexB(const VertexDescriptor *vdesc, float *vertex, float *varying, const int *V_ITa, const int *V_IT, const float *V_W, int offset, int start, int end) {
int ve = vdesc->numVertexElements;
int vev = vdesc->numVaryingElements;

View File

@ -85,19 +85,19 @@ struct VertexDescriptor {
int numVaryingElements;
};
extern void computeFace(const VertexDescriptor *vdesc, float * vertex, float * varying,
const int *F_IT, const int *F_ITa, int offset, int start, int end);
extern void computeEdge(const VertexDescriptor *vdesc, float *vertex, float * varying,
const int *E_IT, const float *E_W, int offset, int start, int end);
extern void computeVertexA(const VertexDescriptor *vdesc, float *vertex, float * varying,
const int *V_ITa, const float *V_W,
int offset, int start, int end, int pass);
extern void computeVertexB(const VertexDescriptor *vdesc, float *vertex, float * varying,
const int *V_ITa, const int *V_IT, const float *V_W,
int offset, int start, int end);
extern void computeLoopVertexB(const VertexDescriptor *vdesc, float *vertex, float * varying,
const int *V_ITa, const int *V_IT, const float *V_W,
int offset, int start, int end);
extern "C" {
void computeFace(const VertexDescriptor *vdesc, float * vertex, float * varying, const int *F_IT, const int *F_ITa, int offset, int start, int end);
void computeEdge(const VertexDescriptor *vdesc, float *vertex, float * varying, const int *E_IT, const float *E_W, int offset, int start, int end);
void computeVertexA(const VertexDescriptor *vdesc, float *vertex, float * varying, const int *V_ITa, const float *V_W, int offset, int start, int end, int pass);
void computeVertexB(const VertexDescriptor *vdesc, float *vertex, float * varying, const int *V_ITa, const int *V_IT, const float *V_W, int offset, int start, int end);
void computeLoopVertexB(const VertexDescriptor *vdesc, float *vertex, float * varying, const int *V_ITa, const int *V_IT, const float *V_W, int offset, int start, int end);
}
} // end namespace OPENSUBDIV_VERSION
using namespace OPENSUBDIV_VERSION;