Developer Documentation
Loading...
Searching...
No Matches
PropertyNameListModel Class Reference
Inheritance diagram for PropertyNameListModel:

Classes

class  PROP_INFO
 
class  TypeInfoWrapper
 

Public Types

enum  ENTITY_FILTER {
  EF_ANY = 0x0F , EF_FACE = 0x01 , EF_EDGE = 0x02 , EF_HALFEDGE = 0x04 ,
  EF_VERTEX = 0x08
}
 

Public Member Functions

 PropertyNameListModel (QObject *parent=0)
 
virtual int rowCount (const QModelIndex &parent=QModelIndex()) const
 
virtual QVariant data (const QModelIndex &index, int role=Qt::DisplayRole) const
 
virtual QVariant headerData (int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const
 
template<typename MeshT >
void refresh (MeshT *mesh, ENTITY_FILTER entityFilterMask, std::type_info *typeIdFilter)
 
bool tryInsertionsDeletions (std::vector< PROP_INFO > &propList)
 
template<typename MeshT , typename OUTPUT_ITERATOR >
void gatherProperties (MeshT *mesh, typename MeshT::prop_iterator props_first, typename MeshT::prop_iterator props_last, std::type_info *typeIdFilter, OUTPUT_ITERATOR oit, ENTITY_FILTER entity)
 
const PROP_INFOoperator[] (size_t index)
 

Static Public Member Functions

static const char * entity2str (ENTITY_FILTER entity)
 

Static Public Attributes

static const TypeInfoWrapper proptype_bool
 
static const TypeInfoWrapper proptype_int
 
static const TypeInfoWrapper proptype_uint
 
static const TypeInfoWrapper proptype_double
 
static const TypeInfoWrapper proptype_Vec3d
 
static const TypeInfoWrapper proptype_Vec3f
 
static const TypeInfoWrapper proptype_Vec2d
 
static const TypeInfoWrapper proptype_Vec2f
 
static const TypeInfoWrapper proptype_Matrix3x3d
 
static const TypeInfoWrapper proptype_SkinWeights
 

Protected Attributes

std::vector< PROP_INFOpropList_
 

Private Types

typedef std::set< TypeInfoWrapperTYPE_INFO_SET
 

Static Private Attributes

static const TypeInfoWrapper prop_types []
 
static const TYPE_INFO_SET sane_prop_types
 

Detailed Description

Definition at line 54 of file PropertyNameListModel.hh.

Member Typedef Documentation

◆ TYPE_INFO_SET

typedef std::set<TypeInfoWrapper> PropertyNameListModel::TYPE_INFO_SET
private

Definition at line 222 of file PropertyNameListModel.hh.

Member Enumeration Documentation

◆ ENTITY_FILTER

enum PropertyNameListModel::ENTITY_FILTER

Definition at line 56 of file PropertyNameListModel.hh.

Constructor & Destructor Documentation

◆ PropertyNameListModel()

PropertyNameListModel::PropertyNameListModel ( QObject *  parent = 0)
explicit

Definition at line 117 of file PropertyNameListModel.cc.

◆ ~PropertyNameListModel()

PropertyNameListModel::~PropertyNameListModel ( )
virtual

Definition at line 121 of file PropertyNameListModel.cc.

Member Function Documentation

◆ data()

QVariant PropertyNameListModel::data ( const QModelIndex &  index,
int  role = Qt::DisplayRole 
) const
virtual

Definition at line 128 of file PropertyNameListModel.cc.

◆ entity2str()

const char * PropertyNameListModel::entity2str ( ENTITY_FILTER  entity)
static

Definition at line 101 of file PropertyNameListModel.cc.

◆ gatherProperties()

template<typename MeshT , typename OUTPUT_ITERATOR >
void PropertyNameListModel::gatherProperties ( MeshT mesh,
typename MeshT::prop_iterator  props_first,
typename MeshT::prop_iterator  props_last,
std::type_info *  typeIdFilter,
OUTPUT_ITERATOR  oit,
ENTITY_FILTER  entity 
)
inline

Definition at line 184 of file PropertyNameListModel.hh.

◆ headerData()

QVariant PropertyNameListModel::headerData ( int  section,
Qt::Orientation  orientation,
int  role = Qt::DisplayRole 
) const
virtual

Definition at line 137 of file PropertyNameListModel.cc.

◆ operator[]()

const PROP_INFO & PropertyNameListModel::operator[] ( size_t  index)
inline

Definition at line 202 of file PropertyNameListModel.hh.

◆ refresh()

template<typename MeshT >
void PropertyNameListModel::refresh ( MeshT mesh,
ENTITY_FILTER  entityFilterMask,
std::type_info *  typeIdFilter 
)
inline
Parameters
meshThe mesh to work on
entityFilterMaskFilter mask
typeIdFilterIf NULL, do not filter by type.

Definition at line 148 of file PropertyNameListModel.hh.

◆ rowCount()

int PropertyNameListModel::rowCount ( const QModelIndex &  parent = QModelIndex()) const
virtual

Definition at line 124 of file PropertyNameListModel.cc.

◆ tryInsertionsDeletions()

bool PropertyNameListModel::tryInsertionsDeletions ( std::vector< PROP_INFO > &  propList)

Implements an unsophisticated heuristic to translate the difference between propList and propList_ into a series of insertions and deletions.

Returns
True if such a sequence was found, false otherwise.

Definition at line 157 of file PropertyNameListModel.cc.

Member Data Documentation

◆ prop_types

const PropertyNameListModel::TypeInfoWrapper PropertyNameListModel::prop_types
staticprivate
Initial value:
= {
proptype_bool,
proptype_int,
proptype_uint,
proptype_double,
proptype_Vec3d,
proptype_Vec3f,
proptype_Vec2d,
proptype_Vec2f,
}

Definition at line 81 of file PropertyNameListModel.hh.

◆ propList_

std::vector<PROP_INFO> PropertyNameListModel::propList_
protected

Definition at line 207 of file PropertyNameListModel.hh.

◆ proptype_bool

const PropertyNameListModel::TypeInfoWrapper PropertyNameListModel::proptype_bool
static
Initial value:

Definition at line 210 of file PropertyNameListModel.hh.

◆ proptype_double

const PropertyNameListModel::TypeInfoWrapper PropertyNameListModel::proptype_double
static
Initial value:

Definition at line 213 of file PropertyNameListModel.hh.

◆ proptype_int

const PropertyNameListModel::TypeInfoWrapper PropertyNameListModel::proptype_int
static
Initial value:

Definition at line 211 of file PropertyNameListModel.hh.

◆ proptype_Matrix3x3d

const PropertyNameListModel::TypeInfoWrapper PropertyNameListModel::proptype_Matrix3x3d
static
Initial value:

Definition at line 218 of file PropertyNameListModel.hh.

◆ proptype_SkinWeights

const TypeInfoWrapper PropertyNameListModel::proptype_SkinWeights
static

Definition at line 219 of file PropertyNameListModel.hh.

◆ proptype_uint

const PropertyNameListModel::TypeInfoWrapper PropertyNameListModel::proptype_uint
static
Initial value:

Definition at line 212 of file PropertyNameListModel.hh.

◆ proptype_Vec2d

const PropertyNameListModel::TypeInfoWrapper PropertyNameListModel::proptype_Vec2d
static
Initial value:

Definition at line 216 of file PropertyNameListModel.hh.

◆ proptype_Vec2f

const PropertyNameListModel::TypeInfoWrapper PropertyNameListModel::proptype_Vec2f
static
Initial value:

Definition at line 217 of file PropertyNameListModel.hh.

◆ proptype_Vec3d

const PropertyNameListModel::TypeInfoWrapper PropertyNameListModel::proptype_Vec3d
static
Initial value:

Definition at line 214 of file PropertyNameListModel.hh.

◆ proptype_Vec3f

const PropertyNameListModel::TypeInfoWrapper PropertyNameListModel::proptype_Vec3f
static
Initial value:

Definition at line 215 of file PropertyNameListModel.hh.

◆ sane_prop_types

const PropertyNameListModel::TYPE_INFO_SET PropertyNameListModel::sane_prop_types
staticprivate

Definition at line 224 of file PropertyNameListModel.hh.


The documentation for this class was generated from the following files: