#define DALI_INTERNAL_SCENE_GRAPH_PROPERTY_BUFFER_DATA_PROVIDER_H
/*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
#include <string>
// INTERNAL INCLUDES
-#include <dali/integration-api/resource-declarations.h>
+#include <dali/public-api/object/property.h>
#include <dali/internal/common/buffer-index.h>
namespace Dali
}
/**
- * Check if the data has changed
- * @param[in] bufferIndex Index to access double buffered values
- * @return true if the data has changed
- */
- virtual bool HasDataChanged( BufferIndex bufferIndex ) const = 0;
-
- /**
* Get the number of attributes
* @param[in] bufferIndex Index to access double buffered values
* @return the number of attributes
virtual size_t GetAttributeSize( BufferIndex bufferIndex, unsigned int index ) const = 0;
/**
+ * Get the type of an attribute
+ * @param[in] bufferIndex Index to access double buffered values
+ * @param[in] index Index of the attribute
+ * @return the type of the attribute
+ */
+ virtual Property::Type GetAttributeType( BufferIndex bufferIndex, unsigned int index ) const = 0;
+
+ /**
* Get the byte offset of an attribute
* @param[in] bufferIndex Index to access double buffered values
* @param[in] index Index of the attribute
virtual unsigned int GetElementCount( BufferIndex bufferIndex ) const = 0;
/**
- * Get if of the GPU buffer associated with this propertyBuffer
+ * Get Id of the GPU buffer associated with this propertyBuffer
* @param[in] bufferIndex Index to access double buffered values
- * @return the element size in bytes
+ * @return the Id
*/
virtual unsigned int GetGpuBufferId( BufferIndex bufferIndex ) const = 0;
+ /**
+ * Checks if data in the PropertyBuffer has changed repect previous frame
+ * @param[in] bufferIndex Index to access double buffered values
+ * @return true if data has changed, false otherwise
+ */
+ virtual bool HasDataChanged( BufferIndex bufferIndex ) const = 0;
+
protected:
/**
* No deletion through this interface