/* $Id: templates.cc,v 1.1.1.1 1996/10/02 10:35:45 roitzsch Exp $ (C)opyright 1996 by Konrad-Zuse-Center, Berlin All rights reserved. Part of the Kaskade distribution */ #ifndef INCLUDE_TEMPLATE_DEFS #include "dimension.h" //------------------------------------------------------------------------- #include "vector.h" #include "vector.cc" #include "stack.h" #include "stack.cc" #include "matrix.h" #include "matrix.cc" #include "array3.h" #include "array3.cc" //------------------------------------------------------------------------- #include "alloc.h" #include "alloc.cc" //------------------------------------------------------------------------- #include "dlist.h" #include "dlist.cc" #include "slist.h" #include "slist.cc" //------------------------------------------------------------------------- #include "general.h" #include "elementsA.h" #include "connect.h" #include "familyA.h" #include "sysmatmlnodes.h" #include "block.h" // -- here only templates for pointers are generated: class FEPlot; // int class PATCH; // intA class MLMatrix; // intB class TransferMatrix; // intB class SystemMatrix; // precond //------------------------------------------------------------------------- // -- the rather general templates: #ifndef __DECCXX // no DEC C++ class Vector; class Vector; class Vector; class Vector; class Vector; class Vector; class Vector; class Vector; class Vector; class Vector; class Vector*>; class Vector*>; class Stack; class Stack; class Stack; class Stack; class Stack; class Stack; class Matrix; class Matrix; class Matrix; class Matrix; class Matrix; class Matrix*>; class Array3; // -- the more specific templates: // connect class StaticAllocator; class Allocator; class Vector; class Stack; class SList; class Vector*>; // family class Vector; class Stack; class Vector; class Stack; class Vector; class Stack; class Vector; class StaticAllocator; class StaticAllocator; // int class Vector; class Stack; // intA class Vector; class Stack; // intB class Vector; class Stack; class Vector; class Stack; class Vector; class Stack; // intedge class Matrix; // materials class Vector*>; class Vector*>; // pecond class Stack*>; class Stack*>; class Stack*>; // block, sysmatbl class StaticAllocator; class Vector; class Stack; class StaticAllocator; class Stack; class Vector; class StaticAllocator; class Vector; class Stack; // sysmatmlnodes, sysmatml // class Vector; class StaticAllocator; class Vector; class Stack; class StaticAllocator; class Vector; class Stack; //------------------------------------------------------------------------- //------------------------------------------------------------------------- // the implementations for the specific space dimensions: //------------------------------------------------------------------------- #include "triangtempl.h" #include "triangtempl.cc" //------------------------------------------------------------------------- #if (DIMENSION == 1 || DIMENSION > 3) #include "triang1.h" #include "triang1tr.h" class Vector; class Stack; class Vector; class Stack; class Vector; class Stack; class Vector*>; class Vector*>; class Stack*>; class Stack*>; class DList; class DList; class DListIter; class DListIter; class Allocator; class Allocator; class Allocator; class StaticAllocator; class StaticAllocator; class StaticAllocator; #endif //------------------------------------------------------------------------- #if (DIMENSION == 2 || DIMENSION > 3) #include "triang2.h" #include "triang2tr.h" class Vector; class Stack; class Vector; class Stack; class Vector; class Stack; class Vector; class Stack; class Vector*>; class DList; class DList; class DList; class Vector*>; class Vector*>; class Vector*>; class Stack*>; class Stack*>; class Stack*>; class DListIter; class DListIter; class DListIter; class Allocator; class Allocator; class Allocator; class Allocator; class StaticAllocator; class StaticAllocator; class StaticAllocator; class StaticAllocator; #endif //------------------------------------------------------------------------- #if (DIMENSION == 3 || DIMENSION > 3) #include "triang3.h" #include "triang3tr.h" //------------------------------------------------------------------------- //------------------------------------------------------------------------- class Allocator; class StaticAllocator; class Vector; class Stack; class DList; class DListIter; class Vector*>; class Stack*>; class Allocator; class StaticAllocator; class Vector; class Stack; class Vector*>; class DList; class DListIter; class Vector*>; class Stack*>; class StaticAllocator; class Stack; class Vector; class Vector*>; class DList; class DListIter; class Vector*>; class Stack*>; class Allocator; class StaticAllocator; class Vector; class Stack; class DList; class DListIter; class Vector*>; class Stack*>; class Allocator; class StaticAllocator; class Vector; class Stack; class Allocator; class StaticAllocator; class Vector; class Stack; //------------------------------------------------------------------------- //------------------------------------------------------------------------- #endif #else // __DECCXX #pragma define_template Vector #pragma define_template Vector #pragma define_template Vector #pragma define_template Vector #pragma define_template Vector #pragma define_template Vector #pragma define_template Vector #pragma define_template Vector #pragma define_template Vector #pragma define_template Vector #pragma define_template Vector*> #pragma define_template Vector*> #pragma define_template Stack #pragma define_template Stack #pragma define_template Stack #pragma define_template Stack #pragma define_template Stack #pragma define_template Stack #pragma define_template Matrix #pragma define_template Matrix #pragma define_template Matrix #pragma define_template Matrix #pragma define_template Matrix #pragma define_template Matrix*> #pragma define_template Array3 // -- the more specific templates: // connect #pragma define_template StaticAllocator #pragma define_template Allocator #pragma define_template Vector #pragma define_template Stack #pragma define_template SList #pragma define_template Vector*> // family #pragma define_template Vector #pragma define_template Stack #pragma define_template Vector #pragma define_template Stack #pragma define_template Vector #pragma define_template Stack #pragma define_template Vector #pragma define_template StaticAllocator #pragma define_template StaticAllocator // int #pragma define_template Vector #pragma define_template Stack // intA #pragma define_template Vector #pragma define_template Stack // intB #pragma define_template Vector #pragma define_template Stack #pragma define_template Vector #pragma define_template Stack #pragma define_template Vector #pragma define_template Stack // intedge #pragma define_template Matrix // materials #pragma define_template Vector*> #pragma define_template Vector*> // pecond #pragma define_template Stack*> #pragma define_template Stack*> #pragma define_template Stack*> // block, sysmatbl #pragma define_template StaticAllocator #pragma define_template Vector #pragma define_template Stack #pragma define_template StaticAllocator #pragma define_template Stack #pragma define_template Vector #pragma define_template StaticAllocator #pragma define_template Vector #pragma define_template Stack // sysmatmlnodes, sysmatml // #pragma define_template Vector #pragma define_template StaticAllocator #pragma define_template Vector #pragma define_template Stack #pragma define_template StaticAllocator #pragma define_template Vector #pragma define_template Stack //------------------------------------------------------------------------- //------------------------------------------------------------------------- // the implementations for the specific space dimensions: //------------------------------------------------------------------------- #include "triangtempl.h" #include "triangtempl.cc" //------------------------------------------------------------------------- #if (DIMENSION == 1 || DIMENSION > 3) #include "triang1.h" #include "triang1tr.h" #pragma define_template Vector #pragma define_template Stack #pragma define_template Vector #pragma define_template Stack #pragma define_template Vector #pragma define_template Stack #pragma define_template Vector*> #pragma define_template Vector*> #pragma define_template Stack*> #pragma define_template Stack*> #pragma define_template DList #pragma define_template DList #pragma define_template DListIter #pragma define_template DListIter #pragma define_template Allocator #pragma define_template Allocator #pragma define_template Allocator #pragma define_template StaticAllocator #pragma define_template StaticAllocator #pragma define_template StaticAllocator #endif //------------------------------------------------------------------------- #if (DIMENSION == 2 || DIMENSION > 3) #include "triang2.h" #include "triang2tr.h" #pragma define_template Vector #pragma define_template Stack #pragma define_template Vector #pragma define_template Stack #pragma define_template Vector #pragma define_template Stack #pragma define_template Vector #pragma define_template Stack #pragma define_template Vector*> #pragma define_template DList #pragma define_template DList #pragma define_template DList #pragma define_template Vector*> #pragma define_template Vector*> #pragma define_template Vector*> #pragma define_template Stack*> #pragma define_template Stack*> #pragma define_template Stack*> #pragma define_template DListIter #pragma define_template DListIter #pragma define_template DListIter #pragma define_template Allocator #pragma define_template Allocator #pragma define_template Allocator #pragma define_template Allocator #pragma define_template StaticAllocator #pragma define_template StaticAllocator #pragma define_template StaticAllocator #pragma define_template StaticAllocator #endif //------------------------------------------------------------------------- #if (DIMENSION == 3 || DIMENSION > 3) #include "triang3.h" #include "triang3tr.h" //------------------------------------------------------------------------- //------------------------------------------------------------------------- #pragma define_template Allocator #pragma define_template StaticAllocator #pragma define_template Vector #pragma define_template Stack #pragma define_template DList #pragma define_template DListIter #pragma define_template Vector*> #pragma define_template Stack*> #pragma define_template Allocator #pragma define_template StaticAllocator #pragma define_template Vector #pragma define_template Stack #pragma define_template Vector*> #pragma define_template DList #pragma define_template DListIter #pragma define_template Vector*> #pragma define_template Stack*> #pragma define_template StaticAllocator #pragma define_template Stack #pragma define_template Vector #pragma define_template Vector*> #pragma define_template DList #pragma define_template DListIter #pragma define_template Vector*> #pragma define_template Stack*> #pragma define_template Allocator #pragma define_template StaticAllocator #pragma define_template Vector #pragma define_template Stack #pragma define_template DList #pragma define_template DListIter #pragma define_template Vector*> #pragma define_template Stack*> #pragma define_template Allocator #pragma define_template StaticAllocator #pragma define_template Vector #pragma define_template Stack #pragma define_template Allocator #pragma define_template StaticAllocator #pragma define_template Vector #pragma define_template Stack #endif //------------------------------------------------------------------------- //------------------------------------------------------------------------- #endif #endif