Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- double * data = new double[3*points.size()];
- for (std::uint64_t n = 0; n <points.size(); n++) {
- pData[3*n ]=points[n].GetX();
- pData[3*n+1]=points[n].GetY();
- pData[3*n+2]=points[n].GetZ();
- }
- size_t nodes;
- unsigned char* tree = c_function(points.size(), data, &nodes);
- delete[] data;
- unsigned char * c_function(size_t nPoints, double const * const dData, size_t * const dSiz)
- {
- double *tempCoord1;
- unsigned char *retval, *retvalIt;
- retval = malloc(335 + UINT64_C(2) + UINT64_C(6) * sizeof(double)); retvalIt = retval+177;
- tempCoord1 = malloc(3*67*sizeof(double)); // << this mallocs over dData
- *tempCoord1=32.9;
- free(tempCoord1);
- if (dSiz) *dSiz = (size_t)(retvalIt-retval);
- retvalIt = realloc(retval,(size_t)(retvalIt-retval));
- return (retvalIt) ? retvalIt : retval;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement