OSRTFastString.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2003-2010 Objective Systems, Inc.
00003  *
00004  * This software is furnished under a license and may be used and copied
00005  * only in accordance with the terms of such license and with the
00006  * inclusion of the above copyright notice. This software or any other
00007  * copies thereof may not be provided or otherwise made available to any
00008  * other person. No title to and ownership of the software is hereby
00009  * transferred.
00010  *
00011  * The information in this software is subject to change without notice
00012  * and should not be construed as a commitment by Objective Systems, Inc.
00013  *
00014  * PROPRIETARY NOTICE
00015  *
00016  * This software is an unpublished work subject to a confidentiality agreement
00017  * and is protected by copyright and trade secret law.  Unauthorized copying,
00018  * redistribution or other use of this work is prohibited.
00019  *
00020  * The above notice of copyright on this source code product does not indicate
00021  * any actual or intended publication of such source code.
00022  *
00023  *****************************************************************************/
00031 #ifndef _OSRTFASTSTRING_H_
00032 #define _OSRTFASTSTRING_H_
00033 
00034 #include "rtxsrc/rtxCommon.h"
00035 #include "rtxsrc/rtxPrint.h"
00036 
00043 class EXTERNRT OSRTFastString : public OSRTStringIF {
00044  protected:
00045    const OSUTF8CHAR* mValue;
00046 
00047  public:
00052    OSRTFastString();
00053 
00060    OSRTFastString (const char* strval);
00061 
00068    OSRTFastString (const OSUTF8CHAR* strval);
00069 
00076    OSRTFastString (const OSRTFastString& str);
00077 
00081    virtual ~OSRTFastString();
00082 
00086    virtual OSRTStringIF* clone () { return new OSRTFastString (*this); }
00087 
00092    virtual const char* getValue () const {
00093       return (const char*) mValue;
00094    }
00095 
00100    virtual const OSUTF8CHAR* getUTF8Value () const {
00101       return mValue;
00102    }
00103 
00109    virtual void print (const char* name) { rtxPrintCharStr (name, mValue); }
00110 
00116    virtual void setValue (const char* str);
00117 
00123    virtual void setValue (const OSUTF8CHAR* str);
00124 
00128    OSRTFastString& operator= (const OSRTFastString& original);
00129 } ;
00130 
00131 #endif