VTK
vtkTextCodec.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3 Program: Visualization Toolkit
4 Module: vtkTextCodec.h
5 
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10 This software is distributed WITHOUT ANY WARRANTY; without even
11 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 /*-------------------------------------------------------------------------
16  Copyright 2008 Sandia Corporation.
17  Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
18  the U.S. Government retains certain rights in this software.
19 -------------------------------------------------------------------------*/
36 #ifndef vtkTextCodec_h
37 #define vtkTextCodec_h
38 
39 #include "vtkIOCoreModule.h" // For export macro
40 #include "vtkObject.h"
41 #include "vtkUnicodeString.h" // for the value type and for function return.
42 
44 {
45 public:
47 
49 
51  virtual const char* Name();
52  void PrintSelf(ostream& os, vtkIndent indent);
54 
55  virtual bool CanHandle(const char* NameString);
56 
59  virtual bool IsValid(istream& InputStream);
60 
62 
67  {
68  public:
69  virtual OutputIterator& operator++(int) = 0;
70  virtual OutputIterator& operator*() = 0;
73 
74  OutputIterator() {} virtual ~OutputIterator() {}
75 
76  private:
77  OutputIterator(const OutputIterator&); // Not implemented
78  const OutputIterator& operator=(const OutputIterator&); // Not Implemented
79  };
80 
82 
85  virtual void ToUnicode(istream& InputStream,
86  vtkTextCodec::OutputIterator& output) = 0;
88 
91  vtkUnicodeString ToUnicode(istream & inputStream);
92 
96  virtual vtkUnicodeString::value_type NextUnicode(istream& inputStream) = 0;
97 
98 //BTX
99 protected:
102 
103 private:
104  vtkTextCodec(const vtkTextCodec &); // Not implemented.
105  void operator=(const vtkTextCodec &); // Not implemented.
106 
107 //ETX
108 };
109 
110 #endif
vtkTextCodec::CanHandle
virtual bool CanHandle(const char *NameString)
VTKIOCORE_EXPORT
#define VTKIOCORE_EXPORT
Definition: vtkIOCoreModule.h:15
vtkTextCodec::NextUnicode
virtual vtkUnicodeString::value_type NextUnicode(istream &inputStream)=0
vtkTextCodec::OutputIterator
Definition: vtkTextCodec.h:67
vtkIOCoreModule.h
vtkUnicodeString::value_type
vtkUnicodeStringValueType value_type
Definition: vtkUnicodeString.h:74
vtkTextCodec::Name
virtual const char * Name()
vtkUnicodeString.h
vtkTextCodec
Virtual class to act as an interface for all text codecs.
Definition: vtkTextCodec.h:44
vtkTypeMacro
#define vtkTypeMacro(thisClass, superclass)
Definition: vtkSetGet.h:642
vtkObject
abstract base class for most VTK objects
Definition: vtkObject.h:62
vtkTextCodec::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent)
vtkTextCodec::OutputIterator::operator=
virtual OutputIterator & operator=(const vtkUnicodeString::value_type value)=0
vtkgl::value
GLsizei const GLfloat * value
Definition: vtkgl.h:12021
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkUnicodeString
String class that stores Unicode text.
Definition: vtkUnicodeString.h:72
vtkTextCodec::~vtkTextCodec
~vtkTextCodec()
vtkTextCodec::IsValid
virtual bool IsValid(istream &InputStream)
vtkObject.h
vtkTextCodec::OutputIterator::operator*
virtual OutputIterator & operator*()=0
vtkTextCodec::ToUnicode
virtual void ToUnicode(istream &InputStream, vtkTextCodec::OutputIterator &output)=0
vtkTextCodec::OutputIterator::operator++
virtual OutputIterator & operator++(int)=0
vtkTextCodec::ToUnicode
vtkUnicodeString ToUnicode(istream &inputStream)
vtkTextCodec::vtkTextCodec
vtkTextCodec()