VTK
/Users/kitware/Dashboards/MyTests/VTK_BLD_Release_docs/Utilities/Doxygen/dox/IO/Core/vtkUTF16TextCodec.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003 Program:   Visualization Toolkit
00004 Module:    vtkUTF16TextCodec.h
00005 
00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007 All rights reserved.
00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00009 
00010 This software is distributed WITHOUT ANY WARRANTY; without even
00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012 PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00015 /*-------------------------------------------------------------------------
00016   Copyright 2008 Sandia Corporation.
00017   Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
00018   the U.S. Government retains certain rights in this software.
00019 -------------------------------------------------------------------------*/
00036 #ifndef vtkUTF16TextCodec_h
00037 #define vtkUTF16TextCodec_h
00038 
00039 #include "vtkIOCoreModule.h" // For export macro
00040 #include "vtkTextCodec.h"
00041 
00042 
00043 class VTKIOCORE_EXPORT vtkUTF16TextCodec : public vtkTextCodec
00044 {
00045 public:
00046   vtkTypeMacro(vtkUTF16TextCodec, vtkTextCodec);
00047   static vtkUTF16TextCodec* New() ;
00048   void PrintSelf(ostream& os, vtkIndent indent);
00049 
00051 
00053   virtual const char* Name() ;
00054   virtual bool CanHandle(const char* NameString) ;
00056 
00058   void SetBigEndian(bool) ;
00059 
00061   void FindEndianness(istream& InputStream) ;
00062 
00065   virtual bool IsValid(istream& InputStream) ;
00066 
00068 
00071   virtual void ToUnicode(istream& InputStream,
00072                          vtkTextCodec::OutputIterator& output) ;
00074 
00078   virtual vtkUnicodeString::value_type  NextUnicode(istream& inputStream) ;
00079 
00080 //BTX
00081 protected:
00082   vtkUTF16TextCodec() ;
00083   ~vtkUTF16TextCodec() ;
00084 
00085   bool _endianExplicitlySet ;
00086   bool _bigEndian ;
00087 
00088 private:
00089   vtkUTF16TextCodec(const vtkUTF16TextCodec &) ; // Not implemented.
00090   void operator=(const vtkUTF16TextCodec &) ; // Not implemented.
00091 
00092 //ETX
00093 };
00094 
00095 
00096 #endif