From 16c6d891d2236a30bb742c5bd4d0ac4e56bb901e Mon Sep 17 00:00:00 2001 From: Johannes Hofmann Date: Tue, 3 May 2005 18:04:14 +0000 Subject: use class Mountains use class Mountains --- src/Hill.cxx | 66 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 65 insertions(+), 1 deletion(-) (limited to 'src/Hill.cxx') diff --git a/src/Hill.cxx b/src/Hill.cxx index 550f925..8d9c4f8 100644 --- a/src/Hill.cxx +++ b/src/Hill.cxx @@ -1,5 +1,5 @@ // -// "$Id: Hill.cxx,v 1.4 2005/04/30 21:18:43 hofmann Exp $" +// "$Id: Hill.cxx,v 1.5 2005/05/03 20:04:14 hofmann Exp $" // // PSEditWidget routines. // @@ -22,6 +22,7 @@ // #include +#include #include #include "Mountain.H" @@ -92,3 +93,66 @@ void Mountain::clear_next_visible() { next_visible = NULL; } + + + +Mountains::Mountains() { + fprintf(stderr, "===>huhu\n"); + num = 0; + cap = 100; + m = (Mountain **) malloc(cap * sizeof(class Mountain *)); +} + +Mountains::~Mountains() { + if (m) { + free(m); + } +} + + +void +Mountains::add(Mountain *m1) { + if (num >= cap) { + cap = cap?cap * 2:100; + m = (Mountain **) realloc(m, cap * sizeof(class Mountain *)); + } + + m[num++] = m1; +} + +void +Mountains::clear() { + if (m) { + free(m); + m = NULL; + } + cap = 0; + num = 0; +} + +void +Mountains::clobber() { + int i; + + for(i=0; i= num) { + return NULL; + } else { + return m[n]; + } +} -- cgit v1.2.3