00001 /* 00002 * Copyright (c) 2007 SCHUNK GmbH & Co. KG 00003 * Copyright (c) 2017 Fraunhofer Institute for Manufacturing Engineering and Automation (IPA) 00004 * 00005 * Licensed under the Apache License, Version 2.0 (the "License"); 00006 * you may not use this file except in compliance with the License. 00007 * You may obtain a copy of the License at 00008 * 00009 * http://www.apache.org/licenses/LICENSE-2.0 00010 00011 * Unless required by applicable law or agreed to in writing, software 00012 * distributed under the License is distributed on an "AS IS" BASIS, 00013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00014 * See the License for the specific language governing permissions and 00015 * limitations under the License. 00016 */ 00017 00018 //====================================================================== 00045 //====================================================================== 00046 00047 #ifndef SIMPLESTRINGLIST_H_ 00048 #define SIMPLESTRINGLIST_H_ 00049 00050 //---------------------------------------------------------------------- 00051 // System Includes - include with <> 00052 //---------------------------------------------------------------------- 00053 00054 #include <iosfwd> 00055 00056 //---------------------------------------------------------------------- 00057 // Project Includes - include with "" 00058 //---------------------------------------------------------------------- 00059 00060 #include "dbg.h" 00061 #include "sdhlibrary_settings.h" 00062 00063 //---------------------------------------------------------------------- 00064 // Defines, enums, unions, structs, 00065 //---------------------------------------------------------------------- 00066 00067 NAMESPACE_SDH_START 00068 00069 00070 //---------------------------------------------------------------------- 00071 // Global variables 00072 //---------------------------------------------------------------------- 00073 00074 00075 //---------------------------------------------------------------------- 00076 // Function declarations 00077 //---------------------------------------------------------------------- 00078 00079 00080 //---------------------------------------------------------------------- 00081 // Class declarations 00082 //---------------------------------------------------------------------- 00083 00084 00085 00087 class VCC_EXPORT cSimpleStringList 00088 { 00089 public: 00090 00092 int current_line; 00093 00094 00096 enum 00097 { 00098 eMAX_LINES = 256, 00099 eMAX_CHARS = 256, 00100 }; 00101 00103 cSimpleStringList(); 00104 00105 00107 char* CurrentLine(); 00108 00109 00111 char* NextLine(); 00112 00113 00115 int Length() const; 00116 00117 00119 00123 char* operator[](int index); 00124 00126 00130 char const* operator[](int index) const; 00131 00132 00134 void Reset(); 00135 00136 protected: 00138 char line[ eMAX_LINES ][ eMAX_CHARS ]; 00139 00140 }; // cSimpleStringList 00141 //----------------------------------------------------------------- 00142 00143 00145 VCC_EXPORT std::ostream& operator<<(std::ostream& stream, cSimpleStringList const& ssl); 00146 00147 00148 //----------------------------------------------------------------- 00149 00150 NAMESPACE_SDH_END 00151 00152 #endif 00153 00154 00155 //====================================================================== 00156 /* 00157 Here are some settings for the emacs/xemacs editor (and can be safely ignored): 00158 (e.g. to explicitely set C++ mode for *.h header files) 00159 00160 Local Variables: 00161 mode:C++ 00162 mode:ELSE 00163 End: 00164 */ 00165 //====================================================================== 00166