/* Copyright (C) 2009 Markus Friedrich
 *
 * This library is free software; you can redistribute it and/or 
 * modify it under the terms of the GNU Lesser General Public 
 * License as published by the Free Software Foundation; either 
 * version 2.1 of the License, or (at your option) any later version. 
 *  
 * This library is distributed in the hope that it will be useful, 
 * but WITHOUT ANY WARRANTY; without even the implied warranty of 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
 * Lesser General Public License for more details. 
 *  
 * You should have received a copy of the GNU Lesser General Public 
 * License along with this library; if not, write to the Free Software 
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA
 *
 * Contact:
 *   friedrich.at.gc@googlemail.com
 *
 */

// This is a C-preprocessor X-Macro
// # define FOREACHKNOWNTYPE(CTYPE, H5TYPE)
FOREACHKNOWNTYPE(char, H5T_NATIVE_CHAR)
FOREACHKNOWNTYPE(signed char, H5T_NATIVE_SCHAR)
FOREACHKNOWNTYPE(unsigned char, H5T_NATIVE_UCHAR)
FOREACHKNOWNTYPE(short, H5T_NATIVE_SHORT)
FOREACHKNOWNTYPE(unsigned short, H5T_NATIVE_USHORT)
FOREACHKNOWNTYPE(int, H5T_NATIVE_INT)
FOREACHKNOWNTYPE(unsigned int, H5T_NATIVE_UINT)
FOREACHKNOWNTYPE(long, H5T_NATIVE_LONG)
FOREACHKNOWNTYPE(unsigned long, H5T_NATIVE_ULONG)
FOREACHKNOWNTYPE(float, H5T_NATIVE_FLOAT)
FOREACHKNOWNTYPE(double, H5T_NATIVE_DOUBLE)
FOREACHKNOWNTYPE(long double, H5T_NATIVE_LDOUBLE)
FOREACHKNOWNTYPE(std::string, returnVarLenStrDatatypeID())
FOREACHKNOWNTYPE(std::complex<float>, returnComplexDoubleDatatypeID<float>())
FOREACHKNOWNTYPE(std::complex<double>, returnComplexDoubleDatatypeID<double>())
