From 7b08644490cc1f897f4c327af839f0b2448351c0 Mon Sep 17 00:00:00 2001 From: Tavian Barnes Date: Wed, 7 Apr 2010 15:59:49 -0400 Subject: Don't use dynamic memory for dmnsn_intersection's. Drops us from ~400,000 allocs to ~1000. Oops ><. --- libdimension/dimension/object.h | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) (limited to 'libdimension/dimension/object.h') diff --git a/libdimension/dimension/object.h b/libdimension/dimension/object.h index 525c637..f0395cd 100644 --- a/libdimension/dimension/object.h +++ b/libdimension/dimension/object.h @@ -41,18 +41,14 @@ typedef struct dmnsn_intersection { const dmnsn_interior *interior; } dmnsn_intersection; -/* Intersection allocation cannot fail */ -dmnsn_intersection *dmnsn_new_intersection(); -void dmnsn_delete_intersection(dmnsn_intersection *intersection); - /* Forward-declare dmnsn_object */ typedef struct dmnsn_object dmnsn_object; /* Object callback types */ -typedef dmnsn_intersection * -dmnsn_object_intersection_fn(const dmnsn_object *object, dmnsn_line line); - +typedef bool dmnsn_object_intersection_fn(const dmnsn_object *object, + dmnsn_line line, + dmnsn_intersection *intersection); typedef bool dmnsn_object_inside_fn(const dmnsn_object *object, dmnsn_vector point); -- cgit v1.2.3