/* $Id:$
*/
#ifndef afc_Entity_h
#define afc_Entity_h
/** {secret} **/
#include <ads/adslib.h>
#include <ads/ads.h>
#include <string.h>
#include <afc/Strings.h>
/**
** Osnovni razred za gradnike v ACAD, ki skrbi za zajem podatkov, kot
** tudi gradnjo in popravke v .DWG
**/
class Entity
{
private:
ads_name name;
Strings DXFname;
ads_point point;
ads_point pickPoint;
Strings layer;
short hasXdata;
public:
Strings handle;
Strings tag;
Strings nodeName;
int TempZone;
Entity();
Entity(ads_name name);
virtual ~Entity();
Modify();
ads_real GetPoint(int i);
void GetHandle();
int GetNodeName();
Strings GetDXFName();
Strings GetLayer();
void GetTag();
SaveTag(const char *tag, const char *value, const char *appName);
SaveTag(const char *tag, int value, const char *appName);
SaveTag(const char *tag, ads_real value, const char *appName);
SaveTag(const char *tag, long value, const char *appName);
SaveTag(const char *tag, ads_point value, const char *appName);
struct resbuf * GetResBuf();
int Pick(char *prompt);
int Get();
int Get(ads_name entname);
void Release();
static void Register(const char *appName);
static void UnRegister();
long PipeNum();
protected:
struct resbuf *rb;
static struct resbuf *apps;
};
union ads_u_val *getXdata (struct resbuf * rb, const char *name);
union ads_u_val *assoc (short dxfval, struct resbuf * rb);
int isA(const char *name, struct resbuf *rb);
#endif
syntax highlighted by Code2HTML, v. 0.9.1