openModeller  Version 1.5.0
Occurrence.cpp
Go to the documentation of this file.
1 
28 #include <openmodeller/Log.hh>
29 
31 
32 #include <string.h>
33 
34 /****************************************************************/
35 /************************** Occurrence **************************/
36 
37 /******************/
38 /*** destructor ***/
39 
41 {
42 }
43 
46 {
47  if ( this == &rhs ) {
48 
49  return *this;
50  }
51 
52  x_ = rhs.x_;
53  y_ = rhs.y_;
54  error_ = rhs.error_;
55  abundance_ = rhs.abundance_;
56 
57  attr_ = rhs.attr_;
58  unnormEnv_ = rhs.unnormEnv_;
59  normEnv_ = rhs.normEnv_;
60 
61  return *this;
62 }
63 
65 {
66  if ( normEnv_.size() != 0 ) {
67 
68  return normEnv_;
69  }
70  else {
71 
72  return unnormEnv_;
73  }
74 }
75 
77 {
78  return unnormEnv_;
79 }
80 
81 void
82 OccurrenceImpl::normalize( Normalizer * normalizerPtr, size_t categoricalThreshold )
83 {
84  unnormEnv_.setCategoricalThreshold( categoricalThreshold );
85 
87 
88  if ( normalizerPtr ) {
89 
90  normalizerPtr->normalize( &normEnv_ );
91  }
92 }
93 
94 void
96 {
97  normEnv_ = s;
98 }
99 
100 void
102 {
103  unnormEnv_ = s;
104 }
105 
106 bool
108 {
109  return unnormEnv_.size() != 0;
110 }
111 
112 void
113 OccurrenceImpl::setId( const std::string& id )
114 {
115  id_ = id;
116 }
117 
118 void
120 {
121  abundance_ = value;
122 }
123 
124 void
126 {
127  Log::instance()->info( "Occurrence %s\n", id_.c_str() );
128  Log::instance()->info( "Unnormalized environment:\n" );
129  unnormEnv_.dump();
130  Log::instance()->info( "Normalized environment:\n" );
131  normEnv_.dump();
132 }
void setCategoricalThreshold(std::size_t index)
Definition: Sample.cpp:191
double Scalar
Type of map values.
Definition: om_defs.hh:39
bool hasEnvironment() const
Definition: Occurrence.cpp:107
Sample const & environment() const
Definition: Occurrence.cpp:64
static Log * instance()
Returns the instance pointer, creating the object on the first call.
Definition: Log.cpp:45
void dump() const
Definition: Sample.cpp:274
void setNormalizedEnvironment(const Sample &s)
Definition: Occurrence.cpp:95
void setId(const std::string &id)
Definition: Occurrence.cpp:113
Scalar abundance_
Definition: Occurrence.hh:226
void setAbundance(Scalar value)
Definition: Occurrence.cpp:119
std::string id() const
Definition: Occurrence.hh:194
void dump() const
Definition: Occurrence.cpp:125
std::string id_
Definition: Occurrence.hh:222
virtual void normalize(Sample *samplePtr)=0
Sample unnormEnv_
Definition: Occurrence.hh:229
std::size_t size() const
Definition: Sample.hh:70
Sample const & originalEnvironment() const
Definition: Occurrence.cpp:76
void setUnnormalizedEnvironment(const Sample &s)
Definition: Occurrence.cpp:101
void info(const char *format,...)
'Info' level.
Definition: Log.cpp:256
OccurrenceImpl & operator=(const OccurrenceImpl &)
Definition: Occurrence.cpp:45
void normalize(Normalizer *normalizerPtr, size_t categoricalThreshold=0)
Definition: Occurrence.cpp:82
Definition: Sample.hh:25