openvrml::font_style_node Class Reference

Abstract base class for font style nodes. More...

#include <openvrml/node.h>

Inheritance diagram for openvrml::font_style_node:

Public Member Functions

virtual ~font_style_node ()=0 throw ()
 Destroy.
const std::vector< std::string > & family () const throw ()
 Get the list of font families.
bool horizontal () const throw ()
 Get the flag indicating whether the text should be horizontal or vertical.
const std::vector< std::string > & justify () const throw ()
 Get the descriptor for the text justification.
const std::string & language () const throw ()
 Get the language code.
bool left_to_right () const throw ()
 Get the flag indicating whether the text should be rendered left-to-right.
float size () const throw ()
 Get the size of the text.
float spacing () const throw ()
 Get the spacing for the text.
const std::string & style () const throw ()
 Get the style for the text.
bool top_to_bottom () const throw ()
 Get the flag indicating whether the text should be rendered top-to-bottom.
- Public Member Functions inherited from openvrml::node
virtual ~node ()=0 throw ()
 Destructor.
void add_ref () const throw ()
 Increment the reference count.
void remove_ref () const throw ()
 Decrement the reference count.
void release () const throw ()
 Decrement the reference count; destroy the instance if the count drops to zero.
size_t use_count () const throw ()
 The number of owning references to the instance.
const node_typetype () const throw ()
 The type information object for the node.
const std::string & id () const throw ()
 Retrieve the name of this node.
void id (const std::string &node_id) throw ( std::bad_alloc )
 Set the name of the node.
const openvrml::scopescope () const throw ()
 Get the scope to which the node belongs.
openvrml::scenescene () const throw ()
 Get the scene with which the node is associated.
const std::vector
< boost::intrusive_ptr< node > > & 
impl_nodes () const throw ()
 Get the implementation nodes of a PROTO instance.
std::ostream & print (std::ostream &out, size_t indent) const
 Pretty print.
void initialize (openvrml::scene &scene, double timestamp) throw ( std::bad_alloc )
 Initialize the node.
std::auto_ptr< field_valuefield (const std::string &id) const throw ( unsupported_interface , std::bad_alloc )
 Generalized field accessor.
openvrml::event_listenerevent_listener (const std::string &id) throw ( unsupported_interface )
 Get an event listener.
openvrml::event_emitterevent_emitter (const std::string &id) throw ( unsupported_interface )
 Get an event emitter.
void shutdown (double timestamp) throw ()
 Shut down the node.
bool modified () const throw ( boost::thread_resource_error )
 Determine whether the node has been modified.
void modified (bool value) throw ( boost::thread_resource_error )
 Set the modified flag.

Protected Member Functions

 font_style_node (const node_type &type, const boost::shared_ptr< openvrml::scope > &scope) throw ()
 Construct.
- Protected Member Functions inherited from openvrml::node
 node (const node_type &type, const boost::shared_ptr< openvrml::scope > &scope) throw ()
 Construct.
boost::shared_mutex & scene_mutex ()
 The scene mutex.

Private Member Functions

virtual font_style_nodeto_font_style () throw ()
 Cast to a font_style_node.
virtual const std::vector
< std::string > & 
do_family () const =0 throw ()
 Get the list of font families.
virtual bool do_horizontal () const =0 throw ()
 Get the flag indicating whether the text should be horizontal or vertical.
virtual const std::vector
< std::string > & 
do_justify () const =0 throw ()
 Get the descriptor for the text justification.
virtual const std::string & do_language () const =0 throw ()
 Get the language code.
virtual bool do_left_to_right () const =0 throw ()
 Get the flag indicating whether the text should be rendered left-to-right.
virtual float do_size () const =0 throw ()
 Get the size of the text.
virtual float do_spacing () const =0 throw ()
 Get the spacing for the text.
virtual const std::string & do_style () const =0 throw ()
 Get the style for the text.
virtual bool do_top_to_bottom () const =0 throw ()
 Get the flag indicating whether the text should be rendered top-to-bottom.

Additional Inherited Members

- Static Public Attributes inherited from openvrml::node
static const
boost::intrusive_ptr< node
self_tag
 Special value used when initializing a script_node.
- Static Protected Member Functions inherited from openvrml::node
static void emit_event (openvrml::event_emitter &emitter, double timestamp) throw ( std::bad_alloc )
 Emit an event.

Detailed Description

Abstract base class for font style nodes.

Constructor & Destructor Documentation

openvrml::font_style_node::~font_style_node ( ) throw ()
pure virtual

Destroy.

openvrml::font_style_node::font_style_node ( const node_type type,
const boost::shared_ptr< openvrml::scope > &  scope 
) throw ()
protected

Construct.

Parameters
[in]typethe node_type associated with the node.
[in]scopethe scope the node belongs to.

Member Function Documentation

const std::vector< std::string > & openvrml::font_style_node::family ( ) const throw ()

Get the list of font families.

This function delegates to do_family.

Returns
the font families that may be used for this FontStyle.
bool openvrml::font_style_node::horizontal ( ) const throw ()

Get the flag indicating whether the text should be horizontal or vertical.

This function delegates to do_horizontal.

Returns
true if the text should be horizontal, or false if the text should be vertical.
const std::vector< std::string > & openvrml::font_style_node::justify ( ) const throw ()

Get the descriptor for the text justification.

This function delegates to do_justify.

Returns
the characteristics of the text justification.
const std::string & openvrml::font_style_node::language ( ) const throw ()

Get the language code.

This function delegates to do_language.

Returns
the language code.
bool openvrml::font_style_node::left_to_right ( ) const throw ()

Get the flag indicating whether the text should be rendered left-to-right.

This function delegates to do_left_to_right.

Returns
true if the text should be rendered left-to-right, or false if the text should be rendered right-to-left.
float openvrml::font_style_node::size ( ) const throw ()

Get the size of the text.

This function delegates to do_size.

Returns
the size of the text.
float openvrml::font_style_node::spacing ( ) const throw ()

Get the spacing for the text.

This function delegates to do_spacing.

Returns
the spacing for the text.
const std::string & openvrml::font_style_node::style ( ) const throw ()

Get the style for the text.

This function delegates to do_style.

Returns
the text style.
bool openvrml::font_style_node::top_to_bottom ( ) const throw ()

Get the flag indicating whether the text should be rendered top-to-bottom.

This function delegates to do_top_to_bottom.

Returns
true if the text should be rendered top-to-bottom, or false if the text should be rendered bottom-to-top.
openvrml::font_style_node * openvrml::font_style_node::to_font_style ( ) throw ()
privatevirtual

Cast to a font_style_node.

Returns
a pointer to this font_style_node.
const std::vector< std::string > & openvrml::font_style_node::do_family ( ) const throw ()
privatepure virtual

Get the list of font families.

Returns
the font families that may be used for this FontStyle.
bool openvrml::font_style_node::do_horizontal ( ) const throw ()
privatepure virtual

Get the flag indicating whether the text should be horizontal or vertical.

Returns
true if the text should be horizontal, or false if the text should be vertical.
const std::vector< std::string > & openvrml::font_style_node::do_justify ( ) const throw ()
privatepure virtual

Get the descriptor for the text justification.

Returns
the characteristics of the text justification.
const std::string & openvrml::font_style_node::do_language ( ) const throw ()
privatepure virtual

Get the language code.

Returns
the language code.
bool openvrml::font_style_node::do_left_to_right ( ) const throw ()
privatepure virtual

Get the flag indicating whether the text should be rendered left-to-right.

Returns
true if the text should be rendered left-to-right, or false if the text should be rendered right-to-left.
float openvrml::font_style_node::do_size ( ) const throw ()
privatepure virtual

Get the size of the text.

Returns
the size of the text.
float openvrml::font_style_node::do_spacing ( ) const throw ()
privatepure virtual

Get the spacing for the text.

Returns
the spacing for the text.
const std::string & openvrml::font_style_node::do_style ( ) const throw ()
privatepure virtual

Get the style for the text.

Returns
the text style.
bool openvrml::font_style_node::do_top_to_bottom ( ) const throw ()
privatepure virtual

Get the flag indicating whether the text should be rendered top-to-bottom.

Returns
true if the text should be rendered top-to-bottom, or false if the text should be rendered bottom-to-top.