00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
#ifndef VTK_PALETTE_MAP_H_
00017 
#  define VTK_PALETTE_MAP_H_
00018 
#  include "vtkPaletteElementMap.h"
00019 
#  include "vtkPaletteMapIterator.h"
00020 
00021 
VTK_EXTENSIONS_PALETTE_NAMESPACE_BEGIN
00022 
00036 class VTK_EXTENSIONS_PALETTE_EXPORT vtkPaletteMap
00037   : 
public vtkPaletteElementMap
00038 {
00039 
public:
00040   
static vtkPaletteMap* 
New (
void);
00041   vtkTypeRevisionMacro (vtkPaletteMap, 
vtkPaletteElementMap);
00042 
00047   virtual int           Swap (vtkPaletteMap* container)
00048     { 
return this->
Superclass::Swap(container); }
00049 
00059   vtkPalette*           Find (
const char* key)
 const
00060 
    { 
return static_cast<vtkPalette*>(this->Superclass::Find(key)); }
00061 
00074   virtual int           Insert (
const char*             key,
00075                                 
vtkPalette*             palette)
00076     { 
return this->Superclass::Insert(key, palette); }
00077 
00082   virtual const char*   FindKey (
const vtkPalette*      palette)
00083     { 
return this->Superclass::FindKey(palette); }
00084 
00092   vtkPalette*           
Front (
void)
 const
00093 
    { 
return static_cast<vtkPalette*>(this->Superclass::Front()); }
00094 
00100   
virtual int           Front (
const char* &            key,
00101                                
vtkPalette* &            palette) 
const;
00102 
00108   vtkPalette*           
Back (
void)
 const
00109 
    { 
return static_cast<vtkPalette*>(this->Superclass::Back()); }
00110 
00116   
virtual int           Back (
const char* &             key,
00117                               
vtkPalette* &             palette) 
const;
00121   
vtkPaletteMapIterator* 
CreateIterator (
void);
00122 
00123 
protected:
00124   vtkPaletteMap (
void) {}
00125   ~vtkPaletteMap() {}
00126 
00127 
private:
00128   
00131   
int Swap (
vtkPaletteElementMap* map)
00132     { 
return this->
Superclass::Swap(map); }
00133   
int Insert (
const char* key, 
vtkPaletteElement* element)
00134     { 
return this->Superclass::Insert(key, element); }
00135   
const char* FindKey (
const vtkPaletteElement* element)
00136     { 
return this->Superclass::FindKey(element); }
00137   
int Front (
const char* & key, 
vtkPaletteElement* & element)
 const
00138 
    { 
return this->Superclass::Front(key, element); }
00139   
int Back (
const char* & key, 
vtkPaletteElement* & element)
 const
00140 
    { 
return this->Superclass::Back(key, element); }
00142   
00143 
00144 
private:
00150   vtkPaletteMap (
const vtkPaletteMap&);
00151   
void operator= (
const vtkPaletteMap&);
00153 };
00154 
00155 
00156 
inline int
00157 vtkPaletteMap::Front (
const char* &     aKey,
00158                       
vtkPalette* &     aPalette)
 const
00159 
{
00160   
vtkPaletteElement*    element = (
vtkPaletteElement *) 0;
00161   
int                   result  = this->Superclass::Front(aKey, element);
00162   aPalette = static_cast<vtkPalette*>(element);
00163   
return result;
00164 }
00165 
00166 
inline int
00167 vtkPaletteMap::Back (
const char* &      aKey,
00168                      
vtkPalette* &      aPalette)
 const
00169 
{
00170   
vtkPaletteElement*    element = (
vtkPaletteElement *) 0;
00171   
int                   result  = this->Superclass::Back(aKey, element);
00172   aPalette = static_cast<vtkPalette*>(element);
00173   
return result;
00174 }
00175 
00176 
VTK_EXTENSIONS_PALETTE_NAMESPACE_END
00177 
00178 
#endif 
00179 
00180 
00181 
00182