Sierra Toolkit Version of the Day
Field.hpp
00001 /*------------------------------------------------------------------------*/
00002 /*                 Copyright 2010 Sandia Corporation.                     */
00003 /*  Under terms of Contract DE-AC04-94AL85000, there is a non-exclusive   */
00004 /*  license for use of this work by or on behalf of the U.S. Government.  */
00005 /*  Export of this program may require a license from the                 */
00006 /*  United States Government.                                             */
00007 /*------------------------------------------------------------------------*/
00008 
00009 
00010 #ifndef stk_mesh_Field_hpp
00011 #define stk_mesh_Field_hpp
00012 
00013 //----------------------------------------------------------------------
00014 
00015 #include <stk_mesh/base/FieldBase.hpp>
00016 #include <stk_mesh/base/FieldRelation.hpp>
00017 #include <stk_mesh/base/FieldTraits.hpp>
00018 
00019 //----------------------------------------------------------------------
00020 
00021 namespace stk {
00022 namespace mesh {
00023 
00112 // Implementation Details:
00113 // The template arguments below describe the field type. Scalar is the scalar
00114 // type of data contained by the field. The TagN describe each dimension of the
00115 // Field, these are expected to be ArrayDimTags. Unused dimensions can be ignored.
00116 template< typename Scalar , class Tag1 , class Tag2 , class Tag3 , class Tag4 ,
00117           class Tag5 , class Tag6 , class Tag7 >
00118 class Field : public FieldBase {
00119 public:
00120 
00122   Field & field_of_state( FieldState input_state ) const {
00123     return static_cast<Field &>( * FieldBase::field_state(input_state) );
00124   }
00125 
00126 private:
00127 
00128 #ifndef DOXYGEN_COMPILE
00129 
00130   ~Field();
00131   Field();
00132   Field( const Field & );
00133   Field & operator = ( const Field & );
00134 
00135 #endif /* DOXYGEN_COMPILE */
00136 };
00137 
00138 } // namespace mesh
00139 } // namespace stk
00140 
00141 #endif /* stk_mesh_Field_hpp */
00142 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines