00001 // -*- C++ -*- 00002 /*************************************************************************** 00003 * 00004 * The IPPL Framework 00005 * 00006 * 00007 * Visit http://people.web.psi.ch/adelmann/ for more details 00008 * 00009 ***************************************************************************/ 00010 00011 // Ippl.h 00012 // Comprehensive include file for IPPL applications 00013 // Includes all of the IPPL header files typically needed 00014 00015 #ifndef IPPL_H 00016 #define IPPL_H 00017 00018 // Tau Profiling 00019 #include "Profile/Profiler.h" 00020 00021 // IPPL Communicate classes 00022 #include "Message/Communicate.h" 00023 #include "Message/GlobalComm.h" 00024 00025 // IPPL Utilities 00026 #include "Utility/Timer.h" 00027 #include "Utility/RandomNumberGen.h" 00028 #include "Utility/PAssert.h" 00029 #include "Utility/IpplInfo.h" 00030 #include "Utility/IpplCounter.h" 00031 #include "Utility/IpplStats.h" 00032 #include "Utility/IpplTimings.h" 00033 00034 // IPPL Field Indexing 00035 #include "Index/Index.h" 00036 #include "Index/NDIndex.h" 00037 #include "Index/SIndex.h" 00038 #include "Index/IndexedSIndex.h" 00039 #include "Index/SIndexAssign.h" 00040 00041 // IPPL Field Layout 00042 #include "FieldLayout/FieldLayout.h" 00043 #include "FieldLayout/CenteredFieldLayout.h" 00044 00045 // IPPL Meshes 00046 #include "Meshes/UniformCartesian.h" 00047 #include "Meshes/Cartesian.h" 00048 00049 // IPPL Expression Templates 00050 #include "PETE/IpplExpressions.h" 00051 00052 // IPPL Field classes 00053 #include "Field/FieldSpec.h" 00054 #include "Field/Field.h" 00055 #include "Field/Assign.h" 00056 #include "Field/AssignDefs.h" 00057 #include "Field/IndexedBareField.h" 00058 #include "Field/IndexedField.h" 00059 #include "Field/GuardCellSizes.h" 00060 #include "Utility/FieldBlock.h" 00061 #include "Utility/FieldPrint.h" 00062 #include "Utility/FieldDebugPrint.h" 00063 #include "Utility/FieldView.h" 00064 #include "Utility/FieldDebug.h" 00065 #include "Utility/DiscField.h" 00066 00067 // IPPL Particles classes 00068 #include "Particle/ParticleBase.h" 00069 #include "Particle/PAssign.h" 00070 #include "Particle/PAssignDefs.h" 00071 #include "Particle/ParticleSpatialLayout.h" 00072 #include "Particle/ParticleUniformLayout.h" 00073 #include "Particle/ParticleInteractLayout.h" 00074 #include "Particle/ParticleBalancer.h" 00075 #include "Particle/GenArrayParticle.h" 00076 #include "Particle/GenParticle.h" 00077 #include "Utility/DiscParticle.h" 00078 #include "Utility/ParticleDebug.h" 00079 00080 // IPPL Field <--> Particle interpolators 00081 #include "Particle/IntNGP.h" 00082 #include "Particle/IntCIC.h" 00083 #include "Particle/IntSUDS.h" 00084 #include "Particle/ParticleLayoutFromGrid.h" 00085 00086 // IPPL sparse index expression operations 00087 #include "SubField/SubFieldAssign.h" 00088 #include "SubParticle/SubParticleAssign.h" 00089 00090 // IPPL Math Types 00091 #include "AppTypes/dcomplex.h" 00092 #include "AppTypes/Vektor.h" 00093 #include "AppTypes/Tenzor.h" 00094 #include "AppTypes/SymTenzor.h" 00095 #include "AppTypes/AntiSymTenzor.h" 00096 00097 // IPPL Data Connection classes 00098 #include "DataSource/DataConnectCreator.h" 00099 #include "DataSource/FileDataConnect.h" 00100 00101 // IPPL FFTs 00102 #include "FFT/FFT.h" 00103 00104 // IPPL Load balancing 00105 #include "FieldLayout/BinaryBalancer.h" 00106 #include "FieldLayout/ConejoBalancer.h" 00107 #include "FieldLayout/VnodeMultiBalancer.h" 00108 00109 #endif 00110 00111 /*************************************************************************** 00112 * $RCSfile: Ippl.h,v $ $Author: adelmann $ 00113 * $Revision: 1.1.1.1 $ $Date: 2003/01/23 07:40:24 $ 00114 * IPPL_VERSION_ID: $Id: Ippl.h,v 1.1.1.1 2003/01/23 07:40:24 adelmann Exp $ 00115 ***************************************************************************/