17 #include "visbasemod.h" 22 namespace Threads {
class Mutex; };
40 int nrNormals() const;
42 void setNormal(
int,const
Coord3&);
43 int addNormal(const Coord3&);
44 int nextID(
int previd) const;
45 void removeNormal(
int );
46 Coord3 getNormal(
int) const;
47 void addNormalValue(
int,const Coord3&);
50 void setAll(const
float* vals,
int nmsz);
53 void setAll(const Coord3* coords,
int nmsz);
56 void setAll(const Coord3& coord,
int nmsz);
59 void setDisplayTransformation(const
mVisTrans* nt);
61 {
return transformation_; }
64 const osg::Array*
osgArray()
const {
return osgnormals_; }
76 friend class DoTransformation;
87 int nextID(
int previd)
const{
return normals_.nextID(previd); }
89 int add(
const Coord3& n ) {
return normals_.addNormal(n); }
90 void set(
int idx,
const Coord3& n) { normals_.setNormal(idx,n); }
91 void remove(
int idx) { normals_.removeNormal(idx); }
92 Coord3 get(
int idx)
const {
return normals_.getNormal(idx); }
94 { normals_.addNormalValue(idx,n ); }
96 {
return normals_.getNormal(idx).isDefined(); }
98 int size()
const {
return normals_.nrNormals(); }
void addValue(int idx, const Coord3 &n)
Adds value to existing value at id.
Definition: visnormals.h:93
#define mExpClass(module)
Definition: commondefs.h:160
bool isDefined(int idx) const
Definition: visnormals.h:95
Interface for a list of Coord3 with automatically maintained IDs.
Definition: positionlist.h:72
int size() const
Definition: visnormals.h:98
DataObject is the base class off all objects that are used in Visualization and ought to be shared in...
Definition: visdata.h:65
const visBase::Transformation * transformation_
Definition: visnormals.h:73
interface to threads that should be portable.
Definition: atomic.h:28
~NormalListAdapter()
Definition: visnormals.h:103
osg::Array * osgnormals_
Definition: visnormals.h:75
Definition: visnormals.h:32
osg::Array * osgArray()
Definition: visnormals.h:63
#define mVisTrans
Definition: visdata.h:31
Normals & normals_
Definition: visnormals.h:105
static Normals * create()
Definition: visnormals.h:35
NormalListAdapter(Normals &n)
Definition: visnormals.h:83
Definition: visnormals.h:80
A cartesian coordinate in 3D space.
Definition: coord.h:72
int add(const Coord3 &n)
Return new id, or -1 if unsuccessful.
Definition: visnormals.h:89
Definition: visannot.h:43
TypeSet< int > unusednormals_
Definition: visnormals.h:70
const osg::Array * osgArray() const
Definition: visnormals.h:64
Is a lock that allows a thread to have exlusive rights to something.
Definition: thread.h:43
Threads::Mutex & mutex_
Definition: visnormals.h:71
#define mCreateDataObj(clss)
Definition: visdata.h:209
Normals * getNormals()
Definition: visnormals.h:100
int nextID(int previd) const
Definition: visnormals.h:87