14 #ifndef XSENS_NO_WCHAR 16 #if !defined(XSENS_NO_STL) && defined(__cplusplus) && defined(WIN32) 19 #endif // XSENS_NO_WCHAR 32 #define XsString_INITIALIZER XSARRAY_INITIALIZER(&g_xsStringDescriptor) 36 #define XSSTRING_INITIALIZER XsString_INITIALIZER 45 #ifndef XSENS_NO_WCHAR 47 #endif // XSENS_NO_WCHAR 56 #define XsString_copy(thisPtr, copy) XsArray_copy(copy, thisPtr) 57 #define XsString_swap(a, b) XsArray_swap(a, b) 68 struct XsStringType :
public XsArrayImpl<char, g_xsStringDescriptor, XsString>
70 inline XsStringType() : XsArrayImpl()
75 XsArrayImpl(
ref,sz,flags)
97 return m_reserved?m_reserved-1:0;
104 return *ptrAt(m_data,
index);
165 inline void append(
const XsStringType& other)
173 struct XsString :
public XsStringType {
183 inline XsString(
const XsStringType& other)
184 : XsStringType(other)
190 : XsStringType(
ref, sz+1, flags)
193 #ifndef XSENS_NOITERATOR 195 template <
typename Iterator>
196 inline XsString(Iterator
const& beginIt, Iterator
const& endIt)
197 : XsStringType(beginIt, endIt)
210 #ifndef XSENS_NO_WCHAR 236 #endif // XSENS_NO_STL 241 static const char nullChar = 0;
243 return (
char*) &nullChar;
244 return begin().operator ->();
248 inline char const* c_str()
const 250 static const char nullChar = 0;
253 return begin().operator ->();
264 #endif // XSENS_NO_STL 270 tmp.reserve(
size()+other.size());
278 std::wstring toStdWString()
const 281 return std::wstring();
288 #endif // XSENS_NO_STL 291 using XsStringType::operator ==;
292 using XsStringType::operator !=;
293 #ifndef XSENS_NOITERATOR 294 using XsStringType::operator <<;
301 if (!str)
return empty();
302 return !strcmp(c_str(), str);
308 return !(*
this == str);
340 template<
typename _CharT,
typename _Traits>
341 basic_ostream<_CharT, _Traits>& operator<<(basic_ostream<_CharT, _Traits>& o,
XsString const& xs)
343 return (o << xs.toStdString());
XSTYPES_DLL_API void XsArray_insert(void *thisPtr, XsSize index, XsSize count, void const *src)
bool operator==(const TPoint2D &p1, const TPoint2D &p2)
Exact comparison between 2D points.
GLuint GLuint GLsizei count
This object describes how to treat the data in an array.
EIGEN_STRONG_INLINE bool empty() const
XSARRAY_STRUCT(XsString, char)
XSTYPES_DLL_API void XsString_assignWCharArray(XsString *thisPtr, const wchar_t *src)
XSTYPES_DLL_API void XsString_resize(XsString *thisPtr, XsSize count)
bool operator!=(const TPoint2D &p1, const TPoint2D &p2)
Exact comparison between 2D points.
XSTYPES_DLL_API void XsString_assign(XsString *thisPtr, XsSize count, const char *src)
EIGEN_STRONG_INLINE iterator begin()
size_t XsSize
XsSize must be unsigned number!
XSTYPES_DLL_API void XsString_append(XsString *thisPtr, XsString const *other)
GLubyte GLubyte GLubyte GLubyte w
XSTYPES_DLL_API XsSize XsString_copyToWCharArray(const XsString *thisPtr, wchar_t *dest, XsSize size)
std::vector< T1 > operator+(const std::vector< T1 > &a, const std::vector< T2 > &b)
a+b (element-wise sum)
VALUE & operator[](const KEY &key)
Write/read via [i] operator, that creates an element if it didn't exist already.
EIGEN_STRONG_INLINE void setSize(size_t row, size_t col)
Changes the size of matrix, maintaining its previous content as possible and padding with zeros where...
EIGEN_STRONG_INLINE void assign(const Scalar v)
GLsizei const GLchar ** string
size_t m_size
Number of elements accessed with write access so far.
XSTYPES_DLL_API void XsString_erase(XsString *thisPtr, XsSize index, XsSize count)
XSTYPES_DLL_API void XsString_destruct(XsString *thisPtr)
std::ostream & operator<<(std::ostream &out, MD5 md5)
XSTYPES_DLL_API void XsString_construct(XsString *thisPtr)
int BASE_IMPEXP sprintf(char *buf, size_t bufSize, const char *format,...) MRPT_NO_THROWS MRPT_printf_format_check(3
An OS-independent version of sprintf (Notice the bufSize param, which may be ignored in some compiler...
XSTYPES_DLL_API void XsArray_reserve(void *thisPtr, XsSize count)
XSTYPES_DLL_API void XsString_assignCharArray(XsString *thisPtr, const char *src)
XsArrayDescriptor const XSTYPES_DLL_API g_xsStringDescriptor
XsDataFlags
These flags define the behaviour of data contained by Xsens data structures.