Person2 Class Reference

AIML class that represents the AIML XML tag "person2". More...

#include <Person2.h>

Inheritance diagram for Person2:

InnerTemplateListImpl InnerTemplate InnerCategory InnerTopic InnerAIML Tag List of all members.

Public Member Functions

virtual void addCharacters (const StringPimpl &characters) throw (InternalProgrammerErrorException &)
 Specifically overrides this to set its internal atomic boolean flag to false if this is called.
virtual StringPimpl getString () const throw (InternalProgrammerErrorException &)
 Calls InnerTemplateListImpl::getString() and returns a "Person2" transformation on the text.
 Person2 (GraphBuilderFramework &builder) throw (InternalProgrammerErrorException &)
 Initalizes the private implementation (m_pimpl) data and sets the private implementation with a reference to the GraphBuilderFramework.
virtual ~Person2 ()
 Default virtual destructor.

Private Attributes

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

Detailed Description

AIML class that represents the AIML XML tag "person2".

Every time a XML Tag of AIML is encountered, an instance of this class will be created. All text inbetween the begin and end tag, all attributes, and all inner Tags will go through methods of this class.


Constructor & Destructor Documentation

Person2 GraphBuilderFramework builder  )  throw (InternalProgrammerErrorException &)
 

Initalizes the private implementation (m_pimpl) data and sets the private implementation with a reference to the GraphBuilderFramework.

Parameters:
builder A reference to the graph builder framework that can be used to set and get information from the AIML engine.
Exceptions:
InternalProgrammerErrorException is thrown only if the error is so grave that the entire AIML engine has to be shut down.

virtual ~Person2  )  [virtual]
 

Default virtual destructor.

Destroys the private implementation (m_pimpl) data.


Member Function Documentation

virtual void addCharacters const StringPimpl characters  )  throw (InternalProgrammerErrorException &) [virtual]
 

Specifically overrides this to set its internal atomic boolean flag to false if this is called.

If any characaters inbetween the person2 tag are encountered it is not atomic and thus it sets its atomic boolean flag to false when this is called. After setting the flag it still calls InnerTemplateListImpl::addCharacters() with the characters given.

Parameters:
characters The characters inbetween the begin and end tag that are sent to InnerTemplateListImpl::addCharacters()
Exceptions:
InternalProgrammerErrorException is thrown only if the error is so grave that the entire AIML engine has to be shut down.

Reimplemented from InnerTemplateListImpl.

virtual StringPimpl getString  )  const throw (InternalProgrammerErrorException &) [virtual]
 

Calls InnerTemplateListImpl::getString() and returns a "Person2" transformation on the text.

The person2 transformation is achieved by calling GraphBuilderFramework::person2Substitute() with the text to transform.

Returns:
A "Person2" transformation on the text that comes from InnerTemplateListImpl::getString()
Exceptions:
InternalProgrammerErrorException is thrown only if the error is so grave that the entire AIML engine has to be shut down.

Reimplemented from InnerTemplateListImpl.


Member Data Documentation

shared_ptr<Person2Impl> 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 InnerTemplateListImpl.


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