// file: $isip/class/pr/LanguageModel/LanguageModelUndefined.h // // make sure definitions are only made once // #ifndef ISIP_LANGUAGE_MODEL_UNDEFINED #define ISIP_LANGUAGE_MODEL_UNDEFINED #ifndef ISIP_LANGUAGE_MODEL_BASE #include #endif // forward class definitions // // LanguageModelUndefined: default model type that ensures the user sets // the format in LanguageModel to a valid type before computing. all // methods error // class LanguageModelUndefined : public LanguageModelBase { //--------------------------------------------------------------------------- // // public constants // //--------------------------------------------------------------------------- public: // define the class name // static const String CLASS_NAME; //-------------------------------------------------------------- // // other important constants // //-------------------------------------------------------------- //---------------------------------------- // // error codes // //---------------------------------------- static const int32 ERR = 100100; //--------------------------------------------------------------------------- // // protected data // //--------------------------------------------------------------------------- protected: // debug level // // inherited from LanguageModelBase // empty RuleModel // RuleModel rm_d; //--------------------------------------------------------------------------- // // required public methods // //--------------------------------------------------------------------------- public: // method: name // static const String& name() { return CLASS_NAME; } // method: diagnose // static bool8 diagnose(const unichar* msg) { return Error::handle(name(), L"diagnose", Error::VIRTUAL_PTR, __FILE__, __LINE__); } // debug methods // bool8 debug(const unichar* msg_a) const { return Error::handle(name(), L"debug", Error::VIRTUAL_PTR, __FILE__, __LINE__); } // method: setDebug // // inherited from LanguageModelBase // destructor/constructor(s) // ~LanguageModelUndefined() { } // method: default constructor // LanguageModelUndefined() { } // assign methods // bool8 assign(const LanguageModelUndefined& arg) { return Error::handle(name(), L"assign", Error::VIRTUAL_PTR, __FILE__, __LINE__); } // equality methods // // method: eq // bool8 eq(const LanguageModelUndefined& arg) const { return Error::handle(name(), L"assign", Error::VIRTUAL_PTR, __FILE__, __LINE__); } // i/o methods // // method: sofSize int32 sofSize() const { return Error::handle(name(), L"sofSize", Error::VIRTUAL_PTR, __FILE__, __LINE__); } // method: read // bool8 read(Sof& sof, int32 tag, const String& cname = CLASS_NAME) { return Error::handle(name(), L"read", Error::VIRTUAL_PTR, __FILE__, __LINE__); } // method: write // bool8 write(Sof& sof_a, int32 tag_a, const String& cname = CLASS_NAME) const { return Error::handle(name(), L"write", Error::VIRTUAL_PTR, __FILE__, __LINE__); } bool8 readData(Sof& sof, const String& pname, int32 size, bool8 param, bool8 nested) { return Error::handle(name(), L"readData", Error::VIRTUAL_PTR, __FILE__, __LINE__); } bool8 writeData(Sof& sof, const String& pname) const { return Error::handle(name(), L"writeData", Error::VIRTUAL_PTR, __FILE__, __LINE__); } // other memory managements methods // bool8 clear(Integral::CMODE cmode = Integral::DEF_CMODE) { return true; } //--------------------------------------------------------------------------- // // class-specific public methods: these methods define the // interface contract. // //--------------------------------------------------------------------------- // LanguageModelBase required methods // bool8 eq(const LanguageModelBase& arg) const { return Error::handle(name(), L"eq", Error::VIRTUAL_PTR, __FILE__, __LINE__); } bool8 assign(const LanguageModelBase& arg) { return Error::handle(name(), L"assign", Error::VIRTUAL_PTR, __FILE__, __LINE__); } // method: getRuleModel // RuleModel getRuleModel() { Error::handle(name(), L"getRuleModel", Error::VIRTUAL_PTR, __FILE__, __LINE__); return rm_d; } // method: setRuleModel // bool8 setRuleModel(const RuleModel& rm) { return Error::handle(name(), L"setRuleModel", Error::VIRTUAL_PTR, __FILE__, __LINE__); } // method: className // const String& className() const { return CLASS_NAME; } //--------------------------------------------------------------------------- // // private methods // //--------------------------------------------------------------------------- private: }; // end of include file // #endif