|
gimme-alpha 0.1
|
00001 /* 00002 ** read_nextnano_effectivemass_output.h 00003 ** 00004 ** Made by Johnny Q. Hacker 00005 ** Login <solarion@borkborkbork> 00006 ** 00007 00008 Copyright (C) 2008 Joseph Pingenot 00009 00010 This program is free software: you can redistribute it and/or modify 00011 it under the terms of the GNU Affero General Public License as published by 00012 the Free Software Foundation, either version 3 of the License, or 00013 (at your option) any later version. 00014 00015 This program is distributed in the hope that it will be useful, 00016 but WITHOUT ANY WARRANTY; without even the implied warranty of 00017 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00018 GNU Affero General Public License for more details. 00019 00020 You should have received a copy of the GNU Affero General Public License 00021 along with this program. If not, see <http://www.gnu.org/licenses/>. 00022 00023 ** Started on Wed Oct 22 09:35:47 2008 Johnny Q. Hacker 00024 ** Last update Wed Oct 22 09:35:47 2008 Johnny Q. Hacker 00025 */ 00026 00027 #ifndef READ_NEXTNANO_EFFECTIVEMASS_OUTPUT_H_ 00028 # define READ_NEXTNANO_EFFECTIVEMASS_OUTPUT_H_ 00029 00030 #include <glib.h> 00031 #include <gio/gio.h> 00032 #include <libmodeling/bands.h> 00033 #include <libmodeling/wavefunction.h> 00034 00035 /*Return a list contaning hashes with the column titles as keys. 00036 *ARGS: 00037 * istream input stream to read data from 00038 * err pointer to a pointer to hold any error that might occur 00039 * titles pointer to a pointer to a GList where the list of titles 00040 * will be kept. These are required to get the data out 00041 * of the hashes. 00042 *RETURNS: 00043 * a pointer to a GList of hashes which contain the values (double 00044 * precision float); the keys are the respective column title. 00045 * OR 00046 * NULL if reading failed. 00047 */ 00048 GList* read_effectivemass_complex_wavefunctionfile(GInputStream *istream, GError **err, GList **titles); 00049 00050 void print_effectivemass_wavefunction(GList* titles, GList* data); 00051 00052 struct mstar_wavefunction_1d* read_effectivemass_complex_wavefunction2(enum bands band, short unsigned int cluster_num, short unsigned int schroedinger_num, short unsigned int subsolution_num, enum boundary_types boundary, short unsigned int Kz_num, short unsigned int soln_num, GFile* base, GHashTable *input, GError **error); 00053 00054 #endif /* !READ_NEXTNANO_EFFECTIVEMASS_OUTPUT_H_ */