summaryrefslogtreecommitdiff
path: root/Build/source/libs/graphite2/graphite2-src/src/inc/FeatureMap.h
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/libs/graphite2/graphite2-src/src/inc/FeatureMap.h')
-rw-r--r--Build/source/libs/graphite2/graphite2-src/src/inc/FeatureMap.h20
1 files changed, 5 insertions, 15 deletions
diff --git a/Build/source/libs/graphite2/graphite2-src/src/inc/FeatureMap.h b/Build/source/libs/graphite2/graphite2-src/src/inc/FeatureMap.h
index fc845f6e165..9610c39a487 100644
--- a/Build/source/libs/graphite2/graphite2-src/src/inc/FeatureMap.h
+++ b/Build/source/libs/graphite2/graphite2-src/src/inc/FeatureMap.h
@@ -56,7 +56,6 @@ class FeatureRef
static const uint8 SIZEOF_CHUNK = sizeof(chunk_t)*8;
public:
- FeatureRef();
FeatureRef(const Face & face, unsigned short & bits_offset, uint32 max_val,
uint32 name, uint16 uiName, uint16 flags,
FeatureSetting *settings, uint16 num_set) throw();
@@ -76,14 +75,14 @@ public:
uint16 getSettingName(uint16 index) const { return m_nameValues[index].label(); }
int16 getSettingValue(uint16 index) const { return m_nameValues[index].value(); }
uint32 maxVal() const { return m_max; }
- const Face* getFace() const { return m_pFace;}
+ const Face & getFace() const { return m_face;}
const FeatureMap* getFeatureMap() const;// { return m_pFace;}
CLASS_NEW_DELETE;
private:
FeatureRef(const FeatureRef & rhs);
- const Face * m_pFace; //not NULL
+ const Face & m_face;
FeatureSetting * m_nameValues; // array of name table ids for feature values
chunk_t m_mask, // bit mask to get the value from the vector
m_max; // max value the value can take
@@ -99,27 +98,18 @@ private: //unimplemented
};
-inline
-FeatureRef::FeatureRef()
-: m_pFace(0), m_nameValues(0),
- m_mask(0), m_max(0), m_id(0),
- m_nameid(0), m_flags(0), m_numSet(0),
- m_bits(0), m_index(0)
-{
-}
-
class NameAndFeatureRef
{
public:
NameAndFeatureRef(uint32 name = 0) : m_name(name) , m_pFRef(NULL){}
- NameAndFeatureRef(const FeatureRef* p/*not NULL*/) : m_name(p->getId()), m_pFRef(p) {}
+ NameAndFeatureRef(FeatureRef const & p) : m_name(p.getId()), m_pFRef(&p) {}
bool operator<(const NameAndFeatureRef& rhs) const //orders by m_name
{ return m_name<rhs.m_name; }
CLASS_NEW_DELETE
-
+
uint32 m_name;
const FeatureRef* m_pFRef;
};
@@ -128,7 +118,7 @@ class FeatureMap
{
public:
FeatureMap() : m_numFeats(0), m_feats(NULL), m_pNamedFeats(NULL) {}
- ~FeatureMap() { delete [] m_feats; delete[] m_pNamedFeats; }
+ ~FeatureMap() { free(m_feats); delete[] m_pNamedFeats; }
bool readFeats(const Face & face);
const FeatureRef *findFeatureRef(uint32 name) const;