mi::shader_v3::Map_base Class Reference

Map_base class. More...

#include <shader_map.h>

List of all members.

Public Member Functions

virtual miUint size () const =0
 returns the number of elements in the map.
virtual bool is_empty () const =0
 returns true if the map is empty.
virtual bool has_declaration () const =0
 returns true if the map has a declaration.
virtual Map_status get (const miUint index, Map_element &map_element) const =0
 gets the copy of an element.
virtual Map_status set (const miUint index, const Map_element &map_element)=0
 sets the desired element in the map.
virtual Map_status append (const Map_element &map_element)=0
 appends the desired element at the end.
virtual Map_status read (const char *file_name)=0
 reads a map from a file.
virtual Map_status append_to (const char *file_name) const =0
 appends the map to the existing file.
virtual Map_status append_from (const char *file_name)=0
 appends the contents of the file to the map.
virtual Map_status write (const char *file_name) const =0
 writes the map to file.


Detailed Description

Map_base class.

The Map_base class is an interface class which provides access to a map, to its elements through the use of get/set methods and to its declaration, and it also provides ways to read/write maps from/to files. There are two wrapper classes which provide a convenient way to manage this class: the Access_map class (read-only access to a map) and the Edit_map class (read-write access to a map). For example, a shader might access and use a map in the following way:

    Access_map map (tag);
    
    if (!map->is_empty()) { ... }


Member Function Documentation

virtual Map_status mi::shader_v3::Map_base::append (  const Map_element &  map_element  )  [pure virtual]
 

appends the desired element at the end.

Parameters:
map_element is the map element to append
Returns:
a status code

virtual Map_status mi::shader_v3::Map_base::append_from (  const char *  file_name  )  [pure virtual]
 

appends the contents of the file to the map.

Parameters:
file_name is the name of the file to read
Returns:
a status code

virtual Map_status mi::shader_v3::Map_base::append_to (  const char *  file_name  )  const [pure virtual]
 

appends the map to the existing file.

Parameters:
file_name is the name of the file to append to
Returns:
a status code

virtual Map_status mi::shader_v3::Map_base::get (  const miUint  index,
Map_element &  map_element
)  const [pure virtual]
 

gets the copy of an element.

Parameters:
index is the desired element index
map_element is the map element which will hold the copy
Returns:
a status code

virtual bool mi::shader_v3::Map_base::has_declaration (   )  const [pure virtual]
 

returns true if the map has a declaration.

Returns:
true if the map has a declaration, false otherwise

virtual bool mi::shader_v3::Map_base::is_empty (   )  const [pure virtual]
 

returns true if the map is empty.

Returns:
true if the map is empty, false otherwise

virtual Map_status mi::shader_v3::Map_base::read (  const char *  file_name  )  [pure virtual]
 

reads a map from a file.

Parameters:
file_name is the name of the file to read
Returns:
a status code

virtual Map_status mi::shader_v3::Map_base::set (  const miUint  index,
const Map_element &  map_element
)  [pure virtual]
 

sets the desired element in the map.

Parameters:
index is the index of the element to set
map_element is the map element
Returns:
a status code

virtual miUint mi::shader_v3::Map_base::size (   )  const [pure virtual]
 

returns the number of elements in the map.

Returns:
the number of elements in the map

virtual Map_status mi::shader_v3::Map_base::write (  const char *  file_name  )  const [pure virtual]
 

writes the map to file.

Parameters:
file_name is the name of the file to write
Returns:
a status code

Copyright © 1986-2009 by mental images GmbH