campo-sirio/ca/calib01.h

78 lines
1.9 KiB
C
Raw Normal View History

#ifndef __CALIB01_H
#define __CALIB01_H
#ifndef __AUTOMASK_H
#include <automask.h>
#endif
#ifndef __RELAPP_H
#include <relapp.h>
#endif
///////////////////////////////////////////////////////////
// TAnal_msk
///////////////////////////////////////////////////////////
class TAnal_msk : public TAutomask
{
protected:
virtual int create_key_fields() pure;
protected:
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly);
virtual short create_tree_field();
int compute_offset() const;
TAnal_msk(const char* name);
public:
virtual int get_logicnum() const pure;
};
///////////////////////////////////////////////////////////
// TSimple_anal_msk
///////////////////////////////////////////////////////////
class TSimple_anal_msk : public TAnal_msk
{
protected:
virtual const char* get_key_var() const pure;
virtual const char* get_des_var() const pure;
virtual short get_key_id(int n) const pure;
virtual short get_des_id(int n) const pure;
void get_key_fields(TString& key1, TString& key2) const;
int get_key_len(int level, TConfig& cfg) const;
void create_key_browse(TEdit_field& kfld, int level, TConfig& cfg);
void create_des_browse(TEdit_field& kfld, int level, TConfig& cfg);
virtual int create_key_fields();
virtual short create_tree_field();
protected:
TSimple_anal_msk(const char* name);
};
///////////////////////////////////////////////////////////
// TAnal_app
///////////////////////////////////////////////////////////
class TAnal_app : public TRelation_application
{
TRelation* _rel;
TAnal_msk* _msk;
protected:
virtual bool changing_mask(int) { return false; }
virtual TMask* get_mask(int) { return _msk; }
virtual TRelation* get_relation() const { return _rel; }
virtual bool user_create();
virtual bool user_destroy();
protected:
virtual TAnal_msk* create_mask() const pure;
virtual TRelation* create_relation() const;
};
#endif