projects
/
platform
/
core
/
uifw
/
dali-toolkit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge "Fixed crash issue by null reference" into devel/master
[platform/core/uifw/dali-toolkit.git]
/
dali-toolkit
/
internal
/
text
/
rendering
/
atlas
/
atlas-glyph-manager-impl.h
diff --git
a/dali-toolkit/internal/text/rendering/atlas/atlas-glyph-manager-impl.h
b/dali-toolkit/internal/text/rendering/atlas/atlas-glyph-manager-impl.h
index
3b2b8af
..
a2232f9
100644
(file)
--- a/
dali-toolkit/internal/text/rendering/atlas/atlas-glyph-manager-impl.h
+++ b/
dali-toolkit/internal/text/rendering/atlas/atlas-glyph-manager-impl.h
@@
-1,4
+1,3
@@
-
#ifndef __DALI_TOOLKIT_ATLAS_GLYPH_MANAGER_IMPL_H__
#define __DALI_TOOLKIT_ATLAS_GLYPH_MANAGER_IMPL_H__
#ifndef __DALI_TOOLKIT_ATLAS_GLYPH_MANAGER_IMPL_H__
#define __DALI_TOOLKIT_ATLAS_GLYPH_MANAGER_IMPL_H__
@@
-49,27
+48,29
@@
class AtlasGlyphManager : public Dali::BaseObject
{
public:
{
public:
- struct GlyphRecord
+ struct GlyphRecord
Entry
{
{
- Text::FontId mFontId;
Text::GlyphIndex mIndex;
uint32_t mImageId;
Text::GlyphIndex mIndex;
uint32_t mImageId;
+ int32_t mCount;
};
};
- AtlasGlyphManager();
-
- virtual ~AtlasGlyphManager();
+ struct FontGlyphRecord
+ {
+ Text::FontId mFontId;
+ Vector< GlyphRecordEntry > mGlyphRecords;
+ };
-/**
- *
Create a new AtlasGlyphManage
r
+
/**
+ *
@brief Constructo
r
*/
*/
-
static AtlasGlyphManagerPtr New
();
+
AtlasGlyphManager
();
/**
* @copydoc Toolkit::AtlasGlyphManager::Add
*/
void Add( const Text::GlyphInfo& glyph,
/**
* @copydoc Toolkit::AtlasGlyphManager::Add
*/
void Add( const Text::GlyphInfo& glyph,
- const
BufferImage
& bitmap,
+ const
PixelData
& bitmap,
Dali::Toolkit::AtlasManager::AtlasSlot& slot );
/**
Dali::Toolkit::AtlasManager::AtlasSlot& slot );
/**
@@
-80,17
+81,11
@@
public:
Toolkit::AtlasManager::Mesh2D& mesh );
/**
Toolkit::AtlasManager::Mesh2D& mesh );
/**
- * @copydoc Toolkit::AtlasGlyphManager::StitchMesh
- */
- void StitchMesh( Toolkit::AtlasManager::Mesh2D& first,
- const Toolkit::AtlasManager::Mesh2D& second );
-
- /**
- * @copydoc Toolkit::AtlasGlyphManager::Cached
+ * @copydoc Toolkit::AtlasGlyphManager::IsCached
*/
*/
-
void
Cached( Text::FontId fontId,
- Text::GlyphIndex index,
- Dali::Toolkit::AtlasManager::AtlasSlot& slot );
+
bool Is
Cached( Text::FontId fontId,
+
Text::GlyphIndex index,
+
Dali::Toolkit::AtlasManager::AtlasSlot& slot );
/**
* @copydoc Toolkit::AtlasGlyphManager::GetAtlasSize
/**
* @copydoc Toolkit::AtlasGlyphManager::GetAtlasSize
@@
-103,53
+98,37
@@
public:
void SetNewAtlasSize( uint32_t width, uint32_t height, uint32_t blockWidth, uint32_t blockHeight );
/**
void SetNewAtlasSize( uint32_t width, uint32_t height, uint32_t blockWidth, uint32_t blockHeight );
/**
- * @copydoc Toolkit::AtlasGlyphManager::Remove
- */
- void Remove( uint32_t imageId );
-
- /**
* @copydoc Toolkit::AtlasGlyphManager::GetPixelFormat
*/
Pixel::Format GetPixelFormat( uint32_t atlasId );
/**
* @copydoc Toolkit::AtlasGlyphManager::GetPixelFormat
*/
Pixel::Format GetPixelFormat( uint32_t atlasId );
/**
- * @copydoc
Toolkit::AtlasGlyphManager::GetMaterial
+ * @copydoc
toolkit::AtlasGlyphManager::AdjustReferenceCount
*/
*/
-
Material GetMaterial( uint32_t atlasId ) const
;
+
void AdjustReferenceCount( Text::FontId fontId, Text::GlyphIndex index, int32_t delta )
;
/**
/**
- * @copydoc Toolkit::AtlasGlyphManager::Get
Material
+ * @copydoc Toolkit::AtlasGlyphManager::Get
Textures
*/
*/
-
Sampler GetSampler
( uint32_t atlasId ) const;
+
TextureSet GetTextures
( uint32_t atlasId ) const;
/**
* @copydoc Toolkit::AtlasGlyphManager::GetMetrics
*/
const Toolkit::AtlasGlyphManager::Metrics& GetMetrics();
/**
* @copydoc Toolkit::AtlasGlyphManager::GetMetrics
*/
const Toolkit::AtlasGlyphManager::Metrics& GetMetrics();
- /**
- * @copydoc Toolkit::AtlasGlyphManager::GetEffectBufferShader
- */
- Shader GetEffectBufferShader() const
- {
- return mEffectBufferShader;
- }
+protected:
/**
/**
- *
@copydoc Toolkit::AtlasGlyphManager::GetGlyphShadowShader
+ *
A reference counted object may only be deleted by calling Unreference()
*/
*/
- Shader GetGlyphShadowShader() const
- {
- return mShadowShader;
- }
+ virtual ~AtlasGlyphManager();
private:
Dali::Toolkit::AtlasManager mAtlasManager; ///> Atlas Manager created by GlyphManager
private:
Dali::Toolkit::AtlasManager mAtlasManager; ///> Atlas Manager created by GlyphManager
- Vector< GlyphRecord > mGlyphRecords; ///> Cached glyph information
+ std::vector< FontGlyphRecord > mFontGlyphRecords;
Toolkit::AtlasGlyphManager::Metrics mMetrics; ///> Metrics to pass back on GlyphManager status
Toolkit::AtlasGlyphManager::Metrics mMetrics; ///> Metrics to pass back on GlyphManager status
- Shader mEffectBufferShader; ///> Shader used to render drop shadow buffer textures
- Shader mShadowShader; ///> Shader used to render drop shadow into buffer
};
} // namespace Internal
};
} // namespace Internal
@@
-176,5
+155,4
@@
inline Internal::AtlasGlyphManager& GetImplementation(Toolkit::AtlasGlyphManager
} // namespace Dali
} // namespace Dali
-
- #endif // __DALI_TOOLKIT_ATLAS_GLYPH_MANAGER_IMPL_H__
\ No newline at end of file
+#endif // __DALI_TOOLKIT_ATLAS_GLYPH_MANAGER_IMPL_H__