You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
57 lines
1.0 KiB
57 lines
1.0 KiB
/* |
|
htop |
|
(C) 2004-2006 Hisham H. Muhammad |
|
Released under the GNU GPL, see the COPYING file |
|
in the source distribution for its full text. |
|
*/ |
|
|
|
#include "Object.h" |
|
#include "RichString.h" |
|
#include "CRT.h" |
|
#include <stdlib.h> |
|
#include <stdio.h> |
|
#include <stdbool.h> |
|
|
|
#include "debug.h" |
|
|
|
/*{ |
|
|
|
#ifndef DEBUG |
|
#define Object_setClass(obj, class) |
|
#endif |
|
|
|
typedef struct Object_ Object; |
|
|
|
typedef void(*Object_Display)(Object*, RichString*); |
|
typedef int(*Object_Compare)(const void*, const void*); |
|
typedef void(*Object_Delete)(Object*); |
|
|
|
struct Object_ { |
|
#ifdef DEBUG |
|
char* class; |
|
#endif |
|
Object_Display display; |
|
Object_Delete delete; |
|
}; |
|
}*/ |
|
|
|
#ifdef DEBUG |
|
char* OBJECT_CLASS = "Object"; |
|
|
|
#else |
|
#define OBJECT_CLASS NULL |
|
#endif |
|
|
|
#ifdef DEBUG |
|
|
|
void Object_setClass(void* this, char* class) { |
|
((Object*)this)->class = class; |
|
} |
|
|
|
void Object_display(Object* this, RichString* out) { |
|
char objAddress[50]; |
|
sprintf(objAddress, "%s @ %p", this->class, (void*) this); |
|
RichString_write(out, CRT_colors[DEFAULT_COLOR], objAddress); |
|
} |
|
|
|
#endif
|
|
|