Fixes Drop Shadow Frustum Culling.
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / internal / text / rendering / atlas / atlas-glyph-manager-impl.cpp
index 001281e..3c21923 100644 (file)
@@ -81,13 +81,13 @@ void AtlasGlyphManager::Add( const Text::GlyphInfo& glyph,
 
 void AtlasGlyphManager::GenerateMeshData( uint32_t imageId,
                                           const Vector2& position,
-                                          MeshData& meshData )
+                                          Toolkit::AtlasManager::Mesh2D& mesh )
 {
-  mAtlasManager.GenerateMeshData( imageId, position, meshData );
+  mAtlasManager.GenerateMeshData( imageId, position, mesh );
 }
 
-void AtlasGlyphManager::StitchMesh( MeshData& first,
-                                    const MeshData& second )
+void AtlasGlyphManager::StitchMesh( Toolkit::AtlasManager::Mesh2D& first,
+                                    const Toolkit::AtlasManager::Mesh2D& second )
 {
   mAtlasManager.StitchMesh( first, second );
 }
@@ -108,10 +108,20 @@ void AtlasGlyphManager::Cached( Text::FontId fontId,
   slot.mImageId = 0;
 }
 
-void AtlasGlyphManager::SetAtlasSize( const Vector2& size,
-                                      const Vector2& blockSize )
+Vector2 AtlasGlyphManager::GetAtlasSize( uint32_t atlasId )
 {
-    mAtlasManager.SetAtlasSize( size, blockSize );
+  Toolkit::AtlasManager::AtlasSize size = mAtlasManager.GetAtlasSize( atlasId );
+  return Vector2( static_cast< float >( size.mWidth ), static_cast< float >( size.mHeight ) );
+}
+
+void AtlasGlyphManager::SetNewAtlasSize( uint32_t width, uint32_t height, uint32_t blockWidth, uint32_t blockHeight )
+{
+  Toolkit::AtlasManager::AtlasSize size;
+  size.mWidth = width;
+  size.mHeight = height;
+  size.mBlockWidth = blockWidth;
+  size.mBlockHeight = blockHeight;
+  mAtlasManager.SetNewAtlasSize( size );
 }
 
 void AtlasGlyphManager::Remove( uint32_t imageId )
@@ -134,6 +144,23 @@ Pixel::Format AtlasGlyphManager::GetPixelFormat( uint32_t atlasId )
   return mAtlasManager.GetPixelFormat( atlasId );
 }
 
+Material AtlasGlyphManager::GetMaterial( uint32_t atlasId ) const
+{
+  return mAtlasManager.GetMaterial( atlasId );
+}
+
+Sampler AtlasGlyphManager::GetSampler( uint32_t atlasId ) const
+{
+  return mAtlasManager.GetSampler( atlasId );
+}
+
+const Toolkit::AtlasGlyphManager::Metrics& AtlasGlyphManager::GetMetrics()
+{
+  mMetrics.mGlyphCount = mGlyphRecords.Size();
+  mAtlasManager.GetMetrics( mMetrics.mAtlasMetrics );
+  return mMetrics;
+}
+
 } // namespace Internal
 
 } // namespace Toolkit