/*
 * You may freely copy, distribute, and reuse the code in this example.
 * NeXT disclaims any warranty of any kind, expressed or  implied, as to its
 * fitness for any particular use.
 */


#import "FooObject.h"
#import <objc/hashtable.h>
#import <libc.h>

@implementation FooObject

static int memory = 0;

- init
{
  [super init];
  	/* Note that this counter does not get reset even if all foo objects
	 * are freed.
	 */
  tag = memory++;
  return self;
}
  
- free
{
	/* Make sure the string buffer allocated gets freed */
  return [super free];
}

- (int)tag { return tag; }
- (struct ct_hmsf *) startFrame		{ return &startFrame; }
- (struct ct_hmsf *) endFrame		{ return &endFrame; }
- (char *) comment			{ return comment; }

- setStartFrame: (struct ct_hmsf *) a	{ startFrame = *a; return self; }
- setEndFrame: (struct ct_hmsf *) a 	{ endFrame = *a; return self; }
- setComment: (char *) s		{ 	strcpy( comment, s ); 
						return comment; }
						
@end
