#ifndef __CALIB01_H #define __CALIB01_H #ifndef __AUTOMASK_H #include #endif #ifndef __RELAPP_H #include #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