Added the rest of the basic functions required for running simulations with the fortran interface
This commit is contained in:
@@ -19,6 +19,30 @@ void acdevicedestroy_(Device* device);
|
|||||||
|
|
||||||
void acdeviceprintinfo_(const Device* device);
|
void acdeviceprintinfo_(const Device* device);
|
||||||
|
|
||||||
|
void acupdatebuiltinparams_(AcMeshInfo* info);
|
||||||
|
|
||||||
|
void acdeviceswapbuffers_(const Device* device);
|
||||||
|
|
||||||
|
void acdeviceloadmesh_(const Device* device, const Stream* stream, const AcMesh* host_mesh);
|
||||||
|
|
||||||
|
void acdevicestoremesh_(const Device* device, const Stream* stream, AcMesh* host_mesh);
|
||||||
|
|
||||||
|
void acdeviceintegratesubstep_(const Device* device, const Stream* stream, const int* step_number,
|
||||||
|
const int3* start, const int3* end, const AcReal* dt);
|
||||||
|
void acdeviceperiodicboundconds_(const Device* device, const Stream* stream, const int3* start,
|
||||||
|
const int3* end);
|
||||||
|
|
||||||
|
void acdevicereducescal_(const Device* device, const Stream* stream, const ReductionType* rtype,
|
||||||
|
const VertexBufferHandle* vtxbuf_handle, AcReal* result);
|
||||||
|
|
||||||
|
void acdevicereducevec_(const Device* device, const Stream* stream, const ReductionType* rtype,
|
||||||
|
const VertexBufferHandle* vtxbuf0, const VertexBufferHandle* vtxbuf1,
|
||||||
|
const VertexBufferHandle* vtxbuf2, AcReal* result);
|
||||||
|
|
||||||
|
void acdevicesynchronizestream_(const Device* device, const Stream* stream);
|
||||||
|
|
||||||
|
void acdeviceloadmeshinfo_(const Device* device, const AcMeshInfo* info);
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
} // extern "C"
|
} // extern "C"
|
||||||
#endif
|
#endif
|
||||||
|
@@ -30,3 +30,63 @@ acupdatebuiltinparams_(AcMeshInfo* info)
|
|||||||
// TODO errorcheck
|
// TODO errorcheck
|
||||||
acUpdateBuiltinParams(info);
|
acUpdateBuiltinParams(info);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
acdeviceswapbuffers_(const Device* device)
|
||||||
|
{
|
||||||
|
acDeviceSwapBuffers(*device);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
acdeviceloadmesh_(const Device* device, const Stream* stream, const AcMesh* host_mesh)
|
||||||
|
{
|
||||||
|
acDeviceLoadMesh(*device, *stream, *host_mesh);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
acdevicestoremesh_(const Device* device, const Stream* stream, AcMesh* host_mesh)
|
||||||
|
{
|
||||||
|
acDeviceStoreMesh(*device, *stream, host_mesh);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
acdeviceintegratesubstep_(const Device* device, const Stream* stream, const int* step_number,
|
||||||
|
const int3* start, const int3* end, const AcReal* dt)
|
||||||
|
{
|
||||||
|
acDeviceIntegrateSubstep(*device, *stream, *step_number, *start, *end, *dt);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
acdeviceperiodicboundconds_(const Device* device, const Stream* stream, const int3* start,
|
||||||
|
const int3* end)
|
||||||
|
{
|
||||||
|
|
||||||
|
acDevicePeriodicBoundconds(*device, *stream, *start, *end);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
acdevicereducescal_(const Device* device, const Stream* stream, const ReductionType* rtype,
|
||||||
|
const VertexBufferHandle* vtxbuf_handle, AcReal* result)
|
||||||
|
{
|
||||||
|
acDeviceReduceScal(*device, *stream, *rtype, *vtxbuf_handle, result);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
acdevicereducevec_(const Device* device, const Stream* stream, const ReductionType* rtype,
|
||||||
|
const VertexBufferHandle* vtxbuf0, const VertexBufferHandle* vtxbuf1,
|
||||||
|
const VertexBufferHandle* vtxbuf2, AcReal* result)
|
||||||
|
{
|
||||||
|
acDeviceReduceVec(*device, *stream, *rtype, *vtxbuf0, *vtxbuf1, *vtxbuf2, result);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
acdevicesynchronizestream_(const Device* device, const Stream* stream)
|
||||||
|
{
|
||||||
|
acDeviceSynchronizeStream(*device, *stream);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
acdeviceloadmeshinfo_(const Device* device, const AcMeshInfo* info)
|
||||||
|
{
|
||||||
|
acDeviceLoadMeshInfo(*device, *info);
|
||||||
|
}
|
||||||
|
Reference in New Issue
Block a user