Commit d07793ab authored by Jan Möbius's avatar Jan Möbius

Merge branch 'clang_warnings' into 'master'

Clang warnings

See merge request !222
parents f1b31421 df6c3cbb
Pipeline #10652 passed with stages
in 51 minutes and 11 seconds
......@@ -30,7 +30,7 @@ echo "CPPCHECK Summary"
echo "=============================================================================="
echo -e "${NC}"
MAX_COUNT=27
MAX_COUNT=26
if [ $COUNT -gt $MAX_COUNT ]; then
echo -e ${WARNING}
......
......@@ -62,7 +62,7 @@ if (UNIX)
# add our standard flags for Template inclusion
list(APPEND ADDITIONAL_CXX_FLAGS "-DINCLUDE_TEMPLATES" )
list(APPEND ADDITIONAL_C_FLAGS "-DINCLUDE_TEMPLATES" )
################################################################################
# OS Defines
################################################################################
......@@ -108,9 +108,10 @@ if (UNIX)
list(APPEND ADDITIONAL_C_FLAGS ${COMPILER_WARNINGS} )
if ("${CMAKE_CXX_COMPILER}" MATCHES ".*clang.*")
if ("${CMAKE_CXX_COMPILER}" MATCHES "Clang")
list(APPEND ADDITIONAL_CXX_FLAGS "-Weverything")
list(APPEND ADDITIONAL_CXX_FLAGS "-Wno-c++98-compat")
list(APPEND ADDITIONAL_CXX_FLAGS "-Wno-c++98-compat-pedantic")
list(APPEND ADDITIONAL_CXX_FLAGS "-Wno-padded")
list(APPEND ADDITIONAL_CXX_FLAGS "-Wno-old-style-cast")
list(APPEND ADDITIONAL_CXX_FLAGS "-Wno-documentation-unknown-command")
......@@ -120,7 +121,7 @@ if (UNIX)
list(APPEND ADDITIONAL_CXX_FLAGS "-Wno-deprecated")
list(APPEND ADDITIONAL_CXX_FLAGS "-Wno-weak-vtables")
endif()
################################################################################
# STL Vector checks
################################################################################
......
......@@ -74,7 +74,7 @@ public:
operator T () const { return val_; }
// operator const T& () const { return val_; }
operator T* () const { return is_valid() ? &val_ : NULL; }
operator T* () const { return is_valid() ? &val_ : nullptr; }
private:
......
......@@ -68,7 +68,7 @@ int main(int argc, char **argv)
if ( !QGLFormat::hasOpenGL() ) {
QString msg = "System has no OpenGL support!";
QMessageBox::critical( NULL, "OpenGL", msg + argv[1] );
QMessageBox::critical( nullptr, "OpenGL", msg + argv[1] );
return -1;
}
......@@ -103,7 +103,7 @@ int main(int argc, char **argv)
QString msg = "Cannot read mesh from file:\n '";
msg += argv[optind];
msg += "'";
QMessageBox::critical( NULL, w.windowTitle(), msg );
QMessageBox::critical( nullptr, w.windowTitle(), msg );
return 1;
}
}
......@@ -118,7 +118,7 @@ int main(int argc, char **argv)
msg += "- Mesh file didn't provide texture coordinates\n";
msg += "- Texture file does not exist\n";
msg += "- Texture file is not accessible.\n";
QMessageBox::warning( NULL, w.windowTitle(), msg );
QMessageBox::warning( nullptr, w.windowTitle(), msg );
}
}
......
......@@ -63,7 +63,7 @@ MeshViewerWidget::MeshViewerWidget(QWidget* parent) : MeshViewerWidgetT<MyMesh>
QString msg = "Cannot read mesh from file:\n '";
msg += fname;
msg += "'";
QMessageBox::critical( NULL, windowTitle(), msg);
QMessageBox::critical( nullptr, windowTitle(), msg);
}
t.stop();
std::cout << "Loaded mesh in ~" << t.as_string() << std::endl;
......@@ -80,7 +80,7 @@ void MeshViewerWidget::open_texture_gui(QString fname)
msg += "- Mesh file didn't provide texture coordinates\n";
msg += "- Texture file does not exist\n";
msg += "- Texture file is not accessible.\n";
QMessageBox::warning( NULL, windowTitle(), msg );
QMessageBox::warning( nullptr, windowTitle(), msg );
}
}
......
......@@ -131,7 +131,6 @@ MeshViewerWidgetT<M>::open_mesh(const char* _filename, IO::Options _opt)
typename Mesh::ConstVertexIter vIt(mesh_.vertices_begin());
typename Mesh::ConstVertexIter vEnd(mesh_.vertices_end());
typedef typename Mesh::Point Point;
using OpenMesh::Vec3f;
Vec3f bbMin, bbMax;
......
......@@ -87,7 +87,7 @@ using namespace OpenMesh::Subdivider;
SubdivideWidget::
SubdivideWidget(QWidget* _parent, const char* _name)
: QWidget(_parent),
timer_(NULL), animate_step_(0), max_animate_steps_(4), msecs_(0)
timer_(nullptr), animate_step_(0), max_animate_steps_(4), msecs_(0)
{
setWindowTitle( QString(_name) );
......
......@@ -60,7 +60,7 @@ int main(int argc, char **argv)
if ( !QGLFormat::hasOpenGL() ) {
QString msg = "System has no OpenGL support!";
QMessageBox::critical( NULL, "OpenGL", msg + argv[1], QMessageBox::Ok );
QMessageBox::critical( nullptr, "OpenGL", msg + argv[1], QMessageBox::Ok );
return -1;
}
......@@ -77,7 +77,7 @@ int main(int argc, char **argv)
if ( ! w->open_mesh(argv[1]) )
{
QString msg = "Cannot read mesh from file ";
QMessageBox::critical( NULL, argv[1], msg + argv[1], QMessageBox::Ok );
QMessageBox::critical( nullptr, argv[1], msg + argv[1], QMessageBox::Ok );
return -1;
}
}
......
......@@ -78,9 +78,9 @@ PRIVATE_NODE_TYPESYSTEM_SOURCE(_class_); \
SO_NODE_SOURCE_TEMPLATE \
unsigned int _class_::classinstances = 0; \
SO_NODE_SOURCE_TEMPLATE \
const SoFieldData ** _class_::parentFieldData = NULL; \
const SoFieldData ** _class_::parentFieldData = nullptr; \
SO_NODE_SOURCE_TEMPLATE \
SoFieldData * _class_::fieldData = NULL; \
SoFieldData * _class_::fieldData = nullptr; \
\
SO_NODE_SOURCE_TEMPLATE \
const SoFieldData ** \
......
......@@ -78,7 +78,7 @@ int main(int argc, char **argv)
if ( !QGLFormat::hasOpenGL() ) {
QString msg = "System has no OpenGL support!";
QMessageBox::critical( NULL, "OpenGL", msg + argv[1], 0 );
QMessageBox::critical( nullptr, "OpenGL", msg + argv[1], 0 );
return -1;
}
......@@ -115,7 +115,7 @@ int main(int argc, char **argv)
QString msg = "Cannot read mesh from file:\n '";
msg += argv[optind];
msg += "'";
QMessageBox::critical( NULL, w->caption(), msg, 0 );
QMessageBox::critical( nullptr, w->caption(), msg, 0 );
return 1;
}
}
......@@ -130,7 +130,7 @@ int main(int argc, char **argv)
msg += "- Mesh file didn't provide texture coordinates\n";
msg += "- Texture file does not exist\n";
msg += "- Texture file is not accessible.\n";
QMessageBox::warning( NULL, w->caption(), msg, 0 );
QMessageBox::warning( nullptr, w->caption(), msg, 0 );
}
}
......
......@@ -325,7 +325,7 @@ void mouse(int button, int state, int x, int y)
{
g.mgr->mouseButtonRelease(button, x, y);
// if ( g.mode & FLYMODE )
// glutIdleFunc(NULL);
// glutIdleFunc(nullptr);
}
else
{
......
......@@ -64,7 +64,7 @@ set_vdpm(const char _vdpm_name[256])
}
#endif
vdpm_ = ((VDPMServerViewerWidget *) ((VDPMServerSocket *) parent())->parent())->get_vdpm(_vdpm_name);
if (vdpm_ == NULL)
if (vdpm_ == nullptr)
return false;
vhierarchy_ = &vdpm_->vhierarchy();
......
......@@ -72,7 +72,7 @@ get_vdpm(const char _vdpm_name[256])
}
}
return NULL;
return nullptr;
}
void
......
......@@ -64,7 +64,7 @@ set_vdpm(const char _vdpm_name[256])
}
#endif
vdpm_ = ((VDPMServerViewerWidget *) ((VDPMServerSocket *) parent())->parent())->get_vdpm(_vdpm_name);
if (vdpm_ == NULL)
if (vdpm_ == nullptr)
return false;
vhierarchy_ = &vdpm_->vhierarchy();
......
......@@ -71,7 +71,7 @@ get_vdpm(const char _vdpm_name[256])
}
}
return NULL;
return nullptr;
}
void
......
......@@ -114,7 +114,7 @@ public: // inherited
n_roots_ = calc_bits_for_roots(n_vertices_);
}
virtual float collapse_priority(const CollapseInfo& _ci)
virtual float collapse_priority(const CollapseInfo& _ci) override
{
level_t newlevel = std::max( BaseModQ::mesh().property( level_, _ci.v0 ),
BaseModQ::mesh().property( level_, _ci.v1 ) )+1;
......@@ -135,7 +135,7 @@ public: // inherited
}
/// post-process halfedge collapse (accumulate quadrics)
void postprocess_collapse(const CollapseInfo& _ci)
void postprocess_collapse(const CollapseInfo& _ci) override
{
BaseModQ::postprocess_collapse( _ci );
......
......@@ -258,7 +258,7 @@ find_writer(const std::string& _format)
if ((*it)->can_u_write(filename))
return *it;
return NULL;
return nullptr;
}
......
......@@ -135,7 +135,7 @@ namespace OMFormat {
default:
std::clog << "as_string(Chunk::Entity): Invalid value!";
}
return NULL;
return nullptr;
}
......@@ -153,7 +153,7 @@ namespace OMFormat {
case Chunk::Type_Custom: return "Custom";
case Chunk::Type_Topology: return "Topology";
}
return NULL;
return nullptr;
}
......@@ -172,7 +172,7 @@ namespace OMFormat {
case Chunk::Dim_7D: return "7D";
case Chunk::Dim_8D: return "8D";
}
return NULL;
return nullptr;
}
......@@ -187,7 +187,7 @@ namespace OMFormat {
case Chunk::Integer_32 : return "32";
case Chunk::Integer_64 : return "64";
}
return NULL;
return nullptr;
}
const char *as_string(Chunk::Float_Size d)
......@@ -198,7 +198,7 @@ namespace OMFormat {
case Chunk::Float_64 : return "64";
case Chunk::Float_128: return "128";
}
return NULL;
return nullptr;
}
......
......@@ -144,7 +144,7 @@ public:
virtual OpenMesh::Attributes::StatusInfo status(HalfedgeHandle _heh) const = 0;
// get reference to base kernel
virtual const BaseKernel* kernel() { return 0; }
virtual const BaseKernel* kernel() { return nullptr; }
// query number of faces, vertices, normals, texcoords
......
......@@ -196,7 +196,7 @@ public:
virtual void add_texture_information( int _id , std::string _name ) = 0;
// get reference to base kernel
virtual BaseKernel* kernel() { return 0; }
virtual BaseKernel* kernel() { return nullptr; }
virtual bool is_triangle_mesh() const { return false; }
......
......@@ -48,10 +48,7 @@
//
//=============================================================================
#ifndef __BASEREADER_HH__
#define __BASEREADER_HH__
#pragma once
//=== INCLUDES ================================================================
......@@ -91,7 +88,7 @@ class OPENMESHDLLEXPORT BaseReader
public:
/// Destructor
virtual ~BaseReader() {};
virtual ~BaseReader() {}
/// Returns a brief description of the file type that can be parsed.
virtual std::string get_description() const = 0;
......@@ -204,5 +201,3 @@ static inline std::string &trim(std::string &_string) {
} // namespace IO
} // namespace OpenMesh
//=============================================================================
#endif
//=============================================================================
......@@ -48,10 +48,7 @@
//
//=============================================================================
#ifndef __OFFREADER_HH__
#define __OFFREADER_HH__
#pragma once
//=== INCLUDES ================================================================
......@@ -162,5 +159,3 @@ OPENMESHDLLEXPORT _OFFReader_& OFFReader();
} // namespace IO
} // namespace OpenMesh
//=============================================================================
#endif
//=============================================================================
......@@ -64,27 +64,27 @@ void BaseKernel::property_stats(std::ostream& _ostr) const
_ostr << vprops_.size() << " vprops:\n";
for (it=vps.begin(); it!=vps.end(); ++it)
{
*it == NULL ? (void)(_ostr << "[deleted]" << "\n") : (*it)->stats(_ostr);
*it == nullptr ? (void)(_ostr << "[deleted]" << "\n") : (*it)->stats(_ostr);
}
_ostr << hprops_.size() << " hprops:\n";
for (it=hps.begin(); it!=hps.end(); ++it)
{
*it == NULL ? (void)(_ostr << "[deleted]" << "\n") : (*it)->stats(_ostr);
*it == nullptr ? (void)(_ostr << "[deleted]" << "\n") : (*it)->stats(_ostr);
}
_ostr << eprops_.size() << " eprops:\n";
for (it=eps.begin(); it!=eps.end(); ++it)
{
*it == NULL ? (void)(_ostr << "[deleted]" << "\n") : (*it)->stats(_ostr);
*it == nullptr ? (void)(_ostr << "[deleted]" << "\n") : (*it)->stats(_ostr);
}
_ostr << fprops_.size() << " fprops:\n";
for (it=fps.begin(); it!=fps.end(); ++it)
{
*it == NULL ? (void)(_ostr << "[deleted]" << "\n") : (*it)->stats(_ostr);
*it == nullptr ? (void)(_ostr << "[deleted]" << "\n") : (*it)->stats(_ostr);
}
_ostr << mprops_.size() << " mprops:\n";
for (it=mps.begin(); it!=mps.end(); ++it)
{
*it == NULL ? (void)(_ostr << "[deleted]" << "\n") : (*it)->stats(_ostr);
*it == nullptr ? (void)(_ostr << "[deleted]" << "\n") : (*it)->stats(_ostr);
}
}
......@@ -97,7 +97,7 @@ void BaseKernel::vprop_stats( std::string& _string ) const
PropertyContainer::Properties::const_iterator it;
const PropertyContainer::Properties& vps = vprops_.properties();
for (it=vps.begin(); it!=vps.end(); ++it)
if ( *it == NULL )
if ( *it == nullptr )
_string += "[deleted] \n";
else {
_string += (*it)->name();
......@@ -113,7 +113,7 @@ void BaseKernel::hprop_stats( std::string& _string ) const
PropertyContainer::Properties::const_iterator it;
const PropertyContainer::Properties& hps = hprops_.properties();
for (it=hps.begin(); it!=hps.end(); ++it)
if ( *it == NULL )
if ( *it == nullptr )
_string += "[deleted] \n";
else {
_string += (*it)->name();
......@@ -129,7 +129,7 @@ void BaseKernel::eprop_stats( std::string& _string ) const
PropertyContainer::Properties::const_iterator it;
const PropertyContainer::Properties& eps = eprops_.properties();
for (it=eps.begin(); it!=eps.end(); ++it)
if ( *it == NULL )
if ( *it == nullptr )
_string += "[deleted] \n";
else {
_string += (*it)->name();
......@@ -144,7 +144,7 @@ void BaseKernel::fprop_stats( std::string& _string ) const
PropertyContainer::Properties::const_iterator it;
const PropertyContainer::Properties& fps = fprops_.properties();
for (it=fps.begin(); it!=fps.end(); ++it)
if ( *it == NULL )
if ( *it == nullptr )
_string += "[deleted] \n";
else {
_string += (*it)->name();
......@@ -160,7 +160,7 @@ void BaseKernel::mprop_stats( std::string& _string ) const
PropertyContainer::Properties::const_iterator it;
const PropertyContainer::Properties& mps = mprops_.properties();
for (it=mps.begin(); it!=mps.end(); ++it)
if ( *it == NULL )
if ( *it == nullptr )
_string += "[deleted] \n";
else {
_string += (*it)->name();
......@@ -178,7 +178,7 @@ void BaseKernel::vprop_stats(std::ostream& _ostr ) const
PropertyContainer::Properties::const_iterator it;
const PropertyContainer::Properties& vps = vprops_.properties();
for (it=vps.begin(); it!=vps.end(); ++it)
*it == NULL ? (void)(_ostr << "[deleted]" << "\n") : (*it)->stats(_ostr);
*it == nullptr ? (void)(_ostr << "[deleted]" << "\n") : (*it)->stats(_ostr);
}
void BaseKernel::hprop_stats() const
......@@ -190,7 +190,7 @@ void BaseKernel::hprop_stats(std::ostream& _ostr ) const
PropertyContainer::Properties::const_iterator it;
const PropertyContainer::Properties& hps = hprops_.properties();
for (it=hps.begin(); it!=hps.end(); ++it)
*it == NULL ? (void)(_ostr << "[deleted]" << "\n") : (*it)->stats(_ostr);
*it == nullptr ? (void)(_ostr << "[deleted]" << "\n") : (*it)->stats(_ostr);
}
void BaseKernel::eprop_stats() const
......@@ -202,7 +202,7 @@ void BaseKernel::eprop_stats(std::ostream& _ostr ) const
PropertyContainer::Properties::const_iterator it;
const PropertyContainer::Properties& eps = eprops_.properties();
for (it=eps.begin(); it!=eps.end(); ++it)
*it == NULL ? (void)(_ostr << "[deleted]" << "\n") : (*it)->stats(_ostr);
*it == nullptr ? (void)(_ostr << "[deleted]" << "\n") : (*it)->stats(_ostr);
}
void BaseKernel::fprop_stats() const
......@@ -214,7 +214,7 @@ void BaseKernel::fprop_stats(std::ostream& _ostr ) const
PropertyContainer::Properties::const_iterator it;
const PropertyContainer::Properties& fps = fprops_.properties();
for (it=fps.begin(); it!=fps.end(); ++it)
*it == NULL ? (void)(_ostr << "[deleted]" << "\n") : (*it)->stats(_ostr);
*it == nullptr ? (void)(_ostr << "[deleted]" << "\n") : (*it)->stats(_ostr);
}
void BaseKernel::mprop_stats() const
......@@ -226,7 +226,7 @@ void BaseKernel::mprop_stats(std::ostream& _ostr ) const
PropertyContainer::Properties::const_iterator it;
const PropertyContainer::Properties& mps = mprops_.properties();
for (it=mps.begin(); it!=mps.end(); ++it)
*it == NULL ? (void)(_ostr << "[deleted]" << "\n") : (*it)->stats(_ostr);
*it == nullptr ? (void)(_ostr << "[deleted]" << "\n") : (*it)->stats(_ostr);
}
......
......@@ -285,7 +285,7 @@ class mostream : public std::ostream
public:
/// Explicit constructor
explicit mostream() : std::ostream(NULL) { init(&streambuffer_); }
explicit mostream() : std::ostream(nullptr) { init(&streambuffer_); }
/// Connect target to multiplexer
......
......@@ -70,7 +70,7 @@ protected:
public:
AutoPropertyHandleT()
: m_(NULL), own_property_(false)
: m_(nullptr), own_property_(false)
{}
AutoPropertyHandleT(const Self& _other)
......
......@@ -363,7 +363,7 @@ public:
}
/// Make a copy of self.
PropertyT<bool>* clone() const
PropertyT<bool>* clone() const override
{
PropertyT<bool>* p = new PropertyT<bool>( *this );
return p;
......@@ -434,7 +434,7 @@ public:
const value_type* data() const {
if( data_.empty() )
return 0;
return nullptr;
return (value_type*) &data_[0];
}
......@@ -451,7 +451,7 @@ public:
return ((value_type*) &data_[0])[_idx];
}
PropertyT<value_type>* clone() const {
PropertyT<value_type>* clone() const override {
PropertyT<value_type>* p = new PropertyT<value_type>( *this );
return p;
}
......
......@@ -102,8 +102,8 @@ public:
{
Properties::iterator p_it=properties_.begin(), p_end=properties_.end();
int idx=0;
for ( ; p_it!=p_end && *p_it!=NULL; ++p_it, ++idx ) {};
if (p_it==p_end) properties_.push_back(NULL);
for ( ; p_it!=p_end && *p_it!=nullptr; ++p_it, ++idx ) {};
if (p_it==p_end) properties_.push_back(nullptr);
properties_[idx] = new PropertyT<T>(_name);
return BasePropHandleT<T>(idx);
}
......@@ -115,11 +115,11 @@ public:
Properties::const_iterator p_it = properties_.begin();
for (int idx=0; p_it != properties_.end(); ++p_it, ++idx)
{
if (*p_it != NULL &&
if (*p_it != nullptr &&
(*p_it)->name() == _name //skip deleted properties
// Skip type check
#ifndef OM_FORCE_STATIC_CAST
&& dynamic_cast<PropertyT<T>*>(properties_[idx]) != NULL //check type
&& dynamic_cast<PropertyT<T>*>(properties_[idx]) != nullptr //check type
#endif
)
{
......@@ -134,23 +134,23 @@ public:
Properties::const_iterator p_it = properties_.begin();
for (int idx=0; p_it != properties_.end(); ++p_it, ++idx)
{
if (*p_it != NULL && (*p_it)->name() == _name) //skip deleted properties
if (*p_it != nullptr && (*p_it)->name() == _name) //skip deleted properties
{
return *p_it;
}
}
return NULL;
return nullptr;
}
template <class T> PropertyT<T>& property(BasePropHandleT<T> _h)
{
assert(_h.idx() >= 0 && _h.idx() < (int)properties_.size());
assert(properties_[_h.idx()] != NULL);
assert(properties_[_h.idx()] != nullptr);
#ifdef OM_FORCE_STATIC_CAST
return *static_cast <PropertyT<T>*> (properties_[_h.idx()]);
#else
PropertyT<T>* p = dynamic_cast<PropertyT<T>*>(properties_[_h.idx()]);
assert(p != NULL);
assert(p != nullptr);
return *p;
#endif
}
......@@ -159,12 +159,12 @@ public:
template <class T> const PropertyT<T>& property(BasePropHandleT<T> _h) const
{
assert(_h.idx() >= 0 && _h.idx() < (int)properties_.size());
assert(properties_[_h.idx()] != NULL);
assert(properties_[_h.idx()] != nullptr);
#ifdef OM_FORCE_STATIC_CAST
return *static_cast<PropertyT<T>*>(properties_[_h.idx()]);
#else
PropertyT<T>* p = dynamic_cast<PropertyT<T>*>(properties_[_h.idx()]);
assert(p != NULL);
assert(p != nullptr);
return *p;
#endif
}
......@@ -174,7 +174,7 @@ public:
{
assert(_h.idx() >= 0 && _h.idx() < (int)properties_.size());
delete properties_[_h.idx()];
properties_[_h.idx()] = NULL;
properties_[_h.idx()] = nullptr;
}
......@@ -281,8 +281,8 @@ protected: // generic add/get
{
Properties::iterator p_it=properties_.begin(), p_end=properties_.end();
size_t idx=0;
for (; p_it!=p_end && *p_it!=NULL; ++p_it, ++idx) {};
if (p_it==p_end) properties_.push_back(NULL);
for (; p_it!=p_end && *p_it!=nullptr; ++p_it, ++idx) {};
if (p_it==p_end) properties_.push_back(nullptr);
properties_[idx] = _bp;
return idx;
}
......@@ -290,18 +290,18 @@ protected: // generic add/get
BaseProperty& _property( size_t _idx )
{
assert( _idx < properties_.size());
assert( properties_[_idx] != NULL);
assert( properties_[_idx] != nullptr);
BaseProperty *p = properties_[_idx];
assert( p != NULL );
assert( p != nullptr );
return *p;
}
const BaseProperty& _property( size_t _idx ) const
{
assert( _idx < properties_.size());
assert( properties_[_idx] != NULL);
assert( properties_[_idx] != nullptr);
BaseProperty *p = properties_[_idx];
assert( p != NULL );
assert( p != nullptr );
return *p;
}
......
......@@ -48,10 +48,7 @@
//
//=============================================================================
#ifndef __SINGLETON_HH__
#define __SINGLETON_HH__
#pragma once
//=== INCLUDES ================================================================
......@@ -145,5 +142,3 @@ private:
# include "SingletonT_impl.hh"
#endif
//=============================================================================
#endif // __SINGLETON_HH__
//=============================================================================
......@@ -67,7 +67,7 @@ namespace Decimater {
template<class Mesh>
BaseDecimaterT<Mesh>::BaseDecimaterT(Mesh& _mesh) :
mesh_(_mesh), cmodule_(NULL), initialized_(false), observer_(NULL) {
mesh_(_mesh), cmodule_(nullptr), initialized_(false), observer_(nullptr) {
// default properties
mesh_.request_vertex_status();
mesh_.request_edge_status();
......@@ -249,8 +249,8 @@ bool BaseDecimaterT<Mesh>::initialize() {
// priority module explicitly.
// find the priority module: either the only non-binary module in the list, or "Quadric"
Module *quadric = NULL;
Module *pmodule = NULL;
Module *quadric = nullptr;
Module *pmodule = nullptr;
for (ModuleListIterator m_it = all_modules_.begin(), m_end =
all_modules_.end(); m_it != m_end; ++m_it) {
if ((*m_it)->name() == "Quadric")
......
......@@ -75,7 +75,7 @@ DecimaterT<Mesh>::DecimaterT(Mesh& _mesh) :
#if (defined(_MSC_VER) && (_MSC_VER >= 1800)) || __cplusplus > 199711L || defined( __GXX_EXPERIMENTAL_CXX0X__ )
heap_(nullptr)
#else
heap_(NULL)
heap_(nullptr)
#endif
{
......
......@@ -111,16 +111,16 @@ class ModAspectRatioT: public ModBaseT<MeshT> {
}
/// precompute face aspect ratio
void initialize();
void initialize() override;
/// Returns the collapse priority
float collapse_priority(const CollapseInfo& _ci);
float collapse_priority(const CollapseInfo& _ci) override;