InnerAIML Class Reference

AIML XML abstract class for all the InnerAIML XML Tag classes inside of the AIML XML "aiml" to inherit from. More...

#include <InnerAIML.h>

Inheritance diagram for InnerAIML:

Tag InnerTopic Topic Category InnerCategory InnerTemplate Pattern PatternSideThat Template Bot Condition Date Get Id InnerTemplateListImpl Input PlainWord Random Size Star TemplateSideThat ThatStar TopicStar Version List of all members.

Public Member Functions

 InnerAIML () throw (InternalProgrammerErrorException &)
 Default constructor to initalize the private implementation (m_pimpl) data.
virtual ~InnerAIML ()
 Default virtual destructor.

Private Attributes

shared_ptr< InnerAIMLImpl > m_pimpl
 The private implementation in which you cannot get access to.

Detailed Description

AIML XML abstract class for all the InnerAIML XML Tag classes inside of the AIML XML "aiml" to inherit from.

If you write a AIML XML tag class such as Li, Srai, LowerCase, etc... which reside inside of <aiml> you should either inherit from this class or from another class which already inherits from this class.

This is a do-nothing class. It's purpose is to "tag" other inheriting classes so that if they are indeed inside of a <aiml> tag then they will have inherited from this class and you can call instanceOf("InnerAIML") and get back a boolean true.


Constructor & Destructor Documentation

InnerAIML  )  throw (InternalProgrammerErrorException &)
 

Default constructor to initalize the private implementation (m_pimpl) data.

Exceptions:
InternalProgrammerErrorException is thrown only if the error is so grave that the entire AIML engine has to be shut down.

virtual ~InnerAIML  )  [virtual]
 

Default virtual destructor.

Destroys the private implementation (m_pimpl) data.


Member Data Documentation

shared_ptr<InnerAIMLImpl> m_pimpl [private]
 

The private implementation in which you cannot get access to.

This shared_ptr holds the private methods and private member variables of this class. This makes ABI (Application Binary Interface) more resilient to change. See the private implementation idiom on the internet for more information about this.

Reimplemented from Tag.

Reimplemented in Bot, Category, Condition, Date, Formal, Gender, Get, Gossip, Id, InnerCategory, InnerTemplate, InnerTemplateListImpl, InnerTopic, Input, Learn, Li, LowerCase, NonImplemented, Pattern, PatternSideThat, Person, Person2, PlainWord, Random, Sentence, Set, Size, Srai, Star, System, Template, TemplateSideThat, ThatStar, Think, Topic, TopicStar, UpperCase, and Version.


The documentation for this class was generated from the following file:
Generated on Thu Sep 7 22:05:53 2006 for RebeccaAIML by  doxygen 1.4.5