xc
src
domain
mesh
node
NodeIter.h
1
// -*-c++-*-
2
//----------------------------------------------------------------------------
3
// XC program; finite element analysis code
4
// for structural analysis and design.
5
//
6
// Copyright (C) Luis C. Pérez Tato
7
//
8
// This program derives from OpenSees <http://opensees.berkeley.edu>
9
// developed by the «Pacific earthquake engineering research center».
10
//
11
// Except for the restrictions that may arise from the copyright
12
// of the original program (see copyright_opensees.txt)
13
// XC is free software: you can redistribute it and/or modify
14
// it under the terms of the GNU General Public License as published by
15
// the Free Software Foundation, either version 3 of the License, or
16
// (at your option) any later version.
17
//
18
// This software is distributed in the hope that it will be useful, but
19
// WITHOUT ANY WARRANTY; without even the implied warranty of
20
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21
// GNU General Public License for more details.
22
//
23
//
24
// You should have received a copy of the GNU General Public License
25
// along with this program.
26
// If not, see <http://www.gnu.org/licenses/>.
27
//----------------------------------------------------------------------------
28
/* ****************************************************************** **
29
** OpenSees - Open System for Earthquake Engineering Simulation **
30
** Pacific Earthquake Engineering Research Center **
31
** **
32
** **
33
** (C) Copyright 1999, The Regents of the University of California **
34
** All Rights Reserved. **
35
** **
36
** Commercial use of this program without express permission of the **
37
** University of California, Berkeley, is strictly prohibited. See **
38
** file 'COPYRIGHT' in main directory for information on usage and **
39
** redistribution, and for a DISCLAIMER OF ALL WARRANTIES. **
40
** **
41
** Developed by: **
42
** Frank McKenna (fmckenna@ce.berkeley.edu) **
43
** Gregory L. Fenves (fenves@ce.berkeley.edu) **
44
** Filip C. Filippou (filippou@ce.berkeley.edu) **
45
** **
46
** ****************************************************************** */
47
48
// $Revision: 1.1.1.1 $
49
// $Date: 2000/09/15 08:23:18 $
50
// $Source: /usr/local/cvs/OpenSees/SRC/domain/domain/NodeIter.h,v $
51
52
53
// File: ~/domain/domain/NodeIter.h
54
//
55
// Written: fmk
56
// Created: Fri Sep 20 15:27:47: 1996
57
// Revision: A
58
//
59
// Description: This file contains the class definition for NodeIter.
60
// NodeIter is an abstract base class. A NodeIter object is an iter
61
// for returning the nodes of an object of class Domain. NodeIters
62
// must be written for each subclass of Domain, hence the abstract base class.
63
64
65
#ifndef NodeIter_h
66
#define NodeIter_h
67
68
namespace
XC
{
69
class
Node;
70
72
//
74
class
NodeIter
75
{
76
public
:
77
NodeIter
() {};
78
virtual
~
NodeIter
() {};
79
virtual
Node
*operator()(
void
) =0;
80
virtual
const
Node
*operator()(
void
)
const
;
81
};
82
83
inline
const
Node
*NodeIter::operator()(
void
)
const
84
{
85
NodeIter
*this_no_const=
const_cast<
NodeIter
*
>
(
this
);
86
const
Node
*retval= (*this_no_const)();
87
return
retval;
88
}
89
}
// end of XC namespace
90
91
#endif
92
XC
Open source finite element program for structural analysis.
Definition:
ContinuaReprComponent.h:35
XC::NodeIter
Iterator over the nodes.
Definition:
NodeIter.h:74
XC::Node
Mesh node.
Definition:
Node.h:111
Generated by
1.8.13