regina::NText Class Reference
[Basic Packet Types]

A packet representing a text string. More...

#include <ntext.h>

Inheritance diagram for regina::NText:
regina::NPacket regina::ShareableObject regina::boost::noncopyable

List of all members.

Public Member Functions

 NText ()
 Initialises the packet to the empty string.
 NText (const std::string &newText)
 Initialises the packet to the given string.
 NText (const char *newText)
 Initialises the packet to the given string.
const std::string & getText () const
 Returns the string stored in the packet.
void setText (const std::string &newText)
 Sets the packet data to the given string.
void setText (const char *newText)
 Sets the packet data to the given string.
virtual int getPacketType () const
 Returns the integer ID representing this type of packet.
virtual std::string getPacketTypeName () const
 Returns an English name for this type of packet.
virtual void writeTextShort (std::ostream &out) const
 Writes this object in short text format to the given output stream.
virtual void writeTextLong (std::ostream &out) const
 Writes this object in long text format to the given output stream.
virtual void writePacket (NFile &out) const
 Writes the packet details to the given old-style binary file.
virtual bool dependsOnParent () const
 Determines if this packet depends upon its parent.

Static Public Member Functions

static NXMLPacketReadergetXMLReader (NPacket *parent)
static NTextreadPacket (NFile &in, NPacket *parent)

Static Public Attributes

static const int packetType
 Contains the integer ID for this packet.

Protected Member Functions

virtual NPacketinternalClonePacket (NPacket *parent) const
virtual void writeXMLPacketData (std::ostream &out) const
 Writes a chunk of XML containing the data for this packet only.

Detailed Description

A packet representing a text string.


Constructor & Destructor Documentation

regina::NText::NText (  )  [inline]

Initialises the packet to the empty string.

regina::NText::NText ( const std::string &  newText  )  [inline]

Initialises the packet to the given string.

Parameters:
newText the new value for the packet.
regina::NText::NText ( const char *  newText  )  [inline]

Initialises the packet to the given string.

Parameters:
newText the new value for the packet.

Member Function Documentation

bool regina::NText::dependsOnParent (  )  const [inline, virtual]

Determines if this packet depends upon its parent.

This is true if the parent cannot be altered without invalidating or otherwise upsetting this packet.

Returns:
true if and only if this packet depends on its parent.

Implements regina::NPacket.

virtual int regina::NText::getPacketType (  )  const [virtual]

Returns the integer ID representing this type of packet.

This is the same for all packets of this class.

Returns:
the packet type ID.

Implements regina::NPacket.

virtual std::string regina::NText::getPacketTypeName (  )  const [virtual]

Returns an English name for this type of packet.

An example is NTriangulation. This is the same for all packets of this class.

Returns:
the packet type name.

Implements regina::NPacket.

const std::string & regina::NText::getText (  )  const [inline]

Returns the string stored in the packet.

Returns:
the stored string.
void regina::NText::setText ( const char *  newText  )  [inline]

Sets the packet data to the given string.

Parameters:
newText the new value for the packet.
void regina::NText::setText ( const std::string &  newText  )  [inline]

Sets the packet data to the given string.

Parameters:
newText the new value for the packet.
virtual void regina::NText::writePacket ( NFile out  )  const [virtual]

Writes the packet details to the given old-style binary file.

You may assume that the packet type and label have already been written. Only the actual data stored in the packet need be written.

The default implementation for this routine does nothing; new packet types should not implement this routine since this file format is now obsolete, and older calculation engines will simply skip unknown packet types when reading from binary files.

Deprecated:
For the preferred way to write packets to file, see writeXMLFile() and writeXMLPacketData() instead.
Precondition:
The given file is open for writing and satisfies the assumptions listed above.
Python:
Not present.
Parameters:
out the file to be written to.

Reimplemented from regina::NPacket.

void regina::NText::writeTextLong ( std::ostream &  out  )  const [inline, virtual]

Writes this object in long text format to the given output stream.

The output should provided the user with all the information they could want. The output should end with a newline.

The default implementation of this routine merely calls writeTextShort() and adds a newline.

Python:
The parameter out does not exist; standard output will be used.
Parameters:
out the output stream to which to write.

Reimplemented from regina::ShareableObject.

void regina::NText::writeTextShort ( std::ostream &  out  )  const [inline, virtual]

Writes this object in short text format to the given output stream.

The output should fit on a single line and no newline should be written.

Python:
The parameter out does not exist; standard output will be used.
Parameters:
out the output stream to which to write.

Implements regina::ShareableObject.

virtual void regina::NText::writeXMLPacketData ( std::ostream &  out  )  const [protected, virtual]

Writes a chunk of XML containing the data for this packet only.

You may assume that the packet opening tag (including the packet type and label) has already been written, and that all child packets followed by the corresponding packet closing tag will be written immediately after this routine is called. This routine need only write the internal data stored in this specific packet.

Parameters:
out the output stream to which the XML should be written.

Implements regina::NPacket.


Member Data Documentation

const int regina::NText::packetType [static]

Contains the integer ID for this packet.

Each distinct packet type must have a unique ID, and this should be a positive integer. See packetregistry.h for further requirements regarding ID selection.

This member is not actually provided for NPacket itself, but must be declared for every packet subclass that will be instantiated. A value need not be assigned; packetregistry.h will take care of this task when you register the packet.

Reimplemented from regina::NPacket.


The documentation for this class was generated from the following file:

Copyright © 1999-2009, Ben Burton
This software is released under the GNU General Public License.
For further information, or to submit a bug or other problem, please contact Ben Burton (bab@debian.org).