funkalicious 0.1

dc_sweep_n_slice_args.h

Go to the documentation of this file.
00001 /**Args for dc_sweep_n_slice
00002 
00003 
00004     Copyright (C) 2011 Joseph Pingenot
00005 
00006     This program is free software: you can redistribute it and/or modify
00007     it under the terms of the GNU Affero General Public License as published by
00008     the Free Software Foundation, either version 3 of the License, or
00009     (at your option) any later version.
00010 
00011     This program is distributed in the hope that it will be useful,
00012     but WITHOUT ANY WARRANTY; without even the implied warranty of
00013     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014     GNU Affero General Public License for more details.
00015 
00016     You should have received a copy of the GNU Affero General Public License
00017     along with this program.  If not, see <http://www.gnu.org/licenses/>.
00018 
00019 */
00020 
00021 #include <libdotcode/dotcode_data.h>
00022 #include <libpostproc/lp_wavefunction.h>
00023 #include <glib-2.0/glib.h>
00024 
00025 struct args {
00026   /**If true, x is (110) and y is (-110)*/
00027   gboolean use_110_coordinates;
00028   gboolean sweeps[3];
00029   /**Axes to print out; 0->X 1->Y 2->z*/
00030   gboolean axes[3];
00031   /**Planes to print out; 0->XY 1->XZ 2->Yz*/
00032   gboolean planes[3];
00033   /**If true, print out the point of max probability.  Otherwise, print the requested point.  */
00034   gboolean use_max_probability_point;
00035   /**If true, use the requested gridsite, else use the requested point*/
00036   gboolean use_gridsite;
00037   /**Grid site at which to get the wavefunction*/
00038   int gridsite[3];
00039   /**Point site at which to get the wavefunction*/
00040   double point[3];
00041   /**If NULL, use the straight probability density.  Else print out the requested point for each requested band.*/
00042   GList* bands;
00043   /**List of struct wavefunction* containing the list of wavefunctions to print.*/
00044   GList* wavefunctions;
00045 };
00046 
00047 
00048 /**Parses the options and sets up the args struct.
00049  *\param argc from main
00050  *\param argv from main
00051  *\param args pointer to struct to initialize
00052  *\param err pointer to pointer to GError to return error information (if any)
00053  *\not GError code will be set to 1 if the user requested version information.
00054  */
00055 void get_args(int argc, char** argv, struct args* args, GError **err);
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Defines