#define DALI_INTERNAL_ATSPI_ACCESSIBILITY_IMPL_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <exception>
#include <functional>
#include <memory>
+#include <stdexcept>
#include <string>
#include <unordered_map>
#include <unordered_set>
#include <vector>
-#include <stdexcept>
//INTERNAL INCLUDES
#include <dali/devel-api/adaptor-framework/accessibility.h>
* object as direct ancestor of application and therefore make it visible for
* accessibility clients.
*/
- virtual void AddTopLevelWindow( Accessible* ) = 0;
+ virtual void AddTopLevelWindow(Accessible*) = 0;
/**
* @brief Removes top level window
* structure created from Actors objects. This method removes previously added
* window from visible accessibility objects.
*/
- virtual void RemoveTopLevelWindow( Accessible* ) = 0;
+ virtual void RemoveTopLevelWindow(Accessible*) = 0;
/**
* @brief Adds popup window
* Hierarchy of objects visible for accessibility clients is based on tree-like
* structure created from Actors objects. This method adds new popup to the tree.
*/
- virtual void AddPopup( Accessible* ) = 0;
+ virtual void AddPopup(Accessible*) = 0;
/**
* @brief Removes popup window
* structure created from Actors objects. This method removes previously added
* popup window.
*/
- virtual void RemovePopup( Accessible* ) = 0;
+ virtual void RemovePopup(Accessible*) = 0;
/**
* @brief Set name of current application which will be visible on accessibility bus
*/
- virtual void SetApplicationName( std::string ) = 0;
+ virtual void SetApplicationName(std::string) = 0;
/**
* @brief Get object being root of accessibility tree
*
* @return handler to accessibility object
*/
- virtual Accessible* FindByPath( const std::string& s) const = 0;
+ virtual Accessible* FindByPath(const std::string& s) const = 0;
/**
* @brief Show application on accessibility bus
*/
virtual ForceUpResult ForceUp()
{
- if( data )
+ if(data)
{
return ForceUpResult::ALREADY_UP;
}
- data = std::make_shared< Data >();
+ data = std::make_shared<Data>();
data->bridge = this;
return ForceUpResult::JUST_STARTED;
}
/**
* @brief Emits caret-moved event on at-spi bus.
**/
- virtual void EmitCaretMoved( Accessible* obj, unsigned int cursorPosition ) = 0;
+ virtual void EmitCaretMoved(Accessible* obj, unsigned int cursorPosition) = 0;
/**
* @brief Emits active-descendant-changed event on at-spi bus.
**/
- virtual void EmitActiveDescendantChanged( Accessible* obj, Accessible *child ) = 0;
+ virtual void EmitActiveDescendantChanged(Accessible* obj, Accessible* child) = 0;
/**
* @brief Emits text-changed event on at-spi bus.
**/
- virtual void EmitTextChanged( Accessible* obj, TextChangedState state, unsigned int position, unsigned int length, const std::string &content ) = 0;
+ virtual void EmitTextChanged(Accessible* obj, TextChangedState state, unsigned int position, unsigned int length, const std::string& content) = 0;
/**
* @brief Emits state-changed event on at-spi bus.
**/
- virtual void EmitStateChanged( Accessible* obj, State state, int val1, int val2 = 0 ) = 0;
+ virtual void EmitStateChanged(Accessible* obj, State state, int val1, int val2 = 0) = 0;
/**
* @brief Emits window event on at-spi bus.
**/
- virtual void Emit( Accessible* obj, WindowEvent we, unsigned int detail1 = 0 ) = 0;
+ virtual void Emit(Accessible* obj, WindowEvent we, unsigned int detail1 = 0) = 0;
/**
* @brief Emits property-changed event on at-spi bus.
**/
- virtual void Emit( Accessible* obj, ObjectPropertyChangeEvent event ) = 0;
+ virtual void Emit(Accessible* obj, ObjectPropertyChangeEvent event) = 0;
/**
* @brief Emits bounds-changed event on at-spi bus.
**/
- virtual void EmitBoundsChanged( Accessible* obj, Rect<> rect ) = 0;
+ virtual void EmitBoundsChanged(Accessible* obj, Rect<> rect) = 0;
/**
* @brief Emits key event on at-spi bus.
* Screen-reader might receive this event and reply, that given keycode is consumed. In that case
* further processing of the keycode should be ignored.
**/
- virtual Consumed Emit( KeyEventType type, unsigned int keyCode, const std::string& keyName, unsigned int timeStamp, bool isText ) = 0;
+ virtual Consumed Emit(KeyEventType type, unsigned int keyCode, const std::string& keyName, unsigned int timeStamp, bool isText) = 0;
/**
* @brief Reads given text by screen reader
* Callback can be one of the following signals:
* ReadingCancelled, ReadingStopped, ReadingSkipped
*/
- virtual void Say( const std::string& text, bool discardable, std::function<void(std::string)> callback ) = 0;
+ virtual void Say(const std::string& text, bool discardable, std::function<void(std::string)> callback) = 0;
/**
* @brief Force accessibility client to pause.
protected:
struct Data
{
- std::unordered_set< Accessible* > knownObjects;
- std::string busName;
- Bridge* bridge = nullptr;
- Actor highlightActor, currentlyHighlightedActor;
+ std::unordered_set<Accessible*> knownObjects;
+ std::string busName;
+ Bridge* bridge = nullptr;
+ Actor highlightActor, currentlyHighlightedActor;
};
- std::shared_ptr< Data > data;
+ std::shared_ptr<Data> data;
friend class Accessible;
/**
* might come and object will be identified by number id (it's memory address).
* To avoid memory corruption number id is checked against set of known objects.
**/
- void RegisterOnBridge( Accessible* );
+ void RegisterOnBridge(Accessible*);
/**
* @brief Tells bridge, that given object is considered root (doesn't have any parents).
* All root objects will have the same parent - application object. Application object
* is controlled by bridge and private.
**/
- void SetIsOnRootLevel( Accessible* );
+ void SetIsOnRootLevel(Accessible*);
};
/**
*/
inline bool IsUp()
{
- if( Bridge::GetCurrentBridge() == nullptr )
+ if(Bridge::GetCurrentBridge() == nullptr)
{
return false;
}
- if( Bridge::GetCurrentBridge()->GetIsEnabled() == false )
+ if(Bridge::GetCurrentBridge()->GetIsEnabled() == false)
{
return false;
}
* language to use. Word boundaries are returned as non-zero values in table breaks, which
* must be of size at least length.
**/
- void FindWordSeparationsUtf8( const utf8_t *s, size_t length, const char *language, char *breaks );
+ void FindWordSeparationsUtf8(const utf8_t* s, size_t length, const char* language, char* breaks);
/**
* @brief Calculaties line boundaries in given utf8 text.
* language to use. Line boundaries are returned as non-zero values in table breaks, which
* must be of size at least length.
**/
- void FindLineSeparationsUtf8( const utf8_t *s, size_t length, const char *language, char *breaks );
+ void FindLineSeparationsUtf8(const utf8_t* s, size_t length, const char* language, char* breaks);
/**
* @brief Helper function for emiting active-descendant-changed event
**/
- void EmitActiveDescendantChanged( Accessible* obj, Accessible *child );
+ void EmitActiveDescendantChanged(Accessible* obj, Accessible* child);
/**
* @brief Helper function for emiting state-changed event
**/
- void EmitStateChanged( State state, int newValue1, int newValue2 = 0 );
+ void EmitStateChanged(State state, int newValue1, int newValue2 = 0);
/**
* @brief Helper function for emiting bounds-changed event
**/
- void EmitBoundsChanged( Rect<> rect );
+ void EmitBoundsChanged(Rect<> rect);
/**
* @brief Emit "showing" event.
*
* @param[in] showing flag pointing if object is showing
*/
- void EmitShowing( bool showing );
+ void EmitShowing(bool showing);
/**
* @brief Emit "visible" event.
*
* @param[in] visible flag pointing if object is visible
*/
- void EmitVisible( bool visible );
+ void EmitVisible(bool visible);
/**
* @brief Emit "highlighted" event.
*
* @param[in] set flag pointing if object is highlighted
*/
- void EmitHighlighted( bool set );
+ void EmitHighlighted(bool set);
/**
* @brief Emit "focused" event.
*
* @param[in] set flag pointing if object is focused
*/
- void EmitFocused( bool set );
+ void EmitFocused(bool set);
/**
* @brief Emit "text inserted" event
* @param[in] length text length
* @param[in] content inserted text
*/
- void EmitTextInserted( unsigned int position, unsigned int length, const std::string &content );
+ void EmitTextInserted(unsigned int position, unsigned int length, const std::string& content);
/**
* @brief Emit "text deleted" event
* @param[in] length text length
* @param[in] content deleted text
*/
- void EmitTextDeleted( unsigned int position, unsigned int length, const std::string &content );
+ void EmitTextDeleted(unsigned int position, unsigned int length, const std::string& content);
/**
* @brief Emit "caret moved" event
*
* @param[in] cursorPosition new caret position
*/
- void EmitTextCaretMoved( unsigned int cursorPosition );
+ void EmitTextCaretMoved(unsigned int cursorPosition);
/**
* @brief Emit "highlighted" event
* @param[in] we enumerated window event
* @param[in] detail1 additional parameter which interpretation depends on chosen event
*/
- void Emit( WindowEvent we, unsigned int detail1 = 0 );
+ void Emit(WindowEvent we, unsigned int detail1 = 0);
/**
* @brief Emits property-changed event
* @param[in] event Property changed event
**/
- void Emit( ObjectPropertyChangeEvent event );
+ void Emit(ObjectPropertyChangeEvent event);
/**
* @brief Get accessibility name
*
* @return collection of accessibility objects
*/
- virtual std::vector< Accessible* > GetChildren();
+ virtual std::vector<Accessible*> GetChildren();
/**
* @brief Get nth child
*
* @return accessibility object
*/
- virtual Accessible* GetChildAtIndex( size_t index ) = 0;
+ virtual Accessible* GetChildAtIndex(size_t index) = 0;
/**
* @brief Get index that current object has in its parent's children collection
*
* @see Dali::Accessibility::GestureInfo
*/
- virtual bool DoGesture(const GestureInfo &gestureInfo) = 0;
+ virtual bool DoGesture(const GestureInfo& gestureInfo) = 0;
/**
* @brief Re-emits selected states of an Accessibility Object
* @param[in] states chosen states to re-emit
* @param[in] doRecursive if true all children of the Accessibility Object will also re-emit the states
*/
- void NotifyAccessibilityStateChange( Dali::Accessibility::States states, bool doRecursive );
+ void NotifyAccessibilityStateChange(Dali::Accessibility::States states, bool doRecursive);
/**
* @brief Get information about current object and all relations that connects
*
* @return collection of strings with implemented interfaces
*/
- std::vector< std::string > GetInterfaces();
+ std::vector<std::string> GetInterfaces();
/**
* @brief Check if object is on root level
*/
- bool GetIsOnRootLevel() const { return isOnRootLevel; }
+ bool GetIsOnRootLevel() const
+ {
+ return isOnRootLevel;
+ }
/**
* @brief The method registers functor resposible for converting Actor into Accessible
* @param functor returning Accessible handle from Actor object
*/
- static void RegisterControlAccessibilityGetter( std::function< Accessible*( Dali::Actor ) > functor);
+ static void RegisterControlAccessibilityGetter(std::function<Accessible*(Dali::Actor)> functor);
/**
* @brief Acquire Accessible object from Actor object
*
* @return handle to Accessible object
*/
- static Accessible* Get( Dali::Actor actor, bool root = false );
+ static Accessible* Get(Dali::Actor actor, bool root = false);
protected:
Accessible();
- Accessible( const Accessible& ) = delete;
- Accessible( Accessible&& ) = delete;
- Accessible& operator=( const Accessible& ) = delete;
- Accessible& operator=( Accessible&& ) = delete;
- std::shared_ptr< Bridge::Data > GetBridgeData();
+ Accessible(const Accessible&) = delete;
+ Accessible(Accessible&&) = delete;
+ Accessible& operator=(const Accessible&) = delete;
+ Accessible& operator=(Accessible&&) = delete;
+ std::shared_ptr<Bridge::Data> GetBridgeData();
public:
static Dali::Actor GetHighlightActor();
- static void SetHighlightActor(Dali::Actor actor);
+ static void SetHighlightActor(Dali::Actor actor);
static Dali::Actor GetCurrentlyHighlightedActor();
- static void SetCurrentlyHighlightedActor(Dali::Actor);
- static void SetObjectRegistry(ObjectRegistry registry);
+ static void SetCurrentlyHighlightedActor(Dali::Actor);
+ static void SetObjectRegistry(ObjectRegistry registry);
private:
friend class Bridge;
- std::weak_ptr< Bridge::Data > bridgeData;
- bool isOnRootLevel = false;
+ std::weak_ptr<Bridge::Data> bridgeData;
+ bool isOnRootLevel = false;
};
/**
*
* @return string with name of action
*/
- virtual std::string GetActionName( size_t index ) = 0;
+ virtual std::string GetActionName(size_t index) = 0;
/**
* @brief Get translated name of action with given index
*
* @note translation is not supported in this version
*/
- virtual std::string GetLocalizedActionName( size_t index ) = 0;
+ virtual std::string GetLocalizedActionName(size_t index) = 0;
/**
* @brief Get description of action with given index
*
* @return string with description of action
*/
- virtual std::string GetActionDescription( size_t index ) = 0;
+ virtual std::string GetActionDescription(size_t index) = 0;
/**
* @brief Get key code binded to action with given index
*
* @return string with key name
*/
- virtual std::string GetActionKeyBinding( size_t index ) = 0;
+ virtual std::string GetActionKeyBinding(size_t index) = 0;
/**
* @brief Get number of provided actions
*
* @return true on success, false otherwise
*/
- virtual bool DoAction( size_t index ) = 0;
+ virtual bool DoAction(size_t index) = 0;
/**
* @brief Perform an action with given name
*
* @return true on success, false otherwise
*/
- virtual bool DoAction( const std::string& name ) = 0;
-
+ virtual bool DoAction(const std::string& name) = 0;
};
/**
*
* @see Dali::Rect
*/
- virtual Rect<> GetExtents( CoordType ctype ) = 0;
+ virtual Rect<> GetExtents(CoordType ctype) = 0;
/**
* @brief Get layer current object is localized on
*
* @see Dali::Accessibility::Point
*/
- virtual Accessible* GetAccessibleAtPoint( Point p, CoordType ctype );
+ virtual Accessible* GetAccessibleAtPoint(Point p, CoordType ctype);
/**
* @brief Check if current object contains given point
*
* @see Dali::Accessibility::Point
*/
- virtual bool Contains( Point p, CoordType ctype );
+ virtual bool Contains(Point p, CoordType ctype);
};
/**
*
* @return true if value could have been assigned, false otherwise
*/
- virtual bool SetCurrent( double val) = 0;
+ virtual bool SetCurrent(double val) = 0;
/**
* @brief Get the lowest increment that can be distinguished
*
* @return substring of stored text
*/
- virtual std::string GetText( size_t startOffset, size_t endOffset ) = 0;
+ virtual std::string GetText(size_t startOffset, size_t endOffset) = 0;
/**
* @brief Get number of all stored characters
*
* @see Dali::Accessibility::Range
*/
- virtual Range GetTextAtOffset( size_t offset, TextBoundary boundary ) = 0;
+ virtual Range GetTextAtOffset(size_t offset, TextBoundary boundary) = 0;
/**
* @brief Get selected text
*
* @see Dali::Accessibility::Range
*/
- virtual Range GetSelection( size_t selectionNum ) = 0;
+ virtual Range GetSelection(size_t selectionNum) = 0;
/**
* @brief Remove selection
*
* @return bool on success, false otherwise
*/
- virtual bool RemoveSelection( size_t selectionNum ) = 0;
+ virtual bool RemoveSelection(size_t selectionNum) = 0;
/**
* @brief Get selected text
*
* @return true on success, false otherwise
*/
- virtual bool SetSelection( size_t selectionNum, size_t startOffset, size_t endOffset ) = 0;
+ virtual bool SetSelection(size_t selectionNum, size_t startOffset, size_t endOffset) = 0;
};
/**
*
* @return true on success, false otherwise
*/
- virtual bool CopyText( size_t startPosition, size_t endPosition ) = 0;
+ virtual bool CopyText(size_t startPosition, size_t endPosition) = 0;
/**
* @brief Cut text in range to system clipboard
*
* @return true on success, false otherwise
*/
- virtual bool CutText( size_t startPosition, size_t endPosition ) = 0;
+ virtual bool CutText(size_t startPosition, size_t endPosition) = 0;
};
/**
{
public:
EmptyAccessibleWithAddress() = default;
- EmptyAccessibleWithAddress( Address address ) : address( std::move( address ) ) {}
+ EmptyAccessibleWithAddress(Address address)
+ : address(std::move(address))
+ {
+ }
- void SetAddress( Address address ) { this->address = std::move( address ); }
+ void SetAddress(Address address)
+ {
+ this->address = std::move(address);
+ }
- std::string GetName() override { return ""; }
- std::string GetDescription() override { return ""; }
- Accessible* GetParent() override { return nullptr; }
- size_t GetChildCount() override { return 0; }
- std::vector< Accessible* > GetChildren() override { return {}; }
- Accessible* GetChildAtIndex( size_t index ) override
+ std::string GetName() override
{
- throw std::domain_error{"out of bounds index (" + std::to_string( index ) + ") - no children"};
+ return "";
+ }
+ std::string GetDescription() override
+ {
+ return "";
+ }
+ Accessible* GetParent() override
+ {
+ return nullptr;
+ }
+ size_t GetChildCount() override
+ {
+ return 0;
+ }
+ std::vector<Accessible*> GetChildren() override
+ {
+ return {};
+ }
+ Accessible* GetChildAtIndex(size_t index) override
+ {
+ throw std::domain_error{"out of bounds index (" + std::to_string(index) + ") - no children"};
+ }
+ size_t GetIndexInParent() override
+ {
+ return static_cast<size_t>(-1);
+ }
+ Role GetRole() override
+ {
+ return {};
}
- size_t GetIndexInParent() override { return static_cast< size_t >( -1 ); }
- Role GetRole() override { return {}; }
std::string GetRoleName() override;
- States GetStates() override { return {}; }
- Attributes GetAttributes() override { return {}; }
+ States GetStates() override
+ {
+ return {};
+ }
+ Attributes GetAttributes() override
+ {
+ return {};
+ }
Address GetAddress() override
{
return address;
}
- bool DoGesture(const GestureInfo &gestureInfo) override
+ bool DoGesture(const GestureInfo& gestureInfo) override
{
return false;
}
Address address;
};
-}
-}
+} // namespace Accessibility
+} // namespace Dali
#endif // DALI_INTERNAL_ATSPI_ACCESSIBILITY_IMPL_H
#ifndef DALI_ATSPI_ACCESSIBILITY_H\r
#define DALI_ATSPI_ACCESSIBILITY_H\r
/*\r
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.\r
+ * Copyright (c) 2021 Samsung Electronics Co., Ltd.\r
*\r
* Licensed under the Apache License, Version 2.0 (the "License");\r
* you may not use this file except in compliance with the License.\r
\r
// EXTERNAL INCLUDES\r
\r
+#include <string.h>\r
#include <array>\r
#include <atomic>\r
#include <bitset>\r
+#include <cassert>\r
#include <exception>\r
#include <functional>\r
+#include <list>\r
+#include <map>\r
#include <memory>\r
+#include <sstream>\r
#include <string>\r
-#include <map>\r
#include <unordered_map>\r
#include <vector>\r
-#include <list>\r
-#include <cassert>\r
-#include <sstream>\r
-#include <string.h>\r
\r
// INTERNAL INCLUDES\r
#include <dali/public-api/dali-adaptor-common.h>\r
{\r
namespace Accessibility\r
{\r
-\r
/**\r
* @brief Enumeration describing a relation between accessible objects\r
* 1 to 0..N relation model is supported. By default relation is not symmetrical.\r
*/\r
enum class RelationType : uint32_t\r
{\r
- NULL_OF, ///< Null Relation.\r
- LABEL_FOR, ///< Label For.\r
- LABELLED_BY, ///< Labelled By.\r
- CONTROLLER_FOR, ///< Controller For.\r
- CONTROLLED_BY, ///< Controlled By.\r
- MEMBER_OF, ///< Member Of.\r
- TOOLTIP_FOR, ///< ToolTip For.\r
- NODE_CHILD_OF, ///< Node Child Of.\r
- NODE_PARENT_OF, ///< Node Parent Of.\r
- EXTENDED, ///< Extended.\r
- FLOWS_TO, ///< Flows To.\r
- FLOWS_FROM, ///< Flows From.\r
- SUBWINDOW_OF, ///< Sub Window Of.\r
- EMBEDS, ///< Embeds.\r
- EMBEDDED_BY, ///< Embedded By.\r
- POPUP_FOR, ///< Popup For\r
+ NULL_OF, ///< Null Relation.\r
+ LABEL_FOR, ///< Label For.\r
+ LABELLED_BY, ///< Labelled By.\r
+ CONTROLLER_FOR, ///< Controller For.\r
+ CONTROLLED_BY, ///< Controlled By.\r
+ MEMBER_OF, ///< Member Of.\r
+ TOOLTIP_FOR, ///< ToolTip For.\r
+ NODE_CHILD_OF, ///< Node Child Of.\r
+ NODE_PARENT_OF, ///< Node Parent Of.\r
+ EXTENDED, ///< Extended.\r
+ FLOWS_TO, ///< Flows To.\r
+ FLOWS_FROM, ///< Flows From.\r
+ SUBWINDOW_OF, ///< Sub Window Of.\r
+ EMBEDS, ///< Embeds.\r
+ EMBEDDED_BY, ///< Embedded By.\r
+ POPUP_FOR, ///< Popup For\r
PARENT_WINDOW_OF, ///< Parent Window Of.\r
- DESCRIPTION_FOR, ///< Description For.\r
- DESCRIBED_BY, ///< Described By.\r
- DETAILS, ///< Details.\r
- DETAILS_FOR, ///< Details For.\r
- ERROR_MESSAGE, ///< Error Message.\r
- ERROR_FOR, ///< Error For.\r
+ DESCRIPTION_FOR, ///< Description For.\r
+ DESCRIBED_BY, ///< Described By.\r
+ DETAILS, ///< Details.\r
+ DETAILS_FOR, ///< Details For.\r
+ ERROR_MESSAGE, ///< Error Message.\r
+ ERROR_FOR, ///< Error For.\r
MAX_COUNT\r
};\r
\r
enum class CoordType\r
{\r
SCREEN, ///< Screen.\r
- WINDOW ///< Window.\r
+ WINDOW ///< Window.\r
};\r
\r
/**\r
*/\r
enum class ComponentLayer\r
{\r
- INVALID, ///< Invalid.\r
+ INVALID, ///< Invalid.\r
BACKGROUND, ///< Background.\r
- CANVAS, ///< Canvas.\r
- WIDGET, ///< Widget.\r
- MDI, ///< MDI.\r
- POPUP, ///< Popup.\r
- OVERLAY, ///< Overlay.\r
- WINDOW, ///< Window.\r
+ CANVAS, ///< Canvas.\r
+ WIDGET, ///< Widget.\r
+ MDI, ///< MDI.\r
+ POPUP, ///< Popup.\r
+ OVERLAY, ///< Overlay.\r
+ WINDOW, ///< Window.\r
MAX_COUNT\r
};\r
\r
enum class TextBoundary : uint32_t\r
{\r
CHARACTER, ///> Only one character is acquired.\r
- WORD, ///> Not supported.\r
- SENTENCE, ///> Not supported.\r
- LINE, ///> Not supported.\r
+ WORD, ///> Not supported.\r
+ SENTENCE, ///> Not supported.\r
+ LINE, ///> Not supported.\r
PARAGRAPH, ///> Not supported.\r
MAX_COUNT\r
};\r
* @see Dali::Accessibility::Accessible::GetStates\r
* @see Dali::Accessibility::Accessible::GetRoles\r
*/\r
-template < size_t I, typename S >\r
+template<size_t I, typename S>\r
class BitSets\r
{\r
- std::array< uint32_t, I > data;\r
+ std::array<uint32_t, I> data;\r
\r
void _set()\r
{\r
return true;\r
}\r
\r
- template < typename T > static constexpr bool _accepts()\r
+ template<typename T>\r
+ static constexpr bool _accepts()\r
{\r
- return std::is_enum< T >::value;\r
+ return std::is_enum<T>::value;\r
}\r
\r
- template < typename T, typename T2, typename ... ARGS > static constexpr bool _accepts()\r
+ template<typename T, typename T2, typename... ARGS>\r
+ static constexpr bool _accepts()\r
{\r
- return std::is_enum< T >::value && _accepts< T2, ARGS... >();\r
+ return std::is_enum<T>::value && _accepts<T2, ARGS...>();\r
}\r
\r
- template < typename T, typename ... ARGS > void _set(T t, ARGS ... args)\r
+ template<typename T, typename... ARGS>\r
+ void _set(T t, ARGS... args)\r
{\r
(*this)[t] = true;\r
_set(args...);\r
}\r
+\r
public:\r
BitSets()\r
{\r
- for( auto& u : data )\r
+ for(auto& u : data)\r
{\r
u = 0;\r
}\r
}\r
BitSets(const BitSets&) = default;\r
- BitSets(BitSets&&) = default;\r
+ BitSets(BitSets&&) = default;\r
\r
- template < typename T, typename ... ARGS, typename std::enable_if< _accepts< T, ARGS... >() >::type * = nullptr >BitSets( T t, ARGS ... args )\r
+ template<typename T, typename... ARGS, typename std::enable_if<_accepts<T, ARGS...>()>::type* = nullptr>\r
+ BitSets(T t, ARGS... args)\r
{\r
- for( auto& u : data )\r
- u = 0;\r
- _set( t, args... );\r
+ for(auto& u : data)\r
+ u = 0;\r
+ _set(t, args...);\r
}\r
\r
- explicit BitSets( std::array< uint32_t, I > d )\r
+ explicit BitSets(std::array<uint32_t, I> d)\r
{\r
- for( auto i = 0u; i < I; ++i )\r
+ for(auto i = 0u; i < I; ++i)\r
{\r
data[i] = d[i];\r
}\r
}\r
\r
- explicit BitSets( std::array< int32_t, I > d )\r
+ explicit BitSets(std::array<int32_t, I> d)\r
{\r
- for( auto i = 0u; i < I; ++i )\r
+ for(auto i = 0u; i < I; ++i)\r
{\r
- data[i] = static_cast<uint32_t>( d[i] );\r
+ data[i] = static_cast<uint32_t>(d[i]);\r
}\r
}\r
\r
- BitSets& operator = (const BitSets&) = default;\r
- BitSets& operator = (BitSets&&) = default;\r
+ BitSets& operator=(const BitSets&) = default;\r
+ BitSets& operator=(BitSets&&) = default;\r
\r
struct reference\r
{\r
- std::array< uint32_t, I >& data;\r
- size_t pos;\r
+ std::array<uint32_t, I>& data;\r
+ size_t pos;\r
\r
- reference& operator=( reference r )\r
+ reference& operator=(reference r)\r
{\r
- (*this) = static_cast<bool>( r );\r
+ (*this) = static_cast<bool>(r);\r
return *this;\r
}\r
\r
- reference& operator=( bool v )\r
+ reference& operator=(bool v)\r
{\r
- if( v )\r
+ if(v)\r
{\r
data[pos / 32] |= 1 << (pos & 31);\r
}\r
\r
operator bool() const\r
{\r
- auto i = static_cast<size_t>( pos );\r
+ auto i = static_cast<size_t>(pos);\r
return (data[i / 32] & (1 << (i & 31))) != 0;\r
}\r
};\r
\r
- reference operator[]( S index )\r
+ reference operator[](S index)\r
{\r
- return { data, static_cast<size_t>( index ) };\r
+ return {data, static_cast<size_t>(index)};\r
}\r
\r
- bool operator[]( S index ) const\r
+ bool operator[](S index) const\r
{\r
- auto i = static_cast<size_t>( index );\r
- return ( data[i / 32] & ( 1 << (i & 31) ) ) != 0;\r
+ auto i = static_cast<size_t>(index);\r
+ return (data[i / 32] & (1 << (i & 31))) != 0;\r
}\r
\r
- std::array< uint32_t, I > GetRawData() const\r
+ std::array<uint32_t, I> GetRawData() const\r
{\r
return data;\r
}\r
\r
- BitSets operator|( BitSets b ) const\r
+ BitSets operator|(BitSets b) const\r
{\r
BitSets r;\r
- for( auto i = 0u; i < I; ++i )\r
+ for(auto i = 0u; i < I; ++i)\r
{\r
r.data[i] = data[i] | b.data[i];\r
}\r
return r;\r
}\r
\r
- BitSets operator^( BitSets b ) const\r
+ BitSets operator^(BitSets b) const\r
{\r
BitSets r;\r
- for( auto i = 0u; i < I; ++i )\r
+ for(auto i = 0u; i < I; ++i)\r
{\r
r.data[i] = data[i] ^ b.data[i];\r
}\r
return r;\r
}\r
\r
- BitSets operator&( BitSets b ) const\r
+ BitSets operator&(BitSets b) const\r
{\r
BitSets r;\r
- for( auto i = 0u; i < I; ++i )\r
+ for(auto i = 0u; i < I; ++i)\r
{\r
r.data[i] = data[i] & b.data[i];\r
}\r
return r;\r
}\r
\r
- bool operator==( BitSets b ) const\r
+ bool operator==(BitSets b) const\r
{\r
- for( auto i = 0u; i < I; ++i )\r
+ for(auto i = 0u; i < I; ++i)\r
{\r
- if( data[i] != b.data[i] )\r
+ if(data[i] != b.data[i])\r
{\r
return false;\r
}\r
\r
explicit operator bool() const\r
{\r
- for( auto& u : data )\r
+ for(auto& u : data)\r
{\r
- if( u )\r
+ if(u)\r
{\r
return true;\r
}\r
};\r
\r
using ReadingInfoTypes = BitSets<1, ReadingInfoType>;\r
-using States = BitSets< 2, State >;\r
-using Attributes = std::unordered_map< std::string, std::string >;\r
+using States = BitSets<2, State>;\r
+using Attributes = std::unordered_map<std::string, std::string>;\r
\r
/**\r
* @brief Class representing unique object address on accessibility bus\r
public:\r
Address() = default;\r
\r
- Address( std::string bus, std::string path )\r
+ Address(std::string bus, std::string path)\r
: mBus(std::move(bus)),\r
mPath(std::move(path))\r
{\r
return mPath;\r
}\r
\r
- bool operator == ( const Address& a ) const\r
+ bool operator==(const Address& a) const\r
{\r
return mBus == a.mBus && mPath == a.mPath;\r
}\r
\r
- bool operator != ( const Address& a ) const\r
+ bool operator!=(const Address& a) const\r
{\r
return !(*this == a);\r
}\r
\r
Point() = default;\r
\r
- Point( int x, int y )\r
+ Point(int x, int y)\r
: x(x),\r
y(y)\r
{\r
*/\r
struct DALI_ADAPTOR_API Size\r
{\r
- int width = 0;\r
+ int width = 0;\r
int height = 0;\r
\r
Size() = default;\r
{\r
}\r
\r
- bool operator==( Size p ) const\r
+ bool operator==(Size p) const\r
{\r
return width == p.width && height == p.height;\r
}\r
\r
- bool operator!=( Size p ) const\r
+ bool operator!=(Size p) const\r
{\r
return !(*this == p);\r
}\r
*/\r
struct DALI_ADAPTOR_API Range\r
{\r
- int32_t startOffset = 0;\r
- int32_t endOffset = 0;\r
+ int32_t startOffset = 0;\r
+ int32_t endOffset = 0;\r
std::string content;\r
\r
Range() = default;\r
{\r
}\r
\r
- Gesture type{};\r
- int32_t xBeg{};\r
- int32_t xEnd{};\r
- int32_t yBeg{};\r
- int32_t yEnd{};\r
+ Gesture type{};\r
+ int32_t xBeg{};\r
+ int32_t xEnd{};\r
+ int32_t yBeg{};\r
+ int32_t yEnd{};\r
GestureState state{};\r
- uint32_t eventTime{};\r
+ uint32_t eventTime{};\r
};\r
\r
/**\r
*/\r
struct DALI_ADAPTOR_API Relation\r
{\r
-Relation(RelationType relationType, std::vector<Address> targets)\r
-: relationType(relationType),\r
- targets(targets)\r
-{\r
-}\r
+ Relation(RelationType relationType, std::vector<Address> targets)\r
+ : relationType(relationType),\r
+ targets(targets)\r
+ {\r
+ }\r
\r
-RelationType relationType;\r
-std::vector<Address> targets;\r
+ RelationType relationType;\r
+ std::vector<Address> targets;\r
};\r
\r
} // namespace Accessibility\r
#define DALI_GL_WINDOW_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <string>
+#include <dali/public-api/adaptor-framework/window-enumerations.h>
#include <dali/public-api/math/rect.h>
#include <dali/public-api/math/uint-16-pair.h>
#include <dali/public-api/math/vector2.h>
#include <dali/public-api/math/vector4.h>
-#include <dali/public-api/object/base-handle.h>
#include <dali/public-api/object/any.h>
+#include <dali/public-api/object/base-handle.h>
#include <dali/public-api/signals/dali-signal.h>
-#include <dali/public-api/adaptor-framework/window-enumerations.h>
+#include <string>
// INTERNAL INCLUDES
#include <dali/public-api/dali-adaptor-common.h>
{
class GlWindow;
}
-}
+} // namespace DALI_INTERNAL
class TouchEvent;
class KeyEvent;
class DALI_ADAPTOR_API GlWindow : public BaseHandle
{
public:
+ using WindowSize = Uint16Pair;
- using WindowSize = Uint16Pair ;
-
- typedef Signal< void ( const KeyEvent& ) > KeyEventSignalType; ///< GlWindow Key Event signal type
- typedef Signal< void ( const TouchEvent& ) > TouchEventSignalType; ///< GlWindow Touch Event signal type
- typedef Signal< void ( GlWindow, bool ) > FocusChangeSignalType; ///< GlWindow Focus signal type
- typedef Signal< void ( WindowSize ) > ResizeSignalType; ///< GlWindow resize signal type
- typedef Signal< void ( GlWindow, bool ) > VisibilityChangedSignalType; ///< GlWindow visibility change signal type
+ typedef Signal<void(const KeyEvent&)> KeyEventSignalType; ///< GlWindow Key Event signal type
+ typedef Signal<void(const TouchEvent&)> TouchEventSignalType; ///< GlWindow Touch Event signal type
+ typedef Signal<void(GlWindow, bool)> FocusChangeSignalType; ///< GlWindow Focus signal type
+ typedef Signal<void(WindowSize)> ResizeSignalType; ///< GlWindow resize signal type
+ typedef Signal<void(GlWindow, bool)> VisibilityChangedSignalType; ///< GlWindow visibility change signal type
public:
-
// Enumerations
/**
*/
enum class GlesVersion
{
- VERSION_2_0 = 0, ///< GLES version 2.0
- VERSION_3_0, ///< GLES version 3.0
+ VERSION_2_0 = 0, ///< GLES version 2.0
+ VERSION_3_0, ///< GLES version 3.0
};
/**
*/
enum class RenderingMode
{
- CONTINUOUS, ///< continuous mode
- ON_DEMAND ///< on demand by application
+ CONTINUOUS, ///< continuous mode
+ ON_DEMAND ///< on demand by application
};
/**
* @note This creates an extra GlWindow in addition to the default main GlWindow
* @return A new GlWindow
*/
- static GlWindow New( PositionSize positionSize, const std::string& name, const std::string& className, bool isTransparent = false );
+ static GlWindow New(PositionSize positionSize, const std::string& name, const std::string& className, bool isTransparent = false);
/**
* @brief Creates an uninitialized handle.
*/
GlWindow& operator=(const GlWindow& rhs);
- /**
+ /**
* @brief Move constructor.
*
* @param[in] rhs A reference to the moved handle
* @param[in] version the GLES version
*
*/
- void SetEglConfig( bool depth, bool stencil, int msaa, GlesVersion version );
+ void SetEglConfig(bool depth, bool stencil, int msaa, GlesVersion version);
/**
* @brief Raises GlWindow to the top of GlWindow stack.
*
* @param[in] positionSize The new GlWindow position
*/
- void SetPositionSize( PositionSize positionSize );
+ void SetPositionSize(PositionSize positionSize);
/**
* @brief Gets a position of the GlWindow.
* @note The window auxiliary hint is the value which is used to decide which actions should be made available to the user by the window manager.
* If you want to set specific hint to your window, then you should check whether it exists in the supported auxiliary hints.
*/
- std::string GetSupportedAuxiliaryHint( unsigned int index ) const;
+ std::string GetSupportedAuxiliaryHint(unsigned int index) const;
/**
* @brief Creates an auxiliary hint of the window.
* @param[in] value The value string.
* @return The ID of created auxiliary hint, or @c 0 on failure.
*/
- unsigned int AddAuxiliaryHint( const std::string& hint, const std::string& value );
+ unsigned int AddAuxiliaryHint(const std::string& hint, const std::string& value);
/**
* @brief Removes an auxiliary hint of the window.
* @param[in] id The ID of the auxiliary hint.
* @return True if no error occurred, false otherwise.
*/
- bool RemoveAuxiliaryHint( unsigned int id );
+ bool RemoveAuxiliaryHint(unsigned int id);
/**
* @brief Changes a value of the auxiliary hint.
* @param[in] value The value string to be set.
* @return True if no error occurred, false otherwise.
*/
- bool SetAuxiliaryHintValue( unsigned int id, const std::string& value );
+ bool SetAuxiliaryHintValue(unsigned int id, const std::string& value);
/**
* @brief Gets a value of the auxiliary hint.
* @param[in] id The auxiliary hint ID.
* @return The string value of the auxiliary hint ID, or an empty string if none exists.
*/
- std::string GetAuxiliaryHintValue( unsigned int id ) const;
+ std::string GetAuxiliaryHintValue(unsigned int id) const;
/**
* @brief Gets a ID of the auxiliary hint string.
* @param[in] hint The auxiliary hint string.
* @return The ID of the auxiliary hint string, or @c 0 if none exists.
*/
- unsigned int GetAuxiliaryHintId( const std::string& hint ) const;
+ unsigned int GetAuxiliaryHintId(const std::string& hint) const;
/**
* @brief Sets a region to accept input events.
*
* @param[in] inputRegion The region to accept input events.
*/
- void SetInputRegion( const Rect< int >& inputRegion );
+ void SetInputRegion(const Rect<int>& inputRegion);
/**
* @brief Sets a transparent window's visual state to opaque.
* @remarks This will have no effect on an opaque window.
* It doesn't change transparent window to opaque window but lets the window manager know the visual state of the window.
*/
- void SetOpaqueState( bool opaque );
+ void SetOpaqueState(bool opaque);
/**
* @brief Returns whether a transparent window's visual state is opaque or not.
*
* @return The current GlWindow rotation angle if previously set, or none
*/
- WindowOrientation GetCurrentOrientation() const;
+ WindowOrientation GetCurrentOrientation() const;
- /**
+ /**
* @brief Sets available orientations of the window.
*
* This API is for setting several orientations one time.
*
* @param[in] orientations The available orientations list to add
*/
- void SetAvailableOrientations( const Dali::Vector<WindowOrientation>& orientations );
+ void SetAvailableOrientations(const Dali::Vector<WindowOrientation>& orientations);
/**
* @brief Sets a preferred orientation.
*
* @note To unset the preferred orientation, angle should be set NO_ORIENTATION_PREFERENCE.
*/
- void SetPreferredOrientation( WindowOrientation orientation );
+ void SetPreferredOrientation(WindowOrientation orientation);
/**
* @brief Registers a GL callback function for application.
* @endcode
* This callback is called when GlWindow is deleted.
*/
- void RegisterGlCallback( CallbackBase* initCallback, CallbackBase* renderFrameCallback, CallbackBase* terminateCallback );
+ void RegisterGlCallback(CallbackBase* initCallback, CallbackBase* renderFrameCallback, CallbackBase* terminateCallback);
/**
* @brief Renders once more even if GL render functions are not added to idler.
* @note The default Rendering mode is continuous.
* If OnDemand mode is set, it is rendered by RenderOnce()
*/
- void SetRenderingMode( RenderingMode mode );
+ void SetRenderingMode(RenderingMode mode);
/**
* @brief Gets rendering mode.
RenderingMode GetRenderingMode() const;
public: // Signals
-
/**
* @brief The user should connect to this signal to get a timing when GlWindow gains focus or loses focus.
*
* @brief This constructor is used by Dali::Application::GetGlWindow().
* @param[in] GlWindow A pointer to the GlWindow
*/
- explicit DALI_INTERNAL GlWindow( Internal::Adaptor::GlWindow* GlWindow );
+ explicit DALI_INTERNAL GlWindow(Internal::Adaptor::GlWindow* GlWindow);
/// @endcond
};
#define DALI_VECTOR_IMAGE_RENDERER_PLUGIN_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
/**
* VectorImageRendererPlugin is an abstract interface, used by dali-adaptor to render a vector image(SVG).
* A concrete implementation must be created for each platform and provided as a dynamic library which
/**
* @brief Constructor
*/
- VectorImageRendererPlugin() {}
+ VectorImageRendererPlugin()
+ {
+ }
/**
* @brief Destructor
*/
- virtual ~VectorImageRendererPlugin() {}
+ virtual ~VectorImageRendererPlugin()
+ {
+ }
/**
* @brief Load vector image data directly.
* @param[in] buffer The target buffer
* @return True if the rendering succeeds, false otherwise.
*/
- virtual bool Rasterize(Dali::Devel::PixelBuffer &buffer) = 0;
+ virtual bool Rasterize(Dali::Devel::PixelBuffer& buffer) = 0;
/**
* @brief Gets the default size of the file.
* @param[out] width The default width of the file
* @param[out] height The default height of the file
*/
- virtual void GetDefaultSize( uint32_t& width, uint32_t& height ) const = 0;
+ virtual void GetDefaultSize(uint32_t& width, uint32_t& height) const = 0;
/**
* @brief Function pointer called in adaptor to create a plugin instance.
#define DALI_VECTOR_IMAGE_RENDERER_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/public-api/object/base-handle.h>
// INTERNAL INCLUDES
-#include <dali/public-api/dali-adaptor-common.h>
#include <dali/devel-api/adaptor-framework/pixel-buffer.h>
+#include <dali/public-api/dali-adaptor-common.h>
namespace Dali
{
* @{
*/
-namespace Internal DALI_INTERNAL
-{
-namespace Adaptor
+namespace Internal::Adaptor
{
class VectorImageRenderer;
-}
-}
+} // namespace Internal::Adaptor
/**
* @brief Used for rendering a vector image file (SVG)
class DALI_ADAPTOR_API VectorImageRenderer : public BaseHandle
{
public:
-
/**
* @brief Creates an initialized handle to a new VectorImageRenderer.
*
*
* @param[in] handle A reference to the copied handle
*/
- VectorImageRenderer( const VectorImageRenderer& handle ) = default;
+ VectorImageRenderer(const VectorImageRenderer& handle) = default;
/**
* @brief This assignment operator is required for (smart) pointer semantics.
* @param[in] rhs A reference to the copied handle
* @return A reference to this
*/
- VectorImageRenderer& operator=( const VectorImageRenderer& rhs ) = default;
+ VectorImageRenderer& operator=(const VectorImageRenderer& rhs) = default;
/**
* @brief Load vector image data directly.
void GetDefaultSize(uint32_t& width, uint32_t& height) const;
public: // Not intended for application developers
-
/// @cond internal
/**
* @brief The constructor.
*
* @param[in] pointer A pointer to a newly allocated VectorImageRenderer
*/
- explicit DALI_INTERNAL VectorImageRenderer( Internal::Adaptor::VectorImageRenderer* internal );
+ explicit DALI_INTERNAL VectorImageRenderer(Internal::Adaptor::VectorImageRenderer* internal);
/// @endcond
-
};
/**
namespace Dali
{
-
/**
* @brief A class WebBackForwardListItem for back forward list item of web engine.
*/
class WebEngineBackForwardListItem
{
-
public:
-
/**
* @brief Constructor.
*/
* @return The original URL of the item, otherwise "" in case of an error
*/
virtual std::string GetOriginalUrl() const = 0;
-
};
} // namespace Dali
#endif // DALI_WEB_ENGINE_BACK_FORWARD_LIST_ITEM_H
-
*/
// EXTERNAL INCLUDES
-#include <string>
#include <dali/devel-api/adaptor-framework/web-engine-back-forward-list-item.h>
+#include <string>
namespace Dali
{
-
class WebEngineBackForwardListItem;
/**
*/
class WebEngineBackForwardList
{
-
public:
-
/**
* @brief Constructor.
*/
* @param[in] index The index of the item
* @return The item of back-forward list.
*/
- virtual WebEngineBackForwardListItem& GetItemAtIndex( uint32_t index ) const = 0;
+ virtual WebEngineBackForwardListItem& GetItemAtIndex(uint32_t index) const = 0;
/**
* @brief Returns the length of the back-forward list including the current
* otherwise @c 0 in case of an error
*/
virtual uint32_t GetItemCount() const = 0;
-
};
} // namespace Dali
#define DALI_WEB_ENGINE_CONTEXT_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
/**
* @brief A class WebEngineContext for context of web engine.
*/
class WebEngineContext
{
-
public:
-
/**
* @brief Enumeration for cache model options.
*/
* @brief Requests to set the cache model.
* @param[in] cacheModel The cache model
*/
- virtual void SetCacheModel( CacheModel cacheModel ) = 0;
+ virtual void SetCacheModel(CacheModel cacheModel) = 0;
/**
* @brief Sets the given proxy URI to network backend of specific context.
* @param[in] uri The proxy URI to set
*/
- virtual void SetProxyUri( const std::string& uri ) = 0;
+ virtual void SetProxyUri(const std::string& uri) = 0;
/**
* @brief Sets a proxy auth credential to network backend of specific context.
* @param[in] username username to set
* @param[in] password password to set
*/
- virtual void SetDefaultProxyAuth( const std::string& username, const std::string& password ) = 0;
+ virtual void SetDefaultProxyAuth(const std::string& username, const std::string& password) = 0;
/**
* Adds CA certificates to persistent NSS certificate database
* Directories are traversed recursively.
* @param[in] certificatePath path to a CA certificate file(s), see above for details
*/
- virtual void SetCertificateFilePath( const std::string& certificatePath ) = 0;
+ virtual void SetCertificateFilePath(const std::string& certificatePath) = 0;
/**
* Requests for deleting all web databases.
* By default the cache is disabled resulting in not storing network data on disk.
* @param[in] cacheDisabled enable or disable cache
*/
- virtual void DisableCache( bool cacheDisabled ) = 0;
+ virtual void DisableCache(bool cacheDisabled) = 0;
/**
* @brief Requests to clear cache
*/
virtual void ClearCache() = 0;
-
};
} // namespace Dali
namespace Dali
{
-
/**
* @brief A class WebEngineCookieManager to wrap ewk cookie manager.
*/
class WebEngineCookieManager
{
-
public:
-
/**
* @brief Enumeration for the cookies accept policies.
*/
*
* @param[in] policy A #Dali::WebEngineCookieManager::CookieAcceptPolicy
*/
- virtual void SetCookieAcceptPolicy( CookieAcceptPolicy policy ) = 0;
+ virtual void SetCookieAcceptPolicy(CookieAcceptPolicy policy) = 0;
/**
* @brief Gets the cookie acceptance policy.
* @param[in] path The path where to read/write Cookies
* @param[in] storage The type of storage
*/
- virtual void SetPersistentStorage( const std::string& path, CookiePersistentStorage storage ) = 0;
-
+ virtual void SetPersistentStorage(const std::string& path, CookiePersistentStorage storage) = 0;
};
} // namespace Dali
#define DALI_WEB_ENGINE_PLUGIN_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
/**
* @brief WebEngine signal type related with page loading.
*/
- using WebEnginePageLoadSignalType = Signal< void( const std::string& ) >;
+ using WebEnginePageLoadSignalType = Signal<void(const std::string&)>;
/**
* @brief WebView signal type related with page loading error.
*/
- using WebEnginePageLoadErrorSignalType = Signal< void( const std::string&, int ) >;
+ using WebEnginePageLoadErrorSignalType = Signal<void(const std::string&, int)>;
// forward declaration.
enum class ScrollEdge;
/**
* @brief WebView signal type related with scroll edge reached.
*/
- using WebEngineScrollEdgeReachedSignalType = Signal< void( const ScrollEdge ) >;
+ using WebEngineScrollEdgeReachedSignalType = Signal<void(const ScrollEdge)>;
/**
* @brief Enumeration for the scroll edge.
* @param [in] argc The count of application arguments
* @param [in] argv The string array of application arguments
*/
- virtual void Create( int width, int height, int argc, char** argv ) = 0;
+ virtual void Create(int width, int height, int argc, char** argv) = 0;
/**
* @brief Destroys WebEngine instance.
/**
* @brief Scrolls the webpage of view by deltaX and deltaY.
*/
- virtual void ScrollBy( int deltaX, int deltaY ) = 0;
+ virtual void ScrollBy(int deltaX, int deltaY) = 0;
/**
* @brief Scroll to the specified position of the given view.
*/
- virtual void SetScrollPosition( int x, int y ) = 0;
+ virtual void SetScrollPosition(int x, int y) = 0;
/**
* @brief Gets the current scroll position of the given view.
/**
* @brief Sets focus.
*/
- virtual void SetFocus( bool focused ) = 0;
+ virtual void SetFocus(bool focused) = 0;
/**
* @brief Update display area.
* @param[in] displayArea The display area need be updated.
*/
- virtual void UpdateDisplayArea( Dali::Rect< int > displayArea ) = 0;
+ virtual void UpdateDisplayArea(Dali::Rect<int> displayArea) = 0;
/**
* @brief Enable video hole.
* @param[in] enabled True if enabled, false othewise.
*/
- virtual void EnableVideoHole( bool enabled ) = 0;
+ virtual void EnableVideoHole(bool enabled) = 0;
/**
* @brief Connects to this signal to be notified when page loading is started.
namespace Dali
{
-
/**
* @brief A class WebEngineSettings for settings of web engine.
*/
class WebEngineSettings
{
-
public:
-
/**
* @brief Constructor.
*/
* @param[in] allowed if true, allow to run mixed contents,
* otherwise not allow
*/
- virtual void AllowMixedContents( bool allowed ) = 0;
+ virtual void AllowMixedContents(bool allowed) = 0;
/**
* @brief Enable the spatial navigation or not.
* @param[in] enabled if true, use spatial navigation,
* otherwise to disable
*/
- virtual void EnableSpatialNavigation( bool enabled ) = 0;
+ virtual void EnableSpatialNavigation(bool enabled) = 0;
/**
* @brief Get the default font size.
*
* @param[in] size a new default font size to set
*/
- virtual void SetDefaultFontSize( uint32_t size ) = 0;
+ virtual void SetDefaultFontSize(uint32_t size) = 0;
/**
* @brief Enables/disables web security.
* @param[in] enabled if true, to enable the web security
* otherwise to disable
*/
- virtual void EnableWebSecurity( bool enabled ) = 0;
+ virtual void EnableWebSecurity(bool enabled) = 0;
/**
* @brief Allow/Disallow file access from external url
* @param[in] allowed if true, to allow file access from external url
* otherwise to disallow
*/
- virtual void AllowFileAccessFromExternalUrl( bool allowed ) = 0;
+ virtual void AllowFileAccessFromExternalUrl(bool allowed) = 0;
/**
* @brief Check if javascript is enabled or not.
* @param[in] enabled if true, to enable javascript
* otherwise to disable
*/
- virtual void EnableJavaScript( bool enabled ) = 0;
+ virtual void EnableJavaScript(bool enabled) = 0;
/**
* @brief Allow if the scripts can open new windows.
* @param[in] allowed if true, the scripts can open new windows,
* otherwise not
*/
- virtual void AllowScriptsOpenWindows( bool allowed ) = 0;
+ virtual void AllowScriptsOpenWindows(bool allowed) = 0;
/**
* @brief Check if images are loaded automatically or not.
* @param[in] automatic if true, to load images automatically,
* otherwise not
*/
- virtual void AllowImagesLoadAutomatically( bool automatic ) = 0;
+ virtual void AllowImagesLoadAutomatically(bool automatic) = 0;
/**
* @brief Get the default encoding name.
*
* @param[in] defaultTextEncodingName a default encoding name to set
*/
- virtual void SetDefaultTextEncodingName( const std::string& defaultTextEncodingName ) = 0;
-
+ virtual void SetDefaultTextEncodingName(const std::string& defaultTextEncodingName) = 0;
};
} // namespace Dali
#define DALI_WEB_ENGINE_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
* @param [in] argc The count of application arguments
* @param [in] argv The string array of application arguments
*/
- void Create( int width, int height, int argc, char** argv );
+ void Create(int width, int height, int argc, char** argv);
/**
* @brief Destroys WebEngine instance.
/**
* @brief Scrolls the webpage of view by deltaX and deltaY.
*/
- void ScrollBy( int deltaX, int deltaY );
+ void ScrollBy(int deltaX, int deltaY);
/**
* @brief Sets an absolute scroll of the given view.
*/
- void SetScrollPosition( int x, int y );
+ void SetScrollPosition(int x, int y);
/**
* @brief Gets the current scroll position of the given view.
* @brief Set focus.
* @param[in] focused True if web view is focused, false otherwise
*/
- void SetFocus( bool focused );
+ void SetFocus(bool focused);
/**
* @brief Update display area.
* @param[in] displayArea The area to display web page.
*/
- void UpdateDisplayArea( Dali::Rect< int > displayArea );
+ void UpdateDisplayArea(Dali::Rect<int> displayArea);
/**
* @brief Enable video hole.
* @param[in] enabled True if video hole is enabled, false otherwise
*/
- void EnableVideoHole( bool enabled );
+ void EnableVideoHole(bool enabled);
/**
* @brief Connects to this signal to be notified when page loading is started.
#define DALI_WINDOW_DEVEL_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <memory>
// INTERNAL INCLUDES
+#include <dali/public-api/adaptor-framework/window-enumerations.h>
#include <dali/public-api/adaptor-framework/window.h>
#include <dali/public-api/common/vector-wrapper.h>
-#include <dali/public-api/adaptor-framework/window-enumerations.h>
namespace Dali
{
namespace DevelWindow
{
-
typedef Signal<void()> EventProcessingFinishedSignalType; ///< Event Processing finished signal type
typedef Signal<void(const KeyEvent&)> KeyEventSignalType; ///< Key event signal type
#define DALI_INTERNAL_ATSPI_ACCESSIBILITY_COMMON_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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/public-api/dali-adaptor-common.h>
#include <dali/devel-api/adaptor-framework/accessibility-impl.h>
-#include <dali/internal/accessibility/bridge/dbus.h>
#include <dali/internal/accessibility/bridge/dbus-locators.h>
+#include <dali/internal/accessibility/bridge/dbus.h>
+#include <dali/public-api/dali-adaptor-common.h>
#define A11yDbusName "org.a11y.Bus"
#define A11yDbusPath "/org/a11y/bus"
namespace DBus
{
-
class CurrentBridgePtr
{
static Dali::Accessibility::Bridge*& get()
return b;
}
Dali::Accessibility::Bridge* prev;
- CurrentBridgePtr( const CurrentBridgePtr& ) = delete;
- CurrentBridgePtr( CurrentBridgePtr&& ) = delete;
- CurrentBridgePtr& operator=( const CurrentBridgePtr& ) = delete;
- CurrentBridgePtr& operator=( CurrentBridgePtr&& ) = delete;
+ CurrentBridgePtr(const CurrentBridgePtr&) = delete;
+ CurrentBridgePtr(CurrentBridgePtr&&) = delete;
+ CurrentBridgePtr& operator=(const CurrentBridgePtr&) = delete;
+ CurrentBridgePtr& operator=(CurrentBridgePtr&&) = delete;
public:
- CurrentBridgePtr( Dali::Accessibility::Bridge* b )
- : prev( get() )
+ CurrentBridgePtr(Dali::Accessibility::Bridge* b)
+ : prev(get())
{
get() = b;
}
namespace detail
{
-
-template < typename T >
+template<typename T>
struct signature_accessible_impl : signature_helper<signature_accessible_impl<T>>
{
- using subtype = std::pair< std::string, ObjectPath >;
+ using subtype = std::pair<std::string, ObjectPath>;
static constexpr auto name_v = concat("AtspiAccessiblePtr");
- static constexpr auto sig_v = concat("(so)");
+ static constexpr auto sig_v = concat("(so)");
/**
* @brief Marshals value v as marshalled type into message
*/
- static void set( const DBusWrapper::MessageIterPtr& iter, T* t )
+ static void set(const DBusWrapper::MessageIterPtr& iter, T* t)
{
- if( t )
+ if(t)
{
auto v = t->GetAddress();
- signature< subtype >::set( iter, { v.GetBus(), ObjectPath{std::string{ ATSPI_PREFIX_PATH } +v.GetPath()} } );
+ signature<subtype>::set(iter, {v.GetBus(), ObjectPath{std::string{ATSPI_PREFIX_PATH} + v.GetPath()}});
}
else
{
- signature< subtype >::set( iter, { "", ObjectPath{ ATSPI_NULL_PATH } } );
+ signature<subtype>::set(iter, {"", ObjectPath{ATSPI_NULL_PATH}});
}
}
/**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get( const DBusWrapper::MessageIterPtr& iter, T*& v )
+ static bool get(const DBusWrapper::MessageIterPtr& iter, T*& v)
{
subtype tmp;
- if( !signature< subtype >::get( iter, tmp ) )
+ if(!signature<subtype>::get(iter, tmp))
{
return false;
}
- if( tmp.second.value == ATSPI_NULL_PATH )
+ if(tmp.second.value == ATSPI_NULL_PATH)
{
v = nullptr;
return true;
}
- if( tmp.second.value.substr( 0, strlen( ATSPI_PREFIX_PATH ) ) != ATSPI_PREFIX_PATH )
+ if(tmp.second.value.substr(0, strlen(ATSPI_PREFIX_PATH)) != ATSPI_PREFIX_PATH)
{
return false;
}
auto b = CurrentBridgePtr::current();
- if( b->GetBusName() != tmp.first )
+ if(b->GetBusName() != tmp.first)
{
return false;
}
- v = b->FindByPath( tmp.second.value.substr( strlen( ATSPI_PREFIX_PATH ) ) );
+ v = b->FindByPath(tmp.second.value.substr(strlen(ATSPI_PREFIX_PATH)));
return v != nullptr;
}
};
-template <>
-struct signature< Dali::Accessibility::Accessible* > : public signature_accessible_impl< Dali::Accessibility::Accessible >
+template<>
+struct signature<Dali::Accessibility::Accessible*> : public signature_accessible_impl<Dali::Accessibility::Accessible>
{
};
-template <>
-struct signature< Dali::Accessibility::Address > : signature_helper<signature<Dali::Accessibility::Address>>
+template<>
+struct signature<Dali::Accessibility::Address> : signature_helper<signature<Dali::Accessibility::Address>>
{
- using subtype = std::pair< std::string, ObjectPath >;
+ using subtype = std::pair<std::string, ObjectPath>;
static constexpr auto name_v = concat("AtspiAccessiblePtr");
- static constexpr auto sig_v = concat("(so)");
+ static constexpr auto sig_v = concat("(so)");
/**
* @brief Marshals value v as marshalled type into message
*/
- static void set( const DBusWrapper::MessageIterPtr& iter, const Dali::Accessibility::Address& v )
+ static void set(const DBusWrapper::MessageIterPtr& iter, const Dali::Accessibility::Address& v)
{
- if( v )
+ if(v)
{
- signature< subtype >::set( iter, { v.GetBus(), ObjectPath{ std::string{ ATSPI_PREFIX_PATH } + v.GetPath() } } );
+ signature<subtype>::set(iter, {v.GetBus(), ObjectPath{std::string{ATSPI_PREFIX_PATH} + v.GetPath()}});
}
else
{
- signature< subtype >::set( iter, { v.GetBus(), ObjectPath{ ATSPI_NULL_PATH } } );
+ signature<subtype>::set(iter, {v.GetBus(), ObjectPath{ATSPI_NULL_PATH}});
}
}
/**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get( const DBusWrapper::MessageIterPtr& iter, Dali::Accessibility::Address& v )
+ static bool get(const DBusWrapper::MessageIterPtr& iter, Dali::Accessibility::Address& v)
{
subtype tmp;
- if( !signature< subtype >::get( iter, tmp ) )
+ if(!signature<subtype>::get(iter, tmp))
{
return false;
}
- if( tmp.second.value == ATSPI_NULL_PATH )
+ if(tmp.second.value == ATSPI_NULL_PATH)
{
v = {};
return true;
}
- if( tmp.second.value.substr( 0, strlen( ATSPI_PREFIX_PATH ) ) != ATSPI_PREFIX_PATH )
+ if(tmp.second.value.substr(0, strlen(ATSPI_PREFIX_PATH)) != ATSPI_PREFIX_PATH)
{
return false;
}
- v = { std::move( tmp.first ), tmp.second.value.substr( strlen( ATSPI_PREFIX_PATH ) ) };
- return true;
+ v = {std::move(tmp.first), tmp.second.value.substr(strlen(ATSPI_PREFIX_PATH))};
+ return true;
}
};
-template <>
-struct signature< Dali::Accessibility::States > : signature_helper<signature<Dali::Accessibility::States>>
+template<>
+struct signature<Dali::Accessibility::States> : signature_helper<signature<Dali::Accessibility::States>>
{
using subtype = std::array<uint32_t, 2>;
static constexpr auto name_v = signature<subtype>::name_v;
- static constexpr auto sig_v = signature<subtype>::sig_v;
+ static constexpr auto sig_v = signature<subtype>::sig_v;
/**
* @brief Marshals value v as marshalled type into message
*/
- static void set( const DBusWrapper::MessageIterPtr& iter, const Dali::Accessibility::States& v )
+ static void set(const DBusWrapper::MessageIterPtr& iter, const Dali::Accessibility::States& v)
{
- signature< subtype >::set( iter, v.GetRawData() );
+ signature<subtype>::set(iter, v.GetRawData());
}
/**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get( const DBusWrapper::MessageIterPtr& iter, Dali::Accessibility::States& v )
+ static bool get(const DBusWrapper::MessageIterPtr& iter, Dali::Accessibility::States& v)
{
subtype tmp;
- if( !signature< subtype >::get( iter, tmp ) )
+ if(!signature<subtype>::get(iter, tmp))
{
return false;
}
- v = Dali::Accessibility::States{ tmp };
+ v = Dali::Accessibility::States{tmp};
return true;
}
};
-}
-}
+} // namespace detail
+} // namespace DBus
struct _Logger
{
- const char* file;
- int line;
+ const char* file;
+ int line;
std::ostringstream tmp;
- _Logger( const char* f, int l )
- : file( f ),
- line( l ){}
+ _Logger(const char* f, int l)
+ : file(f),
+ line(l)
+ {
+ }
~_Logger()
{
- Dali::Integration::Log::LogMessage( Dali::Integration::Log::DebugInfo, "%s:%d: %s", file, line, tmp.str().c_str() );
+ Dali::Integration::Log::LogMessage(Dali::Integration::Log::DebugInfo, "%s:%d: %s", file, line, tmp.str().c_str());
}
- template < typename T >
- _Logger& operator<<( T&& t )
+ template<typename T>
+ _Logger& operator<<(T&& t)
{
- tmp << std::forward< T >( t );
+ tmp << std::forward<T>(t);
return *this;
}
};
struct _LoggerEmpty
{
- template < typename T >
- _LoggerEmpty& operator<<( T&& t )
+ template<typename T>
+ _LoggerEmpty& operator<<(T&& t)
{
return *this;
}
struct _LoggerScope
{
const char* file;
- int line;
+ int line;
- _LoggerScope( const char* f, int l )
- : file( f ),
- line( l )
+ _LoggerScope(const char* f, int l)
+ : file(f),
+ line(l)
{
- Dali::Integration::Log::LogMessage( Dali::Integration::Log::DebugInfo, "%s:%d: +", file, line );
+ Dali::Integration::Log::LogMessage(Dali::Integration::Log::DebugInfo, "%s:%d: +", file, line);
}
~_LoggerScope()
{
- Dali::Integration::Log::LogMessage( Dali::Integration::Log::DebugInfo, "%s:%d: -", file, line );
+ Dali::Integration::Log::LogMessage(Dali::Integration::Log::DebugInfo, "%s:%d: -", file, line);
}
};
-#define LOG() _Logger( __FILE__, __LINE__ )
-#define SCOPE() _LoggerScope _l##__LINE__( __FILE__, __LINE__ )
+#define LOG() _Logger(__FILE__, __LINE__)
+#define SCOPE() _LoggerScope _l##__LINE__(__FILE__, __LINE__)
#endif // DALI_INTERNAL_ATSPI_ACCESSIBILITY_COMMON_H
#define DALI_INTERNAL_ACCESSIBILITY_BRIDGE_ACCESSIBLE_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
public:
enum class GetNeighborSearchMode
{
- normal = 0,
- recurseFromRoot = 1,
+ normal = 0,
+ recurseFromRoot = 1,
continueAfterFailedRecursion = 2,
- recurseToOutside = 3,
+ recurseToOutside = 3,
};
- int GetChildCount();
- DBus::ValueOrError< Dali::Accessibility::Accessible* > GetChildAtIndex( int index );
- Dali::Accessibility::Accessible* GetParent();
- DBus::ValueOrError< std::vector< Dali::Accessibility::Accessible* > > GetChildren();
- std::string GetName();
- std::string GetDescription();
- DBus::ValueOrError< uint32_t > GetRole();
- DBus::ValueOrError< std::string > GetRoleName();
- DBus::ValueOrError< std::string > GetLocalizedRoleName();
- DBus::ValueOrError< int32_t > GetIndexInParent();
- DBus::ValueOrError< std::array< uint32_t, 2 > > GetStates();
- DBus::ValueOrError< std::unordered_map< std::string, std::string > > GetAttributes();
- DBus::ValueOrError< std::vector< std::string > > GetInterfaces();
- DBus::ValueOrError< Dali::Accessibility::Accessible*, uint8_t, Dali::Accessibility::Accessible* > GetNavigableAtPoint( int32_t x, int32_t y, uint32_t coordType );
- DBus::ValueOrError< Dali::Accessibility::Accessible*, uint8_t > GetNeighbor( std::string root_path, int32_t direction, int32_t search_mode );
- DBus::ValueOrError< Dali::Accessibility::Accessible*, uint32_t , std::unordered_map< std::string, std::string > > GetDefaultLabelInfo();
+ int GetChildCount();
+ DBus::ValueOrError<Dali::Accessibility::Accessible*> GetChildAtIndex(int index);
+ Dali::Accessibility::Accessible* GetParent();
+ DBus::ValueOrError<std::vector<Dali::Accessibility::Accessible*>> GetChildren();
+ std::string GetName();
+ std::string GetDescription();
+ DBus::ValueOrError<uint32_t> GetRole();
+ DBus::ValueOrError<std::string> GetRoleName();
+ DBus::ValueOrError<std::string> GetLocalizedRoleName();
+ DBus::ValueOrError<int32_t> GetIndexInParent();
+ DBus::ValueOrError<std::array<uint32_t, 2>> GetStates();
+ DBus::ValueOrError<std::unordered_map<std::string, std::string>> GetAttributes();
+ DBus::ValueOrError<std::vector<std::string>> GetInterfaces();
+ DBus::ValueOrError<Dali::Accessibility::Accessible*, uint8_t, Dali::Accessibility::Accessible*> GetNavigableAtPoint(int32_t x, int32_t y, uint32_t coordType);
+ DBus::ValueOrError<Dali::Accessibility::Accessible*, uint8_t> GetNeighbor(std::string root_path, int32_t direction, int32_t search_mode);
+ DBus::ValueOrError<Dali::Accessibility::Accessible*, uint32_t, std::unordered_map<std::string, std::string>> GetDefaultLabelInfo();
using ReadingMaterialType = DBus::ValueOrError<
- std::unordered_map< std::string, std::string >, // attributes
- std::string, // name
- std::string, // labeledByName
- std::string, // textIfceName
- uint32_t,
- Dali::Accessibility::States,
- std::string, // localized name
- int32_t, // child count
- double, // current value
- double, // minimum increment
- double, // maximum value
- double, // minimum value
- std::string, // description
- int32_t, // index in parent
- bool, // isSelectedInParent
- bool, // hasCheckBoxChild
- int32_t, // listChildrenCount
- int32_t, // firstSelectedChildIndex
- Dali::Accessibility::Accessible*, // parent
- Dali::Accessibility::States, // parentStateSet
- int32_t, // parentChildCount
- uint32_t, // parentRole
- int32_t, // selectedChildCount,
- Dali::Accessibility::Accessible* // describedByObject
- >;
+ std::unordered_map<std::string, std::string>, // attributes
+ std::string, // name
+ std::string, // labeledByName
+ std::string, // textIfceName
+ uint32_t,
+ Dali::Accessibility::States,
+ std::string, // localized name
+ int32_t, // child count
+ double, // current value
+ double, // minimum increment
+ double, // maximum value
+ double, // minimum value
+ std::string, // description
+ int32_t, // index in parent
+ bool, // isSelectedInParent
+ bool, // hasCheckBoxChild
+ int32_t, // listChildrenCount
+ int32_t, // firstSelectedChildIndex
+ Dali::Accessibility::Accessible*, // parent
+ Dali::Accessibility::States, // parentStateSet
+ int32_t, // parentChildCount
+ uint32_t, // parentRole
+ int32_t, // selectedChildCount,
+ Dali::Accessibility::Accessible* // describedByObject
+ >;
ReadingMaterialType GetReadingMaterial();
- DBus::ValueOrError< bool > DoGesture( Dali::Accessibility::Gesture type, int32_t xBeg, int32_t xEnd, int32_t yBeg, int32_t yEnd, Dali::Accessibility::GestureState state, uint32_t eventTime );
+ DBus::ValueOrError<bool> DoGesture(Dali::Accessibility::Gesture type, int32_t xBeg, int32_t xEnd, int32_t yBeg, int32_t yEnd, Dali::Accessibility::GestureState state, uint32_t eventTime);
- using Relation = std::tuple< uint32_t, std::vector< Dali::Accessibility::Address > >;
- DBus::ValueOrError<std::vector< Relation >> GetRelationSet();
+ using Relation = std::tuple<uint32_t, std::vector<Dali::Accessibility::Address>>;
+ DBus::ValueOrError<std::vector<Relation>> GetRelationSet();
private:
- Dali::Accessibility::Accessible* CalculateNeighbor( Dali::Accessibility::Accessible* root, Dali::Accessibility::Accessible* start, unsigned char forward, GetNeighborSearchMode search_mode );
- std::vector< Dali::Accessibility::Accessible* > ValidChildrenGet( const std::vector< Dali::Accessibility::Accessible* >& children, Dali::Accessibility::Accessible* start, Dali::Accessibility::Accessible* root );
- Dali::Accessibility::Accessible* GetCurrentlyHighlighted();
- Dali::Accessibility::Accessible* DirectionalDepthFirstSearchTryNonDefunctSibling( bool& all_children_visited, Dali::Accessibility::Accessible* node, Dali::Accessibility::Accessible* start, Dali::Accessibility::Accessible* root, unsigned char forward );
- Dali::Accessibility::Accessible* GetNextNonDefunctSibling( Dali::Accessibility::Accessible* obj, Dali::Accessibility::Accessible* start, Dali::Accessibility::Accessible* root, unsigned char forward );
- Dali::Accessibility::Component* CalculateNavigableAccessibleAtPoint( Dali::Accessibility::Accessible* root, Dali::Accessibility::Point p, Dali::Accessibility::CoordType cType, unsigned int maxRecursionDepth );
- Dali::Accessibility::Component * GetObjectInRelation(Dali::Accessibility::Accessible * obj, Dali::Accessibility::RelationType ralationType);
+ Dali::Accessibility::Accessible* CalculateNeighbor(Dali::Accessibility::Accessible* root, Dali::Accessibility::Accessible* start, unsigned char forward, GetNeighborSearchMode search_mode);
+ std::vector<Dali::Accessibility::Accessible*> ValidChildrenGet(const std::vector<Dali::Accessibility::Accessible*>& children, Dali::Accessibility::Accessible* start, Dali::Accessibility::Accessible* root);
+ Dali::Accessibility::Accessible* GetCurrentlyHighlighted();
+ Dali::Accessibility::Accessible* DirectionalDepthFirstSearchTryNonDefunctSibling(bool& all_children_visited, Dali::Accessibility::Accessible* node, Dali::Accessibility::Accessible* start, Dali::Accessibility::Accessible* root, unsigned char forward);
+ Dali::Accessibility::Accessible* GetNextNonDefunctSibling(Dali::Accessibility::Accessible* obj, Dali::Accessibility::Accessible* start, Dali::Accessibility::Accessible* root, unsigned char forward);
+ Dali::Accessibility::Component* CalculateNavigableAccessibleAtPoint(Dali::Accessibility::Accessible* root, Dali::Accessibility::Point p, Dali::Accessibility::CoordType cType, unsigned int maxRecursionDepth);
+ Dali::Accessibility::Component* GetObjectInRelation(Dali::Accessibility::Accessible* obj, Dali::Accessibility::RelationType ralationType);
};
#endif // DALI_INTERNAL_ACCESSIBILITY_BRIDGE_ACCESSIBLE_H
#define DALI_INTERNAL_ACCESSIBILITY_BRIDGE_ACTION_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
Dali::Accessibility::Action* FindSelf() const;
public:
- DBus::ValueOrError< std::string > GetActionName( int32_t index );
- DBus::ValueOrError< std::string > GetLocalizedActionName( int32_t index );
- DBus::ValueOrError< std::string > GetActionDescription( int32_t index );
- DBus::ValueOrError< std::string > GetActionKeyBinding( int32_t index );
- DBus::ValueOrError< int32_t > GetActionCount();
- DBus::ValueOrError< bool > DoAction( int32_t index );
- DBus::ValueOrError< bool > DoActionName( std::string name );
+ DBus::ValueOrError<std::string> GetActionName(int32_t index);
+ DBus::ValueOrError<std::string> GetLocalizedActionName(int32_t index);
+ DBus::ValueOrError<std::string> GetActionDescription(int32_t index);
+ DBus::ValueOrError<std::string> GetActionKeyBinding(int32_t index);
+ DBus::ValueOrError<int32_t> GetActionCount();
+ DBus::ValueOrError<bool> DoAction(int32_t index);
+ DBus::ValueOrError<bool> DoActionName(std::string name);
};
#endif // DALI_INTERNAL_ACCESSIBILITY_BRIDGE_ACTION_H
#define DALI_INTERNAL_ACCESSIBILITY_BRIDGE_BASE_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
public:
Dali::Accessibility::EmptyAccessibleWithAddress parent;
- std::vector< Dali::Accessibility::Accessible* > children;
- std::string name;
+ std::vector<Dali::Accessibility::Accessible*> children;
+ std::string name;
std::string GetName() override
{
return children.size();
}
- Dali::Accessibility::Accessible* GetChildAtIndex( size_t index ) override
+ Dali::Accessibility::Accessible* GetChildAtIndex(size_t index) override
{
auto s = children.size();
- if( index >= s )
- throw std::domain_error{"invalid index " + std::to_string( index ) + " for object with " + std::to_string( s ) + " children"};
+ if(index >= s)
+ throw std::domain_error{"invalid index " + std::to_string(index) + " for object with " + std::to_string(s) + " children"};
return children[index];
}
return children.empty() ? nullptr : children[0];
}
- bool DoGesture(const Dali::Accessibility::GestureInfo &gestureInfo) override
+ bool DoGesture(const Dali::Accessibility::GestureInfo& gestureInfo) override
{
- return false;
+ return false;
}
std::vector<Dali::Accessibility::Relation> GetRelationSet() override
{
- return {};
+ return {};
}
- Dali::Accessibility::Address GetAddress() override {
- return { "", "root" };
+ Dali::Accessibility::Address GetAddress() override
+ {
+ return {"", "root"};
}
-
};
-
-enum class FilteredEvents {
+enum class FilteredEvents
+{
boundsChanged
};
-
-namespace std {
- template <> struct hash<std::pair<FilteredEvents, Dali::Accessibility::Accessible*>> {
- size_t operator () (std::pair<FilteredEvents, Dali::Accessibility::Accessible*> v) const {
- return (static_cast<size_t>(v.first) * 131) ^ reinterpret_cast<size_t>(v.second);
- }
- };
-}
-
+namespace std
+{
+template<>
+struct hash<std::pair<FilteredEvents, Dali::Accessibility::Accessible*>>
+{
+ size_t operator()(std::pair<FilteredEvents, Dali::Accessibility::Accessible*> v) const
+ {
+ return (static_cast<size_t>(v.first) * 131) ^ reinterpret_cast<size_t>(v.second);
+ }
+};
+} // namespace std
class BridgeBase : public Dali::Accessibility::Bridge, public Dali::ConnectionTracker
{
bool tickFilteredEvents();
public:
-
void addFilteredEvent(FilteredEvents kind, Dali::Accessibility::Accessible* obj, float delay, std::function<void()> functor);
const std::string& GetBusName() const override;
- void AddTopLevelWindow( Dali::Accessibility::Accessible* window ) override;
- void RemoveTopLevelWindow( Dali::Accessibility::Accessible* window ) override;
- void AddPopup( Dali::Accessibility::Accessible* ) override;
- void RemovePopup( Dali::Accessibility::Accessible* ) override;
+ void AddTopLevelWindow(Dali::Accessibility::Accessible* window) override;
+ void RemoveTopLevelWindow(Dali::Accessibility::Accessible* window) override;
+ void AddPopup(Dali::Accessibility::Accessible*) override;
+ void RemovePopup(Dali::Accessibility::Accessible*) override;
Dali::Accessibility::Accessible* GetApplication() const override
{
return &application;
}
- template < typename SELF, typename... RET, typename... ARGS >
+ template<typename SELF, typename... RET, typename... ARGS>
void AddFunctionToInterface(
- DBus::DBusInterfaceDescription& desc, const std::string& funcName,
- DBus::ValueOrError< RET... > ( SELF::*funcPtr )( ARGS... ) )
+ DBus::DBusInterfaceDescription& desc, const std::string& funcName, DBus::ValueOrError<RET...> (SELF::*funcPtr)(ARGS...))
{
- if ( auto self = dynamic_cast< SELF* >( this ) )
- desc.addMethod< DBus::ValueOrError< RET... >( ARGS... ) >( funcName,
- [=]( ARGS... args ) -> DBus::ValueOrError< RET... > {
- try
- {
- return ( self->*funcPtr )( std::move( args )... );
- }
- catch( std::domain_error& e )
- {
- return DBus::Error{e.what()};
- }
- } );
+ if(auto self = dynamic_cast<SELF*>(this))
+ desc.addMethod<DBus::ValueOrError<RET...>(ARGS...)>(funcName,
+ [=](ARGS... args) -> DBus::ValueOrError<RET...> {
+ try
+ {
+ return (self->*funcPtr)(std::move(args)...);
+ }
+ catch(std::domain_error& e)
+ {
+ return DBus::Error{e.what()};
+ }
+ });
}
- template < typename T, typename SELF >
- void AddGetPropertyToInterface( DBus::DBusInterfaceDescription& desc,
- const std::string& funcName, T ( SELF::*funcPtr )() )
+ template<typename T, typename SELF>
+ void AddGetPropertyToInterface(DBus::DBusInterfaceDescription& desc,
+ const std::string& funcName,
+ T (SELF::*funcPtr)())
{
- if ( auto self = dynamic_cast< SELF* >( this ) )
- desc.addProperty< T >( funcName,
- [=]() -> DBus::ValueOrError< T > {
- try
- {
- return ( self->*funcPtr )();
- }
- catch( std::domain_error& e )
- {
- return DBus::Error{e.what()};
- }
- },
- {} );
+ if(auto self = dynamic_cast<SELF*>(this))
+ desc.addProperty<T>(funcName,
+ [=]() -> DBus::ValueOrError<T> {
+ try
+ {
+ return (self->*funcPtr)();
+ }
+ catch(std::domain_error& e)
+ {
+ return DBus::Error{e.what()};
+ }
+ },
+ {});
}
- template < typename T, typename SELF >
- void AddSetPropertyToInterface( DBus::DBusInterfaceDescription& desc,
- const std::string& funcName, void ( SELF::*funcPtr )( T ) )
+ template<typename T, typename SELF>
+ void AddSetPropertyToInterface(DBus::DBusInterfaceDescription& desc,
+ const std::string& funcName,
+ void (SELF::*funcPtr)(T))
{
- if ( auto self = dynamic_cast< SELF* >( this ) )
- desc.addProperty< T >( funcName, {},
- [=]( T t ) -> DBus::ValueOrError< void > {
- try
- {
- ( self->*funcPtr )( std::move( t ) );
- return {};
- }
- catch( std::domain_error& e )
- {
- return DBus::Error{e.what()};
- }
- } );
+ if(auto self = dynamic_cast<SELF*>(this))
+ desc.addProperty<T>(funcName, {}, [=](T t) -> DBus::ValueOrError<void> {
+ try
+ {
+ (self->*funcPtr)(std::move(t));
+ return {};
+ }
+ catch(std::domain_error& e)
+ {
+ return DBus::Error{e.what()};
+ }
+ });
}
- template < typename T, typename T1, typename SELF >
- void AddGetSetPropertyToInterface( DBus::DBusInterfaceDescription& desc,
- const std::string& funcName, T1 ( SELF::*funcPtrGet )(), DBus::ValueOrError< void > ( SELF::*funcPtrSet )( T ) )
+ template<typename T, typename T1, typename SELF>
+ void AddGetSetPropertyToInterface(DBus::DBusInterfaceDescription& desc,
+ const std::string& funcName,
+ T1 (SELF::*funcPtrGet)(),
+ DBus::ValueOrError<void> (SELF::*funcPtrSet)(T))
{
- if ( auto self = dynamic_cast< SELF* >( this ) )
- desc.addProperty< T >( funcName,
- [=]() -> DBus::ValueOrError< T > {
- try
- {
- return ( self->*funcPtrGet )();
- }
- catch( std::domain_error& e )
- {
- return DBus::Error{e.what()};
- }
- },
- [=]( T t ) -> DBus::ValueOrError< void > {
- try
- {
- ( self->*funcPtrSet )( std::move( t ) );
- return {};
- }
- catch( std::domain_error& e )
- {
- return DBus::Error{e.what()};
- }
- } );
+ if(auto self = dynamic_cast<SELF*>(this))
+ desc.addProperty<T>(
+ funcName,
+ [=]() -> DBus::ValueOrError<T> {
+ try
+ {
+ return (self->*funcPtrGet)();
+ }
+ catch(std::domain_error& e)
+ {
+ return DBus::Error{e.what()};
+ }
+ },
+ [=](T t) -> DBus::ValueOrError<void> {
+ try
+ {
+ (self->*funcPtrSet)(std::move(t));
+ return {};
+ }
+ catch(std::domain_error& e)
+ {
+ return DBus::Error{e.what()};
+ }
+ });
}
- template < typename T, typename T1, typename SELF >
- void AddGetSetPropertyToInterface( DBus::DBusInterfaceDescription& desc,
- const std::string& funcName, T1 ( SELF::*funcPtrGet )(), void ( SELF::*funcPtrSet )( T ) )
+ template<typename T, typename T1, typename SELF>
+ void AddGetSetPropertyToInterface(DBus::DBusInterfaceDescription& desc,
+ const std::string& funcName,
+ T1 (SELF::*funcPtrGet)(),
+ void (SELF::*funcPtrSet)(T))
{
- if ( auto self = dynamic_cast< SELF* >( this ) )
- desc.addProperty< T >( funcName,
- [=]() -> DBus::ValueOrError< T > {
- try
- {
- return ( self->*funcPtrGet )();
- }
- catch( std::domain_error& e )
- {
- return DBus::Error{e.what()};
- }
- },
- [=]( T t ) -> DBus::ValueOrError< void > {
- try
- {
- ( self->*funcPtrSet )( std::move( t ) );
- return {};
- }
- catch( std::domain_error& e )
- {
- return DBus::Error{e.what()};
- }
- } );
+ if(auto self = dynamic_cast<SELF*>(this))
+ desc.addProperty<T>(
+ funcName,
+ [=]() -> DBus::ValueOrError<T> {
+ try
+ {
+ return (self->*funcPtrGet)();
+ }
+ catch(std::domain_error& e)
+ {
+ return DBus::Error{e.what()};
+ }
+ },
+ [=](T t) -> DBus::ValueOrError<void> {
+ try
+ {
+ (self->*funcPtrSet)(std::move(t));
+ return {};
+ }
+ catch(std::domain_error& e)
+ {
+ return DBus::Error{e.what()};
+ }
+ });
}
- static std::string StripPrefix( const std::string& path );
+ static std::string StripPrefix(const std::string& path);
- Dali::Accessibility::Accessible* Find( const std::string& path ) const;
- Dali::Accessibility::Accessible* Find( const Dali::Accessibility::Address& ptr ) const;
+ Dali::Accessibility::Accessible* Find(const std::string& path) const;
+ Dali::Accessibility::Accessible* Find(const Dali::Accessibility::Address& ptr) const;
Dali::Accessibility::Accessible* FindSelf() const;
- Dali::Accessibility::Accessible* FindByPath( const std::string& name ) const override;
- void SetApplicationName( std::string name ) override
+ Dali::Accessibility::Accessible* FindByPath(const std::string& name) const override;
+ void SetApplicationName(std::string name) override
{
- application.name = std::move( name );
+ application.name = std::move(name);
}
protected:
- mutable AppAccessible application;
+ mutable AppAccessible application;
std::vector<Dali::Accessibility::Accessible*> popups;
+
private:
- void IdSet( int id );
- int IdGet();
+ void IdSet(int id);
+ int IdGet();
using CacheElementType = std::tuple<
- Dali::Accessibility::Address, Dali::Accessibility::Address, Dali::Accessibility::Address,
- std::vector< Dali::Accessibility::Address >,
- std::vector< std::string >,
- std::string,
- Dali::Accessibility::Role,
- std::string,
- std::array< uint32_t, 2 > >;
- DBus::ValueOrError< std::vector< CacheElementType > > GetItems();
- CacheElementType CreateCacheElement( Dali::Accessibility::Accessible* item );
+ Dali::Accessibility::Address,
+ Dali::Accessibility::Address,
+ Dali::Accessibility::Address,
+ std::vector<Dali::Accessibility::Address>,
+ std::vector<std::string>,
+ std::string,
+ Dali::Accessibility::Role,
+ std::string,
+ std::array<uint32_t, 2>>;
+ DBus::ValueOrError<std::vector<CacheElementType>> GetItems();
+ CacheElementType CreateCacheElement(Dali::Accessibility::Accessible* item);
protected:
BridgeBase();
virtual ~BridgeBase();
ForceUpResult ForceUp() override;
- void ForceDown() override;
+ void ForceDown() override;
- DBus::DBusServer dbusServer;
+ DBus::DBusServer dbusServer;
DBusWrapper::ConnectionPtr con;
- int id = 0;
+ int id = 0;
};
#endif // DALI_INTERNAL_ACCESSIBILITY_BRIDGE_BASE_H
#define DALI_INTERNAL_ACCESSIBILITY_BRIDGE_COLLECTION_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
private:
struct Comparer;
- static void VisitNodes( Dali::Accessibility::Accessible* obj, std::vector< Dali::Accessibility::Accessible* >& result, Comparer& cmp, size_t maxCount );
+ static void VisitNodes(Dali::Accessibility::Accessible* obj, std::vector<Dali::Accessibility::Accessible*>& result, Comparer& cmp, size_t maxCount);
protected:
BridgeCollection() = default;
public:
using MatchRule = std::tuple<
- std::array< int32_t, 2 >, int32_t,
- std::unordered_map< std::string, std::string >, int32_t,
- std::array< int32_t, 4 >, int32_t,
- std::vector< std::string >, int32_t,
- bool >;
+ std::array<int32_t, 2>,
+ int32_t,
+ std::unordered_map<std::string, std::string>,
+ int32_t,
+ std::array<int32_t, 4>,
+ int32_t,
+ std::vector<std::string>,
+ int32_t,
+ bool>;
struct Index
{
enum
};
};
- DBus::ValueOrError< std::vector< Dali::Accessibility::Accessible* > > GetMatches( MatchRule rule, uint32_t sortBy, int32_t count, bool traverse );
+ DBus::ValueOrError<std::vector<Dali::Accessibility::Accessible*> > GetMatches(MatchRule rule, uint32_t sortBy, int32_t count, bool traverse);
};
#endif // DALI_INTERNAL_ACCESSIBILITY_BRIDGE_COLLECTION_H
#define DALI_INTERNAL_ACCESSIBILITY_BRIDGE_COMPONENT_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
Dali::Accessibility::Component* FindSelf() const;
public:
- DBus::ValueOrError< bool > Contains( int32_t x, int32_t y, uint32_t coordType );
- DBus::ValueOrError< Dali::Accessibility::Accessible* > GetAccessibleAtPoint( int32_t x, int32_t y, uint32_t coordType );
- DBus::ValueOrError< std::tuple< int32_t, int32_t, int32_t, int32_t > > GetExtents( uint32_t coordType );
- DBus::ValueOrError< int32_t, int32_t > GetPosition( uint32_t coordType );
- DBus::ValueOrError< int32_t, int32_t > GetSize( uint32_t coordType );
- DBus::ValueOrError< Dali::Accessibility::ComponentLayer > GetLayer();
- DBus::ValueOrError< double > GetAlpha();
- DBus::ValueOrError< bool > GrabFocus();
- DBus::ValueOrError< bool > GrabHighlight();
- DBus::ValueOrError< bool > ClearHighlight();
- DBus::ValueOrError< int16_t > GetMdiZOrder();
+ DBus::ValueOrError<bool> Contains(int32_t x, int32_t y, uint32_t coordType);
+ DBus::ValueOrError<Dali::Accessibility::Accessible*> GetAccessibleAtPoint(int32_t x, int32_t y, uint32_t coordType);
+ DBus::ValueOrError<std::tuple<int32_t, int32_t, int32_t, int32_t> > GetExtents(uint32_t coordType);
+ DBus::ValueOrError<int32_t, int32_t> GetPosition(uint32_t coordType);
+ DBus::ValueOrError<int32_t, int32_t> GetSize(uint32_t coordType);
+ DBus::ValueOrError<Dali::Accessibility::ComponentLayer> GetLayer();
+ DBus::ValueOrError<double> GetAlpha();
+ DBus::ValueOrError<bool> GrabFocus();
+ DBus::ValueOrError<bool> GrabHighlight();
+ DBus::ValueOrError<bool> ClearHighlight();
+ DBus::ValueOrError<int16_t> GetMdiZOrder();
};
#endif // DALI_INTERNAL_ACCESSIBILITY_BRIDGE_COMPONENT_H
#define DALI_INTERNAL_ACCESSIBILITY_BRIDGE_EDITABLE_TEXT_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
Dali::Accessibility::EditableText* FindSelf() const;
public:
- DBus::ValueOrError< bool > CopyText( int32_t startPos, int32_t endPos );
- DBus::ValueOrError< bool > CutText( int32_t startPos, int32_t endPos );
- DBus::ValueOrError< bool > PasteText( int32_t pos );
+ DBus::ValueOrError<bool> CopyText(int32_t startPos, int32_t endPos);
+ DBus::ValueOrError<bool> CutText(int32_t startPos, int32_t endPos);
+ DBus::ValueOrError<bool> PasteText(int32_t pos);
};
#endif // DALI_INTERNAL_ACCESSIBILITY_BRIDGE_EDITABLE_TEXT_H
#define DALI_INTERNAL_ACCESSIBILITY_BRIDGE_OBJECT_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
DBus::DBusInterfaceDescription::SignalId stateChanged;
- void EmitActiveDescendantChanged( Dali::Accessibility::Accessible* obj, Dali::Accessibility::Accessible *child ) override;
- void EmitCaretMoved( Dali::Accessibility::Accessible* obj, unsigned int cursorPosition ) override;
- void EmitTextChanged( Dali::Accessibility::Accessible* obj, Dali::Accessibility::TextChangedState state, unsigned int position, unsigned int length, const std::string &content ) override;
- void EmitStateChanged( Dali::Accessibility::Accessible* obj, Dali::Accessibility::State state, int val1, int val2 ) override;
- void Emit( Dali::Accessibility::Accessible* obj, Dali::Accessibility::WindowEvent we, unsigned int detail1 ) override;
- void Emit( Dali::Accessibility::Accessible* obj, Dali::Accessibility::ObjectPropertyChangeEvent we ) override;
- void EmitBoundsChanged( Dali::Accessibility::Accessible* obj, Dali::Rect<> rect ) override;
+ void EmitActiveDescendantChanged(Dali::Accessibility::Accessible* obj, Dali::Accessibility::Accessible* child) override;
+ void EmitCaretMoved(Dali::Accessibility::Accessible* obj, unsigned int cursorPosition) override;
+ void EmitTextChanged(Dali::Accessibility::Accessible* obj, Dali::Accessibility::TextChangedState state, unsigned int position, unsigned int length, const std::string& content) override;
+ void EmitStateChanged(Dali::Accessibility::Accessible* obj, Dali::Accessibility::State state, int val1, int val2) override;
+ void Emit(Dali::Accessibility::Accessible* obj, Dali::Accessibility::WindowEvent we, unsigned int detail1) override;
+ void Emit(Dali::Accessibility::Accessible* obj, Dali::Accessibility::ObjectPropertyChangeEvent we) override;
+ void EmitBoundsChanged(Dali::Accessibility::Accessible* obj, Dali::Rect<> rect) override;
public:
- int GetChildCount();
- DBus::ValueOrError< Dali::Accessibility::Accessible* > GetChildAtIndex( int index );
- Dali::Accessibility::Accessible* GetParent();
- DBus::ValueOrError< std::vector< Dali::Accessibility::Accessible* > > GetChildren();
- std::string GetName();
- std::string GetDescription();
- DBus::ValueOrError< uint32_t > GetRole();
- DBus::ValueOrError< std::string > GetRoleName();
- DBus::ValueOrError< std::string > GetLocalizedRoleName();
- DBus::ValueOrError< int32_t > GetIndexInParent();
- DBus::ValueOrError< std::array< uint32_t, 2 > > GetStates();
- DBus::ValueOrError< std::unordered_map< std::string, std::string > > GetAttributes();
- DBus::ValueOrError< std::vector< std::string > > GetInterfaces();
+ int GetChildCount();
+ DBus::ValueOrError<Dali::Accessibility::Accessible*> GetChildAtIndex(int index);
+ Dali::Accessibility::Accessible* GetParent();
+ DBus::ValueOrError<std::vector<Dali::Accessibility::Accessible*> > GetChildren();
+ std::string GetName();
+ std::string GetDescription();
+ DBus::ValueOrError<uint32_t> GetRole();
+ DBus::ValueOrError<std::string> GetRoleName();
+ DBus::ValueOrError<std::string> GetLocalizedRoleName();
+ DBus::ValueOrError<int32_t> GetIndexInParent();
+ DBus::ValueOrError<std::array<uint32_t, 2> > GetStates();
+ DBus::ValueOrError<std::unordered_map<std::string, std::string> > GetAttributes();
+ DBus::ValueOrError<std::vector<std::string> > GetInterfaces();
};
#endif // DALI_INTERNAL_ACCESSIBILITY_BRIDGE_OBJECT_H
#define DALI_INTERNAL_ACCESSIBILITY_BRIDGE_TEXT_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
Dali::Accessibility::Text* FindSelf() const;
public:
- DBus::ValueOrError< std::string > GetText( int startOffset, int endOffset );
- DBus::ValueOrError< int32_t > GetCharacterCount();
- DBus::ValueOrError< int32_t > GetCaretOffset();
- DBus::ValueOrError< bool > SetCaretOffset( int32_t offset );
- DBus::ValueOrError< std::string, int, int > GetTextAtOffset( int32_t offset, uint32_t boundary );
- DBus::ValueOrError< int, int > GetSelection( int32_t selectionNum );
- DBus::ValueOrError< bool > RemoveSelection( int32_t selectionNum );
- DBus::ValueOrError< bool > SetSelection( int32_t selectionNum, int32_t startOffset, int32_t endOffset );
+ DBus::ValueOrError<std::string> GetText(int startOffset, int endOffset);
+ DBus::ValueOrError<int32_t> GetCharacterCount();
+ DBus::ValueOrError<int32_t> GetCaretOffset();
+ DBus::ValueOrError<bool> SetCaretOffset(int32_t offset);
+ DBus::ValueOrError<std::string, int, int> GetTextAtOffset(int32_t offset, uint32_t boundary);
+ DBus::ValueOrError<int, int> GetSelection(int32_t selectionNum);
+ DBus::ValueOrError<bool> RemoveSelection(int32_t selectionNum);
+ DBus::ValueOrError<bool> SetSelection(int32_t selectionNum, int32_t startOffset, int32_t endOffset);
};
#endif // DALI_INTERNAL_ACCESSIBILITY_BRIDGE_TEXT_H
#define DALI_INTERNAL_ACCESSIBILITY_BRIDGE_VALUE_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
public:
double GetCurrentValue();
- void SetCurrentValue( double new_value );
+ void SetCurrentValue(double new_value);
double GetMaximumValue();
double GetMinimumIncrement();
double GetMinimumValue();
{
namespace callmgr
{
-static constexpr const char* BUS = "org.tizen.callmgr";
-static constexpr const char* OBJ_PATH = "/org/tizen/callmgr";
+static constexpr const char* BUS = "org.tizen.callmgr";
+static constexpr const char* OBJ_PATH = "/org/tizen/callmgr";
static constexpr const char* INTERFACE = "org.tizen.callmgr";
-}
+} // namespace callmgr
namespace accessibilityEMod
{
-static constexpr const char* BUS = "org.enlightenment.wm-screen-reader";
-static constexpr const char* OBJ_PATH = "/org/tizen/GestureNavigation";
+static constexpr const char* BUS = "org.enlightenment.wm-screen-reader";
+static constexpr const char* OBJ_PATH = "/org/tizen/GestureNavigation";
static constexpr const char* INTERFACE = "org.tizen.GestureNavigation";
static constexpr const char* ACCESSORIES_SP_ENABLED = "AccessoriesSwitchProviderEnabled";
-static constexpr const char* KEY_DOWN_SIGNAL = "KeyDown";
-static constexpr const char* KEY_UP_SIGNAL = "KeyUp";
+static constexpr const char* KEY_DOWN_SIGNAL = "KeyDown";
+static constexpr const char* KEY_UP_SIGNAL = "KeyUp";
static constexpr const char* SCREEN_SP_ENABLED = "ScreenSwitchProviderEnabled";
static constexpr const char* MOUSE_DOWN_SIGNAL = "MouseDown";
-static constexpr const char* MOUSE_UP_SIGNAL = "MouseUp";
+static constexpr const char* MOUSE_UP_SIGNAL = "MouseUp";
static constexpr const char* BACK_BUTTON_INTERCEPTION_ENABLED = "BackButtonInterceptionEnabled";
-static constexpr const char* BACK_BUTTON_DOWN_SIGNAL = "BackButtonDown";
-static constexpr const char* BACK_BUTTON_UP_SIGNAL = "BackButtonUp";
-}
+static constexpr const char* BACK_BUTTON_DOWN_SIGNAL = "BackButtonDown";
+static constexpr const char* BACK_BUTTON_UP_SIGNAL = "BackButtonUp";
+} // namespace accessibilityEMod
namespace freeDesktop
{
-static constexpr const char* BUS = "org.freedesktop.DBus";
-static constexpr const char* OBJ_PATH = "/org/freedesktop/DBus";
-static constexpr const char* INTERFACE = "org.freedesktop.DBus";
-static constexpr const char* PROPERTIES_INTERFACE = "org.freedesktop.DBus.Properties";
+static constexpr const char* BUS = "org.freedesktop.DBus";
+static constexpr const char* OBJ_PATH = "/org/freedesktop/DBus";
+static constexpr const char* INTERFACE = "org.freedesktop.DBus";
+static constexpr const char* PROPERTIES_INTERFACE = "org.freedesktop.DBus.Properties";
static constexpr const char* GET_CONNECTION_UNIX_PROCESS_ID = "GetConnectionUnixProcessID";
-static constexpr const char* SET = "Set";
-static constexpr const char* GET = "Get";
-}
+static constexpr const char* SET = "Set";
+static constexpr const char* GET = "Get";
+} // namespace freeDesktop
namespace windowManager
{
-static constexpr const char* BUS = "org.enlightenment.wm";
-static constexpr const char* OBJ_PATH = "/org/enlightenment/wm";
-static constexpr const char* INTERFACE = "org.enlightenment.wm.proc";
+static constexpr const char* BUS = "org.enlightenment.wm";
+static constexpr const char* OBJ_PATH = "/org/enlightenment/wm";
+static constexpr const char* INTERFACE = "org.enlightenment.wm.proc";
static constexpr const char* GET_VISIBLE_WIN_INFO = "GetVisibleWinInfo";
-static constexpr const char* GET_FOCUS_PROC = "GetFocusProc";
-}
+static constexpr const char* GET_FOCUS_PROC = "GetFocusProc";
+} // namespace windowManager
namespace atspi
{
-static constexpr const char* BUS = "org.a11y.Bus";
-static constexpr const char* OBJ_PATH = "/org/a11y/bus";
-static constexpr const char* BUS_INTERFACE = "org.a11y.Bus";
+static constexpr const char* BUS = "org.a11y.Bus";
+static constexpr const char* OBJ_PATH = "/org/a11y/bus";
+static constexpr const char* BUS_INTERFACE = "org.a11y.Bus";
static constexpr const char* STATUS_INTERFACE = "org.a11y.Status";
-static constexpr const char* GET_ADDRESS = "GetAddress";
-static constexpr const char* IS_ENABLED = "IsEnabled";
-static constexpr const char* GET_ATTRIBUTES = "GetAttributes";
-static constexpr const char* DO_ACTION_NAME = "DoActionName";
-static constexpr const char* PARENT = "Parent";
-static constexpr const char* GET_MATCHES = "GetMatches";
-static constexpr const char* GET_INDEX_IN_PARENT = "GetIndexInParent";
-static constexpr const char* SELECT_CHILD = "SelectChild";
-static constexpr const char* NAME = "Name";
-static constexpr const char* GET_ROLE = "GetRole";
-static constexpr const char* CHILD_COUNT = "ChildCount";
-static constexpr const char* GET_CHILD_AT_INDEX = "GetChildAtIndex";
-static constexpr const char* GET_STATE = "GetState";
-static constexpr const char* GET_RELATION_SET = "GetRelationSet";
-static constexpr const char* GET_EXTENTS = "GetExtents";
-static constexpr const char* CURRENT_VALUE = "CurrentValue";
-static constexpr const char* MAXIMUM_VALUE = "MaximumValue";
-static constexpr const char* MINIMUM_VALUE = "MinimumValue";
-static constexpr const char* GET_INTERFACES = "GetInterfaces";
+static constexpr const char* GET_ADDRESS = "GetAddress";
+static constexpr const char* IS_ENABLED = "IsEnabled";
+static constexpr const char* GET_ATTRIBUTES = "GetAttributes";
+static constexpr const char* DO_ACTION_NAME = "DoActionName";
+static constexpr const char* PARENT = "Parent";
+static constexpr const char* GET_MATCHES = "GetMatches";
+static constexpr const char* GET_INDEX_IN_PARENT = "GetIndexInParent";
+static constexpr const char* SELECT_CHILD = "SelectChild";
+static constexpr const char* NAME = "Name";
+static constexpr const char* GET_ROLE = "GetRole";
+static constexpr const char* CHILD_COUNT = "ChildCount";
+static constexpr const char* GET_CHILD_AT_INDEX = "GetChildAtIndex";
+static constexpr const char* GET_STATE = "GetState";
+static constexpr const char* GET_RELATION_SET = "GetRelationSet";
+static constexpr const char* GET_EXTENTS = "GetExtents";
+static constexpr const char* CURRENT_VALUE = "CurrentValue";
+static constexpr const char* MAXIMUM_VALUE = "MaximumValue";
+static constexpr const char* MINIMUM_VALUE = "MinimumValue";
+static constexpr const char* GET_INTERFACES = "GetInterfaces";
static constexpr const char* GET_NAVIGABLE_AT_POINT = "GetNavigableAtPoint";
-}
-}
+} // namespace atspi
+} // namespace dbusLocators
#endif // DALI_INTERNAL_ACCESSIBILITY_BRIDGE_DBUS_LOCATORS_H
#include <vector>
// INTERNAL INCLUDES
-#include <dali/public-api/common/dali-common.h>
#include <dali/devel-api/adaptor-framework/accessibility.h>
+#include <dali/public-api/common/dali-common.h>
#define ATSPI_PREFIX_PATH "/org/a11y/atspi/accessible/"
#define ATSPI_NULL_PATH "/org/a11y/atspi/null"
};
#define DEFINE_TYPE(name, eldbus_name, unref_call) \
- struct name { virtual ~name() = default; }; \
- using name ## Ptr = std::shared_ptr<name>; \
- using name ## WeakPtr = std::weak_ptr<name>; \
+ struct name \
+ { \
+ virtual ~name() = default; \
+ }; \
+ using name##Ptr = std::shared_ptr<name>; \
+ using name##WeakPtr = std::weak_ptr<name>;
DEFINE_TYPE(Connection, Eldbus_Connection, )
- DEFINE_TYPE(MessageIter, Eldbus_Message_Iter, eldbus_message_iter_container_close(Value))
- DEFINE_TYPE(Message, Eldbus_Message, eldbus_message_unref(Value))
- DEFINE_TYPE(Proxy, Eldbus_Proxy, eldbus_proxy_unref(Value))
- DEFINE_TYPE(Object, Eldbus_Object, eldbus_object_unref(Value))
- DEFINE_TYPE(Pending, Eldbus_Pending, )
- DEFINE_TYPE(EventPropertyChanged, Eldbus_Proxy_Event_Property_Changed, )
+ DEFINE_TYPE(MessageIter, Eldbus_Message_Iter, eldbus_message_iter_container_close(Value))
+ DEFINE_TYPE(Message, Eldbus_Message, eldbus_message_unref(Value))
+ DEFINE_TYPE(Proxy, Eldbus_Proxy, eldbus_proxy_unref(Value))
+ DEFINE_TYPE(Object, Eldbus_Object, eldbus_object_unref(Value))
+ DEFINE_TYPE(Pending, Eldbus_Pending, )
+ DEFINE_TYPE(EventPropertyChanged, Eldbus_Proxy_Event_Property_Changed, )
#undef DEFINE_TYPE
- virtual ConnectionPtr eldbus_address_connection_get_impl(const std::string& addr) = 0;
+ virtual ConnectionPtr eldbus_address_connection_get_impl(const std::string& addr) = 0;
-#define eldbus_message_iter_arguments_append_impl_basic_impl(type_set, type_get, sig) \
- virtual void eldbus_message_iter_arguments_append_impl(const MessageIterPtr &it, type_set src) = 0; \
- virtual bool eldbus_message_iter_get_and_next_impl(const MessageIterPtr &it, type_get &dst) = 0;
+#define eldbus_message_iter_arguments_append_impl_basic_impl(type_set, type_get, sig) \
+ virtual void eldbus_message_iter_arguments_append_impl(const MessageIterPtr& it, type_set src) = 0; \
+ virtual bool eldbus_message_iter_get_and_next_impl(const MessageIterPtr& it, type_get& dst) = 0;
#define eldbus_message_iter_arguments_append_impl_basic(type, sig) \
eldbus_message_iter_arguments_append_impl_basic_impl(type, type, sig)
+ // clang-format off
eldbus_message_iter_arguments_append_impl_basic(uint8_t, y)
- eldbus_message_iter_arguments_append_impl_basic(uint16_t, q)
- eldbus_message_iter_arguments_append_impl_basic(uint32_t, u)
- eldbus_message_iter_arguments_append_impl_basic(uint64_t, t)
- eldbus_message_iter_arguments_append_impl_basic(int16_t, n)
- eldbus_message_iter_arguments_append_impl_basic(int32_t, i)
- eldbus_message_iter_arguments_append_impl_basic(int64_t, x)
- eldbus_message_iter_arguments_append_impl_basic(double, d)
- eldbus_message_iter_arguments_append_impl_basic(bool, b)
- eldbus_message_iter_arguments_append_impl_basic_impl(const std::string&, std::string, s)
- eldbus_message_iter_arguments_append_impl_basic_impl(const ObjectPath&, ObjectPath, o)
+ eldbus_message_iter_arguments_append_impl_basic(uint16_t, q)
+ eldbus_message_iter_arguments_append_impl_basic(uint32_t, u)
+ eldbus_message_iter_arguments_append_impl_basic(uint64_t, t)
+ eldbus_message_iter_arguments_append_impl_basic(int16_t, n)
+ eldbus_message_iter_arguments_append_impl_basic(int32_t, i)
+ eldbus_message_iter_arguments_append_impl_basic(int64_t, x)
+ eldbus_message_iter_arguments_append_impl_basic(double, d)
+ eldbus_message_iter_arguments_append_impl_basic(bool, b)
+ eldbus_message_iter_arguments_append_impl_basic_impl(const std::string&, std::string, s)
+ eldbus_message_iter_arguments_append_impl_basic_impl(const ObjectPath&, ObjectPath, o)
#undef eldbus_message_iter_arguments_append_impl_basic
#undef eldbus_message_iter_arguments_append_impl_basic_impl
- virtual MessageIterPtr eldbus_message_iter_container_new_impl(const MessageIterPtr& it, int type, const std::string& sig) = 0;
- virtual MessageIterPtr eldbus_message_iter_get_and_next_by_type_impl(const MessageIterPtr& it, int type) = 0;
- virtual MessageIterPtr eldbus_message_iter_get_impl(const MessagePtr& it, bool write) = 0;
- virtual MessagePtr eldbus_proxy_method_call_new_impl(const ProxyPtr& proxy, const std::string& funcName) = 0;
- virtual MessagePtr eldbus_proxy_send_and_block_impl(const ProxyPtr& proxy, const MessagePtr& msg) = 0;
- virtual bool eldbus_message_error_get_impl(const MessagePtr& msg, std::string& name, std::string& text) = 0;
- virtual std::string eldbus_message_signature_get_impl(const MessagePtr& msg) = 0;
-
- using SendCallback = std::function<void(const MessagePtr & msg)>;
- virtual PendingPtr eldbus_proxy_send_impl(const ProxyPtr& proxy, const MessagePtr& msg, const SendCallback& callback) = 0;
- virtual std::string eldbus_proxy_interface_get_impl(const ProxyPtr&) = 0;
- virtual void eldbus_proxy_signal_handler_add_impl(const ProxyPtr& proxy, const std::string& member, const std::function<void(const MessagePtr&)>& cb) = 0;
- virtual std::string eldbus_message_iter_signature_get_impl(const MessageIterPtr& iter) = 0;
- virtual MessagePtr eldbus_message_method_return_new_impl(const MessagePtr& msg) = 0;
- virtual MessagePtr eldbus_message_error_new_impl(const MessagePtr& msg, const std::string& err, const std::string& txt) = 0;
- virtual PendingPtr eldbus_connection_send_impl(const ConnectionPtr& conn, const MessagePtr& msg) = 0;
- virtual MessagePtr eldbus_message_signal_new_impl(const std::string& path, const std::string& iface, const std::string& name) = 0;
- virtual MessagePtr eldbus_message_ref_impl(const MessagePtr& msg) = 0;
- virtual ConnectionPtr eldbus_connection_get_impl(ConnectionType type) = 0;
- virtual std::string eldbus_connection_unique_name_get_impl(const ConnectionPtr& conn) = 0;
- virtual ObjectPtr eldbus_object_get_impl(const ConnectionPtr& conn, const std::string& bus, const std::string& path) = 0;
- virtual ProxyPtr eldbus_proxy_get_impl(const ObjectPtr& obj, const std::string& interface) = 0;
- virtual ProxyPtr eldbus_proxy_copy_impl(const ProxyPtr& ptr) = 0;
+ virtual MessageIterPtr eldbus_message_iter_container_new_impl(const MessageIterPtr& it, int type, const std::string& sig) = 0;
+ virtual MessageIterPtr eldbus_message_iter_get_and_next_by_type_impl(const MessageIterPtr& it, int type) = 0;
+ virtual MessageIterPtr eldbus_message_iter_get_impl(const MessagePtr& it, bool write) = 0;
+ virtual MessagePtr eldbus_proxy_method_call_new_impl(const ProxyPtr& proxy, const std::string& funcName) = 0;
+ virtual MessagePtr eldbus_proxy_send_and_block_impl(const ProxyPtr& proxy, const MessagePtr& msg) = 0;
+ virtual bool eldbus_message_error_get_impl(const MessagePtr& msg, std::string& name, std::string& text) = 0;
+ virtual std::string eldbus_message_signature_get_impl(const MessagePtr& msg) = 0;
+ // clang-format on
+
+ using SendCallback = std::function<void(const MessagePtr& msg)>;
+
+ virtual PendingPtr eldbus_proxy_send_impl(const ProxyPtr& proxy, const MessagePtr& msg, const SendCallback& callback) = 0;
+ virtual std::string eldbus_proxy_interface_get_impl(const ProxyPtr&) = 0;
+ virtual void eldbus_proxy_signal_handler_add_impl(const ProxyPtr& proxy, const std::string& member, const std::function<void(const MessagePtr&)>& cb) = 0;
+ virtual std::string eldbus_message_iter_signature_get_impl(const MessageIterPtr& iter) = 0;
+ virtual MessagePtr eldbus_message_method_return_new_impl(const MessagePtr& msg) = 0;
+ virtual MessagePtr eldbus_message_error_new_impl(const MessagePtr& msg, const std::string& err, const std::string& txt) = 0;
+ virtual PendingPtr eldbus_connection_send_impl(const ConnectionPtr& conn, const MessagePtr& msg) = 0;
+ virtual MessagePtr eldbus_message_signal_new_impl(const std::string& path, const std::string& iface, const std::string& name) = 0;
+ virtual MessagePtr eldbus_message_ref_impl(const MessagePtr& msg) = 0;
+ virtual ConnectionPtr eldbus_connection_get_impl(ConnectionType type) = 0;
+ virtual std::string eldbus_connection_unique_name_get_impl(const ConnectionPtr& conn) = 0;
+ virtual ObjectPtr eldbus_object_get_impl(const ConnectionPtr& conn, const std::string& bus, const std::string& path) = 0;
+ virtual ProxyPtr eldbus_proxy_get_impl(const ObjectPtr& obj, const std::string& interface) = 0;
+ virtual ProxyPtr eldbus_proxy_copy_impl(const ProxyPtr& ptr) = 0;
class StringStorage
{
free(p);
}
};
- std::vector< std::unique_ptr< char, char_ptr_deleter > > storage;
+ std::vector<std::unique_ptr<char, char_ptr_deleter>> storage;
const char* add(const char* txt)
{
auto ptr = strdup(txt);
- storage.push_back(std::unique_ptr< char, char_ptr_deleter >(ptr));
+ storage.push_back(std::unique_ptr<char, char_ptr_deleter>(ptr));
return storage.back().get();
}
const char* add(const std::string& txt)
struct CallId
{
- static std::atomic< unsigned int > LastId;
- unsigned int id = ++LastId;
+ static std::atomic<unsigned int> LastId;
+ unsigned int id = ++LastId;
};
struct MethodInfo
{
- CallId id;
- std::string memberName;
- std::vector< std::pair<std::string, std::string> > in, out; // _Eldbus_Arg_Info
- std::function< DBusWrapper::MessagePtr(const DBusWrapper::MessagePtr & msg) > callback;
+ CallId id;
+ std::string memberName;
+ std::vector<std::pair<std::string, std::string>> in, out; // _Eldbus_Arg_Info
+ std::function<DBusWrapper::MessagePtr(const DBusWrapper::MessagePtr& msg)> callback;
};
struct SignalInfo
{
- CallId id;
- std::string memberName;
- std::vector< std::pair<std::string, std::string> > args;
- unsigned int uniqueId;
+ CallId id;
+ std::string memberName;
+ std::vector<std::pair<std::string, std::string>> args;
+ unsigned int uniqueId;
};
struct PropertyInfo
{
- CallId setterId, getterId;
- std::string memberName, typeSignature;
- std::function< std::string(const DBusWrapper::MessagePtr & src, const DBusWrapper::MessageIterPtr & dst) > getCallback, setCallback;
+ CallId setterId, getterId;
+ std::string memberName, typeSignature;
+ std::function<std::string(const DBusWrapper::MessagePtr&src, const DBusWrapper::MessageIterPtr&dst)> getCallback, setCallback;
};
struct SignalId
{
CallId id;
SignalId() = default;
- SignalId(CallId id) : id(id) {}
+ SignalId(CallId id)
+ : id(id)
+ {
+ }
};
- virtual void add_interface_impl(bool fallback, const std::string& pathName,
- const ConnectionPtr& connection,
- std::vector<std::function<void()>>& destructors,
- const std::string& interfaceName,
- std::vector< MethodInfo >& dscrMethods,
- std::vector< PropertyInfo >& dscrProperties,
- std::vector< SignalInfo >& dscrSignals) = 0;
- virtual void add_property_changed_event_listener_impl(const ProxyPtr& proxy, const std::string& interface, const std::string& name, std::function< void(const _Eina_Value*) > cb) = 0;
+ virtual void add_interface_impl(bool fallback, const std::string& pathName, const ConnectionPtr& connection, std::vector<std::function<void()>>& destructors, const std::string& interfaceName, std::vector<MethodInfo>& dscrMethods, std::vector<PropertyInfo>& dscrProperties, std::vector<SignalInfo>& dscrSignals) = 0;
+ virtual void add_property_changed_event_listener_impl(const ProxyPtr& proxy, const std::string& interface, const std::string& name, std::function<void(const _Eina_Value*)> cb) = 0;
static DBusWrapper* Installed();
- static void Install(std::unique_ptr<DBusWrapper>);
+ static void Install(std::unique_ptr<DBusWrapper>);
StringStorage Strings;
};
-namespace detail {
- enum class MethodType {
- Method, Getter, Setter
- };
+namespace detail
+{
+enum class MethodType
+{
+ Method,
+ Getter,
+ Setter
+};
}
-namespace std {
- template <> struct hash<std::tuple<std::string, std::string, std::string>> {
- size_t operator () (const std::tuple<std::string, std::string, std::string>& a) const {
- auto a1 = std::hash<std::string>()(std::get<0>(a));
- auto a2 = std::hash<std::string>()(std::get<1>(a));
- auto a3 = std::hash<std::string>()(std::get<2>(a));
- size_t v = a1;
- v = (v * 11400714819323198485llu) + a2;
- v = (v * 11400714819323198485llu) + a3;
- return v;
- }
+namespace std
+{
+template<>
+struct hash<std::tuple<std::string, std::string, std::string>>
+{
+ size_t operator()(const std::tuple<std::string, std::string, std::string>& a) const
+ {
+ auto a1 = std::hash<std::string>()(std::get<0>(a));
+ auto a2 = std::hash<std::string>()(std::get<1>(a));
+ auto a3 = std::hash<std::string>()(std::get<2>(a));
+ size_t v = a1;
+ v = (v * 11400714819323198485llu) + a2;
+ v = (v * 11400714819323198485llu) + a3;
+ return v;
+ }
+};
+template<>
+struct hash<std::tuple<std::string, std::string, std::string, detail::MethodType>>
+{
+ size_t operator()(const std::tuple<std::string, std::string, std::string, detail::MethodType>& a) const
+ {
+ auto a1 = std::hash<std::string>()(std::get<0>(a));
+ auto a2 = std::hash<std::string>()(std::get<1>(a));
+ auto a3 = std::hash<std::string>()(std::get<2>(a));
+ auto a4 = static_cast<size_t>(std::get<3>(a));
+ size_t v = a1;
+ v = (v * 11400714819323198485llu) + a2;
+ v = (v * 11400714819323198485llu) + a3;
+ v = (v * 11400714819323198485llu) + a4;
+ return v;
+ }
+};
+template<>
+struct hash<std::tuple<std::string, std::string, unsigned int>>
+{
+ size_t operator()(const std::tuple<std::string, std::string, unsigned int>& a) const
+ {
+ auto a1 = std::hash<std::string>()(std::get<0>(a));
+ auto a2 = std::hash<std::string>()(std::get<1>(a));
+ auto a3 = std::get<2>(a);
+ size_t v = a1;
+ v = (v * 11400714819323198485llu) + a2;
+ v = (v * 11400714819323198485llu) + a3;
+ return v;
+ }
+};
+} // namespace std
+
+namespace detail
+{
+template<typename T>
+struct DBusSigImpl
+{
+ enum
+ {
+ value = 0,
+ end = 0
};
- template <> struct hash<std::tuple<std::string, std::string, std::string, detail::MethodType>> {
- size_t operator () (const std::tuple<std::string, std::string, std::string, detail::MethodType>& a) const {
- auto a1 = std::hash<std::string>()(std::get<0>(a));
- auto a2 = std::hash<std::string>()(std::get<1>(a));
- auto a3 = std::hash<std::string>()(std::get<2>(a));
- auto a4 = static_cast<size_t>(std::get<3>(a));
- size_t v = a1;
- v = (v * 11400714819323198485llu) + a2;
- v = (v * 11400714819323198485llu) + a3;
- v = (v * 11400714819323198485llu) + a4;
- return v;
- }
+};
+template<typename T>
+struct DBusSig
+{
+ enum
+ {
+ value = DBusSigImpl<typename std::decay<T>::type>::value,
+ end = DBusSigImpl<typename std::decay<T>::type>::end
};
- template <> struct hash<std::tuple<std::string, std::string, unsigned int>> {
- size_t operator () (const std::tuple<std::string, std::string, unsigned int>& a) const {
- auto a1 = std::hash<std::string>()(std::get<0>(a));
- auto a2 = std::hash<std::string>()(std::get<1>(a));
- auto a3 = std::get<2>(a);
- size_t v = a1;
- v = (v * 11400714819323198485llu) + a2;
- v = (v * 11400714819323198485llu) + a3;
- return v;
- }
+};
+template<typename T, typename Q, size_t I, size_t S>
+struct IndexFromTypeTupleImpl
+{
+ enum
+ {
+ value = std::is_same<typename std::decay<typename std::tuple_element<I, T>::type>::type, Q>::value ? I : IndexFromTypeTupleImpl<T, Q, I + 1, S>::value
};
-}
-
-namespace detail {
- template <typename T> struct DBusSigImpl { enum { value = 0, end = 0 }; };
- template <typename T> struct DBusSig { enum { value = DBusSigImpl<typename std::decay<T>::type>::value, end = DBusSigImpl<typename std::decay<T>::type>::end }; };
- template <typename T, typename Q, size_t I, size_t S> struct IndexFromTypeTupleImpl {
- enum { value = std::is_same<typename std::decay<typename std::tuple_element<I, T>::type>::type, Q>::value ? I : IndexFromTypeTupleImpl<T, Q, I + 1, S>::value };
+};
+template<typename T, typename Q, size_t S>
+struct IndexFromTypeTupleImpl<T, Q, S, S>
+{
+ enum
+ {
+ value = S
};
- template <typename T, typename Q, size_t S> struct IndexFromTypeTupleImpl<T, Q, S, S> { enum { value = S }; };
- template <typename T, typename Q> struct IndexFromTypeTuple {
- enum { value = IndexFromTypeTupleImpl<T, typename std::decay<Q>::type, 0, std::tuple_size<T>::value>::value };
+};
+template<typename T, typename Q>
+struct IndexFromTypeTuple
+{
+ enum
+ {
+ value = IndexFromTypeTupleImpl<T, typename std::decay<Q>::type, 0, std::tuple_size<T>::value>::value
};
- template <typename T, typename = void> struct Encoder;
- template <size_t I, size_t S, typename ... ARGS> struct EncoderTuple;
-}
-
-namespace detail {
- template <> struct DBusSigImpl<uint8_t> { enum { value = 'y', end = 0 }; };
- template <> struct DBusSigImpl<uint16_t> { enum { value = 'q', end = 0 }; };
- template <> struct DBusSigImpl<uint32_t> { enum { value = 'u', end = 0 }; };
- template <> struct DBusSigImpl<uint64_t> { enum { value = 't', end = 0 }; };
- template <> struct DBusSigImpl<int16_t> { enum { value = 'n', end = 0 }; };
- template <> struct DBusSigImpl<int32_t> { enum { value = 'i', end = 0 }; };
- template <> struct DBusSigImpl<int64_t> { enum { value = 'x', end = 0 }; };
- template <> struct DBusSigImpl<double> { enum { value = 'd', end = 0 }; };
- template <> struct DBusSigImpl<bool> { enum { value = 'b', end = 0 }; };
- template <> struct DBusSigImpl<std::string> { enum { value = 's', end = 0 }; };
- template <> struct DBusSigImpl<ObjectPath> { enum { value = 'o', end = 0 }; };
-}
+};
+template<typename T, typename = void>
+struct Encoder;
+template<size_t I, size_t S, typename... ARGS>
+struct EncoderTuple;
+} // namespace detail
+namespace detail
+{
+template<>
+struct DBusSigImpl<uint8_t>
+{
+ enum
+ {
+ value = 'y',
+ end = 0
+ };
+};
+template<>
+struct DBusSigImpl<uint16_t>
+{
+ enum
+ {
+ value = 'q',
+ end = 0
+ };
+};
+template<>
+struct DBusSigImpl<uint32_t>
+{
+ enum
+ {
+ value = 'u',
+ end = 0
+ };
+};
+template<>
+struct DBusSigImpl<uint64_t>
+{
+ enum
+ {
+ value = 't',
+ end = 0
+ };
+};
+template<>
+struct DBusSigImpl<int16_t>
+{
+ enum
+ {
+ value = 'n',
+ end = 0
+ };
+};
+template<>
+struct DBusSigImpl<int32_t>
+{
+ enum
+ {
+ value = 'i',
+ end = 0
+ };
+};
+template<>
+struct DBusSigImpl<int64_t>
+{
+ enum
+ {
+ value = 'x',
+ end = 0
+ };
+};
+template<>
+struct DBusSigImpl<double>
+{
+ enum
+ {
+ value = 'd',
+ end = 0
+ };
+};
+template<>
+struct DBusSigImpl<bool>
+{
+ enum
+ {
+ value = 'b',
+ end = 0
+ };
+};
+template<>
+struct DBusSigImpl<std::string>
+{
+ enum
+ {
+ value = 's',
+ end = 0
+ };
+};
+template<>
+struct DBusSigImpl<ObjectPath>
+{
+ enum
+ {
+ value = 'o',
+ end = 0
+ };
+};
+} // namespace detail
-#define DBUS_DEBUG( ... ) \
- do \
- { \
- DBus::debugPrint( __FILE__, __LINE__, __VA_ARGS__ ); \
- } while( 0 )
+#define DBUS_DEBUG(...) \
+ do \
+ { \
+ DBus::debugPrint(__FILE__, __LINE__, __VA_ARGS__); \
+ } while(0)
#define DBUS_W DBusWrapper::Installed()
*/
namespace DBus
{
+class DBusServer;
+class DBusClient;
+class DBusInterfaceDescription;
- class DBusServer;
- class DBusClient;
- class DBusInterfaceDescription;
-
- /**
+/**
* @brief Formats debug message and calls debug printer (if any) with it
*/
- void debugPrint(const char* file, size_t line, const char* format, ...);
+void debugPrint(const char* file, size_t line, const char* format, ...);
- /**
+/**
* @brief Sets debug printer callback, which will be called with debug messages
*
* Callback will be called in various moments of DBus activity. First value passed to callback
* is pointer to text, second it's length. Text is ended with 0 (not counted towards it's size),
* user can safely printf it.
*/
- void setDebugPrinter(std::function< void(const char*, size_t) >);
-
- struct Error
- {
- std::string message;
+void setDebugPrinter(std::function<void(const char*, size_t)>);
- Error() = default;
- Error(std::string msg) : message(std::move(msg))
- {
- assert(!message.empty());
- }
- };
+struct Error
+{
+ std::string message;
- struct Success
+ Error() = default;
+ Error(std::string msg)
+ : message(std::move(msg))
{
- };
+ assert(!message.empty());
+ }
+};
+struct Success
+{
+};
- /**
+/**
* @brief Value representing data, that came from DBUS or error message
*
* Object of this class either helds series of values (of types ARGS...)
* Both mean the same - ValueOrError containing no real data and being a marker,
* wherever operation successed or failed and containing possible error message.
*/
- template < typename... ARGS >
- class ValueOrError
- {
- public:
- /**
+template<typename... ARGS>
+class ValueOrError
+{
+public:
+ /**
* @brief Empty constructor. Valid only, if all ARGS types are default constructible.
*/
- ValueOrError() = default;
+ ValueOrError() = default;
- /**
+ /**
* @brief Value constructor.
*
* This will be initialized as success with passed in values.
*/
- ValueOrError(ARGS... t) : value(std::move(t)...) {}
+ ValueOrError(ARGS... t)
+ : value(std::move(t)...)
+ {
+ }
- /**
+ /**
* @brief Alternative Value constructor.
*
* This will be initialized as success with passed in values.
*/
- ValueOrError(std::tuple< ARGS... > t) : value(std::move(t)) {}
+ ValueOrError(std::tuple<ARGS...> t)
+ : value(std::move(t))
+ {
+ }
- /**
+ /**
* @brief Error constructor. This will be initialized as failure with given error message.
*/
- ValueOrError(Error e) : error(std::move(e))
- {
- assert(!error.message.empty());
- }
+ ValueOrError(Error e)
+ : error(std::move(e))
+ {
+ assert(!error.message.empty());
+ }
- /**
+ /**
* @brief bool operator.
*
* Returns true, if operation was successful (getValues member is callable), or false
* when operation failed (getError is callable).
*/
- explicit operator bool() const
- {
- return error.message.empty();
- }
+ explicit operator bool() const
+ {
+ return error.message.empty();
+ }
- /**
+ /**
* @brief Returns error message object.
*
* Returns object containing error message associated with the failed operation.
* Only callable, if operation actually failed, otherwise will assert.
*/
- const Error& getError() const
- {
- return error;
- }
+ const Error& getError() const
+ {
+ return error;
+ }
- /**
+ /**
* @brief Returns modifiable tuple of held data.
*
* Returns reference to the internal tuple containing held data.
* User can modify (or move) data safely.
* Only callable, if operation actually successed, otherwise will assert.
*/
- std::tuple< ARGS... >& getValues()
- {
- assert(*this);
- return value;
- }
+ std::tuple<ARGS...>& getValues()
+ {
+ assert(*this);
+ return value;
+ }
- /**
+ /**
* @brief Returns const tuple of held data.
*
* Returns const reference to the internal tuple containing held data.
* Only callable, if operation actually successed, otherwise will assert.
*/
- const std::tuple< ARGS... >& getValues() const
- {
- assert(*this);
- return value;
- }
-
- protected:
- std::tuple< ARGS... > value;
- Error error;
-
- };
+ const std::tuple<ARGS...>& getValues() const
+ {
+ assert(*this);
+ return value;
+ }
+protected:
+ std::tuple<ARGS...> value;
+ Error error;
+};
- template <>
- class ValueOrError<>
+template<>
+class ValueOrError<>
+{
+public:
+ ValueOrError() = default;
+ ValueOrError(std::tuple<> t)
{
- public:
- ValueOrError() = default;
- ValueOrError(std::tuple<> t) {}
- ValueOrError(Error e) : error(std::move(e))
- {
- assert(!error.message.empty());
- }
+ }
+ ValueOrError(Error e)
+ : error(std::move(e))
+ {
+ assert(!error.message.empty());
+ }
- explicit operator bool() const
- {
- return error.message.empty();
- }
- const Error& getError() const
- {
- return error;
- }
- std::tuple<>& getValues()
- {
- assert(*this);
- static std::tuple<> t;
- return t;
- }
- std::tuple<> getValues() const
- {
- assert(*this);
- return {};
- }
+ explicit operator bool() const
+ {
+ return error.message.empty();
+ }
+ const Error& getError() const
+ {
+ return error;
+ }
+ std::tuple<>& getValues()
+ {
+ assert(*this);
+ static std::tuple<> t;
+ return t;
+ }
+ std::tuple<> getValues() const
+ {
+ assert(*this);
+ return {};
+ }
- protected:
- Error error;
- };
+protected:
+ Error error;
+};
- template <>
- class ValueOrError< void >
+template<>
+class ValueOrError<void>
+{
+public:
+ ValueOrError() = default;
+ ValueOrError(Success)
{
- public:
- ValueOrError() = default;
- ValueOrError(Success) {}
- ValueOrError(Error e) : error(std::move(e))
- {
- assert(!error.message.empty());
- }
-
- explicit operator bool() const
- {
- return error.message.empty();
- }
- const Error& getError() const
- {
- return error;
- }
- std::tuple<>& getValues()
- {
- assert(*this);
- static std::tuple<> t;
- return t;
- }
- std::tuple<> getValues() const
- {
- assert(*this);
- return {};
- }
+ }
+ ValueOrError(Error e)
+ : error(std::move(e))
+ {
+ assert(!error.message.empty());
+ }
- protected:
- Error error;
- };
+ explicit operator bool() const
+ {
+ return error.message.empty();
+ }
+ const Error& getError() const
+ {
+ return error;
+ }
+ std::tuple<>& getValues()
+ {
+ assert(*this);
+ static std::tuple<> t;
+ return t;
+ }
+ std::tuple<> getValues() const
+ {
+ assert(*this);
+ return {};
+ }
- using ObjectPath = ObjectPath;
+protected:
+ Error error;
+};
+using ObjectPath = ObjectPath;
- /**
+/**
* @brief Class used to marshall DBUS's variant type
*
* Minimalistic class, that allows user to specify DBUS variant type
* as return data in variant. So for example user can't specify method call, which on return
* expects DBUS variant holding either string or int.
*/
- template < typename A >
- struct EldbusVariant
- {
- A value;
- };
+template<typename A>
+struct EldbusVariant
+{
+ A value;
+};
- /**
+/**
* @brief Namespace for private, internal functions and classes
*/
- namespace detail
- {
- inline namespace strings {
- template <std::size_t N>
- using char_array = std::array<char, N>;
-
- constexpr char *xcopy_n(const char *src, size_t n, char *dst)
- {
- for (std::size_t i = 0; i < n; ++i)
- dst[i] = src[i];
+namespace detail
+{
+inline namespace strings
+{
+template<std::size_t N>
+using char_array = std::array<char, N>;
- return dst + n;
- }
+constexpr char* xcopy_n(const char* src, size_t n, char* dst)
+{
+ for(std::size_t i = 0; i < n; ++i)
+ dst[i] = src[i];
- template <std::size_t N>
- constexpr std::size_t xlen(const char (&)[N])
- {
- return N - 1;
- }
+ return dst + n;
+}
- template <std::size_t N>
- constexpr std::size_t xlen(const char_array<N> &)
- {
- return N - 1;
- }
+template<std::size_t N>
+constexpr std::size_t xlen(const char (&)[N])
+{
+ return N - 1;
+}
- template <typename... Args>
- constexpr auto concat(const Args &... args)
- {
- char_array<(1U + ... + xlen(args))> arr{};
- char *ptr = arr.data();
+template<std::size_t N>
+constexpr std::size_t xlen(const char_array<N>&)
+{
+ return N - 1;
+}
- if constexpr (!arr.empty())
- ((ptr = xcopy_n(std::data(args), xlen(args), ptr)), ...);
+template<typename... Args>
+constexpr auto concat(const Args&... args)
+{
+ char_array<(1U + ... + xlen(args))> arr{};
+ char* ptr = arr.data();
- return arr;
- }
+ if constexpr(!arr.empty())
+ ((ptr = xcopy_n(std::data(args), xlen(args), ptr)), ...);
- template<std::size_t... Digits>
- struct to_chars {
- static constexpr const char value[] = {('0' + static_cast<char>(Digits))..., '\0'};
+ return arr;
+}
- static_assert((true && ... && (Digits < 10)));
- };
+template<std::size_t... Digits>
+struct to_chars
+{
+ static constexpr const char value[] = {('0' + static_cast<char>(Digits))..., '\0'};
- template<std::size_t Remainder, std::size_t... Digits>
- struct to_chars_helper : to_chars_helper<Remainder / 10, Remainder % 10, Digits...> {};
+ static_assert((true && ... && (Digits < 10)));
+};
- template<std::size_t... Digits>
- struct to_chars_helper<0, Digits...> : to_chars<Digits...> {};
+template<std::size_t Remainder, std::size_t... Digits>
+struct to_chars_helper : to_chars_helper<Remainder / 10, Remainder % 10, Digits...>
+{
+};
- template<std::size_t N>
- using to_string = to_chars_helper<N / 10, N % 10>;
- }
+template<std::size_t... Digits>
+struct to_chars_helper<0, Digits...> : to_chars<Digits...>
+{
+};
- template < typename T, typename = void >
- struct signature;
- template < typename... ARGS >
- struct signature< std::tuple< ARGS... > >;
- template < typename A, typename B >
- struct signature< std::pair< A, B > >;
- template < typename A >
- struct signature< std::vector< A > >;
- template < typename A, size_t N >
- struct signature< std::array< A, N > >;
- template < typename A, typename B >
- struct signature< std::unordered_map< A, B > >;
- template < typename A, typename B >
- struct signature< std::map< A, B > >;
-
- template <typename T>
- struct signature_helper
- {
- /**
+template<std::size_t N>
+using to_string = to_chars_helper<N / 10, N % 10>;
+} // namespace strings
+
+template<typename T, typename = void>
+struct signature;
+template<typename... ARGS>
+struct signature<std::tuple<ARGS...>>;
+template<typename A, typename B>
+struct signature<std::pair<A, B>>;
+template<typename A>
+struct signature<std::vector<A>>;
+template<typename A, size_t N>
+struct signature<std::array<A, N>>;
+template<typename A, typename B>
+struct signature<std::unordered_map<A, B>>;
+template<typename A, typename B>
+struct signature<std::map<A, B>>;
+
+template<typename T>
+struct signature_helper
+{
+ /**
* @brief Returns name of type marshalled, for informative purposes
*/
- static constexpr std::string_view name()
- {
- return {T::name_v.data()};
- }
+ static constexpr std::string_view name()
+ {
+ return {T::name_v.data()};
+ }
- /**
+ /**
* @brief Returns DBUS' signature of type marshalled
*/
- static constexpr std::string_view sig()
- {
- return {T::sig_v.data()};
- }
- };
+ static constexpr std::string_view sig()
+ {
+ return {T::sig_v.data()};
+ }
+};
- /**
+/**
* @brief Signature class for marshalling uint8 type.
*/
- template <>
- struct signature< uint8_t > : signature_helper<signature<uint8_t>>
- {
- static constexpr auto name_v = concat("uint8_t");
- static constexpr auto sig_v = concat("y");
+template<>
+struct signature<uint8_t> : signature_helper<signature<uint8_t>>
+{
+ static constexpr auto name_v = concat("uint8_t");
+ static constexpr auto sig_v = concat("y");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, uint8_t v)
- {
- DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, uint8_t v)
+ {
+ DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, uint8_t& v)
- {
- return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, uint8_t& v)
+ {
+ return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
+ }
+};
- /**
+/**
* @brief Signature class for marshalling uint16 type.
*/
- template <>
- struct signature< uint16_t > : signature_helper<signature<uint16_t>>
- {
- static constexpr auto name_v = concat("uint16_t");
- static constexpr auto sig_v = concat("q");
+template<>
+struct signature<uint16_t> : signature_helper<signature<uint16_t>>
+{
+ static constexpr auto name_v = concat("uint16_t");
+ static constexpr auto sig_v = concat("q");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, uint16_t v)
- {
- DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, uint16_t v)
+ {
+ DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, uint16_t& v)
- {
- return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, uint16_t& v)
+ {
+ return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
+ }
+};
- /**
+/**
* @brief Signature class for marshalling uint32 type.
*/
- template <>
- struct signature< uint32_t > : signature_helper<signature<uint32_t>>
- {
- static constexpr auto name_v = concat("uint32_t");
- static constexpr auto sig_v = concat("u");
+template<>
+struct signature<uint32_t> : signature_helper<signature<uint32_t>>
+{
+ static constexpr auto name_v = concat("uint32_t");
+ static constexpr auto sig_v = concat("u");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, uint32_t v)
- {
- DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, uint32_t v)
+ {
+ DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, uint32_t& v)
- {
- return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, uint32_t& v)
+ {
+ return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
+ }
+};
- /**
+/**
* @brief Signature class for marshalling uint64 type.
*/
- template <>
- struct signature< uint64_t > : signature_helper<signature<uint64_t>>
- {
- static constexpr auto name_v = concat("uint64_t");
- static constexpr auto sig_v = concat("t");
+template<>
+struct signature<uint64_t> : signature_helper<signature<uint64_t>>
+{
+ static constexpr auto name_v = concat("uint64_t");
+ static constexpr auto sig_v = concat("t");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, uint64_t v)
- {
- DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, uint64_t v)
+ {
+ DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, uint64_t& v)
- {
- return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, uint64_t& v)
+ {
+ return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
+ }
+};
- /**
+/**
* @brief Signature class for marshalling int16 type.
*/
- template <>
- struct signature< int16_t > : signature_helper<signature<int16_t>>
- {
- static constexpr auto name_v = concat("int16_t");
- static constexpr auto sig_v = concat("n");
+template<>
+struct signature<int16_t> : signature_helper<signature<int16_t>>
+{
+ static constexpr auto name_v = concat("int16_t");
+ static constexpr auto sig_v = concat("n");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, int16_t v)
- {
- DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, int16_t v)
+ {
+ DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, int16_t& v)
- {
- return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, int16_t& v)
+ {
+ return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
+ }
+};
- /**
+/**
* @brief Signature class for marshalling int32 type.
*/
- template <>
- struct signature< int32_t > : signature_helper<signature<int32_t>>
- {
- static constexpr auto name_v = concat("int32_t");
- static constexpr auto sig_v = concat("i");
+template<>
+struct signature<int32_t> : signature_helper<signature<int32_t>>
+{
+ static constexpr auto name_v = concat("int32_t");
+ static constexpr auto sig_v = concat("i");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, int32_t v)
- {
- DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, int32_t v)
+ {
+ DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, int32_t& v)
- {
- return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, int32_t& v)
+ {
+ return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
+ }
+};
- /**
+/**
* @brief Signature class for marshalling int64 type.
*/
- template <>
- struct signature< int64_t > : signature_helper<signature<int64_t>>
- {
- static constexpr auto name_v = concat("int64_t");
- static constexpr auto sig_v = concat("x");
+template<>
+struct signature<int64_t> : signature_helper<signature<int64_t>>
+{
+ static constexpr auto name_v = concat("int64_t");
+ static constexpr auto sig_v = concat("x");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, int64_t v)
- {
- DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, int64_t v)
+ {
+ DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, int64_t& v)
- {
- return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, int64_t& v)
+ {
+ return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
+ }
+};
- /**
+/**
* @brief Signature class for marshalling double type.
*/
- template <>
- struct signature< double > : signature_helper<signature<double>>
- {
- static constexpr auto name_v = concat("double");
- static constexpr auto sig_v = concat("d");
+template<>
+struct signature<double> : signature_helper<signature<double>>
+{
+ static constexpr auto name_v = concat("double");
+ static constexpr auto sig_v = concat("d");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, double v)
- {
- DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, double v)
+ {
+ DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, double& v)
- {
- return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
- }
+ static bool get(const DBusWrapper::MessageIterPtr& iter, double& v)
+ {
+ return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, float& v2)
- {
- double v = 0;
- auto r = DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
- v2 = static_cast<float>(v);
- return r;
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, float& v2)
+ {
+ double v = 0;
+ auto r = DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
+ v2 = static_cast<float>(v);
+ return r;
+ }
+};
- /**
+/**
* @brief Signature class for marshalling float type.
*/
- template <>
- struct signature< float > : signature_helper<signature<float>>
- {
- static constexpr auto name_v = concat("float");
- static constexpr auto sig_v = concat("d");
+template<>
+struct signature<float> : signature_helper<signature<float>>
+{
+ static constexpr auto name_v = concat("float");
+ static constexpr auto sig_v = concat("d");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, float v)
- {
- DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, float v)
+ {
+ DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, double& v)
- {
- return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
- }
+ static bool get(const DBusWrapper::MessageIterPtr& iter, double& v)
+ {
+ return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, float& v2)
- {
- double v = 0;
- auto r = DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
- v2 = static_cast<float>(v);
- return r;
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, float& v2)
+ {
+ double v = 0;
+ auto r = DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
+ v2 = static_cast<float>(v);
+ return r;
+ }
+};
- /**
+/**
* @brief Signature class for marshalling boolean type.
*/
- template <>
- struct signature< bool > : signature_helper<signature<bool>>
- {
- static constexpr auto name_v = concat("bool");
- static constexpr auto sig_v = concat("b");
+template<>
+struct signature<bool> : signature_helper<signature<bool>>
+{
+ static constexpr auto name_v = concat("bool");
+ static constexpr auto sig_v = concat("b");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, bool v)
- {
- DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, bool v)
+ {
+ DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, bool& v)
- {
- return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, bool& v)
+ {
+ return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
+ }
+};
- template < typename T >
- struct signature<T, typename std::enable_if_t<std::is_enum_v<T>, void>> : signature_helper<signature<T>>
- {
- static constexpr auto name_v = concat("enum");
- static constexpr auto sig_v = signature<typename std::underlying_type<T>::type>::sig_v;
+template<typename T>
+struct signature<T, typename std::enable_if_t<std::is_enum_v<T>, void>> : signature_helper<signature<T>>
+{
+ static constexpr auto name_v = concat("enum");
+ static constexpr auto sig_v = signature<typename std::underlying_type<T>::type>::sig_v;
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, T v)
- {
- signature<typename std::underlying_type<T>::type>::set(iter, static_cast<int64_t>(v));
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, T v)
+ {
+ signature<typename std::underlying_type<T>::type>::set(iter, static_cast<int64_t>(v));
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, T& v)
- {
- typename std::underlying_type<T>::type q = 0;
- if (!signature<typename std::underlying_type<T>::type>::get(iter, q))
- return false;
+ static bool get(const DBusWrapper::MessageIterPtr& iter, T& v)
+ {
+ typename std::underlying_type<T>::type q = 0;
+ if(!signature<typename std::underlying_type<T>::type>::get(iter, q))
+ return false;
- v = static_cast<T>(q);
- return true;
- }
- };
+ v = static_cast<T>(q);
+ return true;
+ }
+};
- /**
+/**
* @brief Signature class for marshalling string type.
*
* Both (const) char * and std::string types are accepted as value to send.
* Only std::string is accepted as value to receive.
*/
- template <>
- struct signature< std::string > : signature_helper<signature<std::string>>
- {
- static constexpr auto name_v = concat("string");
- static constexpr auto sig_v = concat("s");
+template<>
+struct signature<std::string> : signature_helper<signature<std::string>>
+{
+ static constexpr auto name_v = concat("string");
+ static constexpr auto sig_v = concat("s");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const std::string& v)
- {
- DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const std::string& v)
+ {
+ DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, std::string& v)
- {
- return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, std::string& v)
+ {
+ return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
+ }
+};
- template <>
- struct signature< ObjectPath > : signature_helper<signature<ObjectPath>>
- {
- static constexpr auto name_v = concat("path");
- static constexpr auto sig_v = concat("o");
+template<>
+struct signature<ObjectPath> : signature_helper<signature<ObjectPath>>
+{
+ static constexpr auto name_v = concat("path");
+ static constexpr auto sig_v = concat("o");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const std::string& v)
- {
- DBUS_W->eldbus_message_iter_arguments_append_impl(iter, ObjectPath{ v });
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const std::string& v)
+ {
+ DBUS_W->eldbus_message_iter_arguments_append_impl(iter, ObjectPath{v});
+ }
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const ObjectPath& v)
- {
- DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const ObjectPath& v)
+ {
+ DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
+ }
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const char* v)
- {
- DBUS_W->eldbus_message_iter_arguments_append_impl(iter, ObjectPath{ v });
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const char* v)
+ {
+ DBUS_W->eldbus_message_iter_arguments_append_impl(iter, ObjectPath{v});
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, ObjectPath& v)
- {
- return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
- }
+ static bool get(const DBusWrapper::MessageIterPtr& iter, ObjectPath& v)
+ {
+ return DBUS_W->eldbus_message_iter_get_and_next_impl(iter, v);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, std::string& v)
- {
- ObjectPath q;
- if (!DBUS_W->eldbus_message_iter_get_and_next_impl(iter, q)) return false;
- v = std::move(q.value);
- return true;
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, std::string& v)
+ {
+ ObjectPath q;
+ if(!DBUS_W->eldbus_message_iter_get_and_next_impl(iter, q)) return false;
+ v = std::move(q.value);
+ return true;
+ }
+};
- /**
+/**
* @brief Signature class for marshalling (const) char * type.
*
* Both (const) char * and std::string types are accepted as value to send.
* You can't use (const) char * variable type to receive value.
*/
- template <>
- struct signature< char* > : signature_helper<signature<char *>>
- {
- static constexpr auto name_v = concat("string");
- static constexpr auto sig_v = concat("s");
+template<>
+struct signature<char*> : signature_helper<signature<char*>>
+{
+ static constexpr auto name_v = concat("string");
+ static constexpr auto sig_v = concat("s");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const std::string& v)
- {
- DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const std::string& v)
+ {
+ DBUS_W->eldbus_message_iter_arguments_append_impl(iter, v);
+ }
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const char* v)
- {
- DBUS_W->eldbus_message_iter_arguments_append_impl(iter, std::string{ v });
- }
- };
-
- template < size_t INDEX, typename A, typename... ARGS >
- struct signature_tuple_element_type_helper
- {
- using type = typename signature_tuple_element_type_helper< INDEX - 1, ARGS... >::type;
- };
+ static void set(const DBusWrapper::MessageIterPtr& iter, const char* v)
+ {
+ DBUS_W->eldbus_message_iter_arguments_append_impl(iter, std::string{v});
+ }
+};
- template < typename A, typename... ARGS >
- struct signature_tuple_element_type_helper< 0, A, ARGS... >
- {
- using type = A;
- };
+template<size_t INDEX, typename A, typename... ARGS>
+struct signature_tuple_element_type_helper
+{
+ using type = typename signature_tuple_element_type_helper<INDEX - 1, ARGS...>::type;
+};
- /**
+template<typename A, typename... ARGS>
+struct signature_tuple_element_type_helper<0, A, ARGS...>
+{
+ using type = A;
+};
+
+/**
* @brief Helper class to marshall tuples
*
* This class marshals all elements of the tuple value starting at the index INDEX
* and incrementing. This class recursively calls itself with increasing INDEX value
* until INDEX is equal to SIZE, where recursive calling ends.
*/
- template < size_t INDEX, size_t SIZE, typename... ARGS >
- struct signature_tuple_helper : signature_helper<signature_tuple_helper<INDEX, SIZE, ARGS...>>
- {
- using current_type = typename signature_tuple_element_type_helper< INDEX, ARGS... >::type;
+template<size_t INDEX, size_t SIZE, typename... ARGS>
+struct signature_tuple_helper : signature_helper<signature_tuple_helper<INDEX, SIZE, ARGS...>>
+{
+ using current_type = typename signature_tuple_element_type_helper<INDEX, ARGS...>::type;
- static constexpr auto name_v = concat(signature<current_type>::name_v, ", ", signature_tuple_helper<INDEX + 1, SIZE, ARGS...>::name_v);
- static constexpr auto sig_v = concat(signature<current_type>::sig_v, signature_tuple_helper<INDEX + 1, SIZE, ARGS...>::sig_v);
+ static constexpr auto name_v = concat(signature<current_type>::name_v, ", ", signature_tuple_helper<INDEX + 1, SIZE, ARGS...>::name_v);
+ static constexpr auto sig_v = concat(signature<current_type>::sig_v, signature_tuple_helper<INDEX + 1, SIZE, ARGS...>::sig_v);
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const std::tuple< ARGS... >& args)
- {
- signature< current_type >::set(iter, std::get< INDEX >(args));
- signature_tuple_helper< INDEX + 1, SIZE, ARGS... >::set(iter, args);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const std::tuple<ARGS...>& args)
+ {
+ signature<current_type>::set(iter, std::get<INDEX>(args));
+ signature_tuple_helper<INDEX + 1, SIZE, ARGS...>::set(iter, args);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, std::tuple< ARGS... >& args)
- {
- return signature< current_type >::get(iter, std::get< INDEX >(args)) &&
- signature_tuple_helper< INDEX + 1, SIZE, ARGS... >::get(iter, args);
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, std::tuple<ARGS...>& args)
+ {
+ return signature<current_type>::get(iter, std::get<INDEX>(args)) &&
+ signature_tuple_helper<INDEX + 1, SIZE, ARGS...>::get(iter, args);
+ }
+};
- /**
+/**
* @brief Helper class to marshall tuples
*
* This class marks end of the tuple marshalling. Members of this class are called
* when INDEX value is equal to SIZE.
*/
- template < size_t SIZE, typename... ARGS >
- struct signature_tuple_helper< SIZE, SIZE, ARGS... > : signature_helper<signature_tuple_helper<SIZE, SIZE, ARGS...>>
- {
- static constexpr auto name_v = concat("");
- static constexpr auto sig_v = concat("");
+template<size_t SIZE, typename... ARGS>
+struct signature_tuple_helper<SIZE, SIZE, ARGS...> : signature_helper<signature_tuple_helper<SIZE, SIZE, ARGS...>>
+{
+ static constexpr auto name_v = concat("");
+ static constexpr auto sig_v = concat("");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const std::tuple< ARGS... >& args)
- {
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const std::tuple<ARGS...>& args)
+ {
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, std::tuple< ARGS... >& args)
- {
- return true;
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, std::tuple<ARGS...>& args)
+ {
+ return true;
+ }
+};
- /**
+/**
* @brief Signature class for marshalling tuple of values
*
* This class marshalls tuple of values. This represents
* DBUS struct typle, encoded with character 'r'
*/
- template < typename... ARGS >
- struct signature< std::tuple< ARGS... > > : signature_helper<signature<std::tuple<ARGS...>>>
- {
- static constexpr auto name_v = concat("tuple<", signature_tuple_helper<0, sizeof...(ARGS), ARGS...>::name_v, ">");
- static constexpr auto sig_v = concat("(", signature_tuple_helper<0, sizeof...(ARGS), ARGS...>::sig_v, ")");
+template<typename... ARGS>
+struct signature<std::tuple<ARGS...>> : signature_helper<signature<std::tuple<ARGS...>>>
+{
+ static constexpr auto name_v = concat("tuple<", signature_tuple_helper<0, sizeof...(ARGS), ARGS...>::name_v, ">");
+ static constexpr auto sig_v = concat("(", signature_tuple_helper<0, sizeof...(ARGS), ARGS...>::sig_v, ")");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const std::tuple< ARGS... >& args)
- {
- auto entry = DBUS_W->eldbus_message_iter_container_new_impl(iter, 'r', "");
- signature_tuple_helper< 0, sizeof...(ARGS), ARGS... >::set(entry, args);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const std::tuple<ARGS...>& args)
+ {
+ auto entry = DBUS_W->eldbus_message_iter_container_new_impl(iter, 'r', "");
+ signature_tuple_helper<0, sizeof...(ARGS), ARGS...>::set(entry, args);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, std::tuple< ARGS... >& args)
- {
- auto entry = DBUS_W->eldbus_message_iter_get_and_next_by_type_impl(iter, 'r');
- if (!entry) return false;
- return signature_tuple_helper< 0, sizeof...(ARGS), ARGS... >::get(entry, args);
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, std::tuple<ARGS...>& args)
+ {
+ auto entry = DBUS_W->eldbus_message_iter_get_and_next_by_type_impl(iter, 'r');
+ if(!entry) return false;
+ return signature_tuple_helper<0, sizeof...(ARGS), ARGS...>::get(entry, args);
+ }
+};
- /**
+/**
* @brief Signature class for marshalling ValueOrError template type
*
* ValueOrError template type is used to marshall list of values passed to
* or
* \code{.cpp} ValueOrError<std::tuple<std::string, std::string, std::tuple<std::string>>> \endcode
*/
- template < typename... ARGS >
- struct signature< ValueOrError< ARGS... > > : signature_helper<signature<ValueOrError<ARGS...>>>
- {
- static constexpr auto name_v = concat("ValueOrError<", signature_tuple_helper<0, sizeof...(ARGS), ARGS...>::name_v, ">");
- static constexpr auto sig_v = signature_tuple_helper<0, sizeof...(ARGS), ARGS...>::sig_v;
+template<typename... ARGS>
+struct signature<ValueOrError<ARGS...>> : signature_helper<signature<ValueOrError<ARGS...>>>
+{
+ static constexpr auto name_v = concat("ValueOrError<", signature_tuple_helper<0, sizeof...(ARGS), ARGS...>::name_v, ">");
+ static constexpr auto sig_v = signature_tuple_helper<0, sizeof...(ARGS), ARGS...>::sig_v;
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const ValueOrError< ARGS... >& args)
- {
- signature_tuple_helper< 0, sizeof...(ARGS), ARGS... >::set(iter, args.getValues());
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const ValueOrError<ARGS...>& args)
+ {
+ signature_tuple_helper<0, sizeof...(ARGS), ARGS...>::set(iter, args.getValues());
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, ValueOrError< ARGS... >& args)
- {
- return signature_tuple_helper< 0, sizeof...(ARGS), ARGS... >::get(iter, args.getValues());
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, ValueOrError<ARGS...>& args)
+ {
+ return signature_tuple_helper<0, sizeof...(ARGS), ARGS...>::get(iter, args.getValues());
+ }
+};
- /**
+/**
* @brief Signature class for marshalling ValueOrError<void> type
*/
- template <>
- struct signature< ValueOrError< void > > : signature_helper<signature<ValueOrError<void>>>
- {
- static constexpr auto name_v = concat("ValueOrError<void>");
- static constexpr auto sig_v = concat("");
+template<>
+struct signature<ValueOrError<void>> : signature_helper<signature<ValueOrError<void>>>
+{
+ static constexpr auto name_v = concat("ValueOrError<void>");
+ static constexpr auto sig_v = concat("");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const ValueOrError< void >& args)
- {
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const ValueOrError<void>& args)
+ {
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, ValueOrError< void >& args)
- {
- return true;
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, ValueOrError<void>& args)
+ {
+ return true;
+ }
+};
- /**
+/**
* @brief Signature class for marshalling ValueOrError<> type
*/
- template <>
- struct signature< ValueOrError<> > : signature_helper<signature<ValueOrError<>>>
- {
- static constexpr auto name_v = concat("ValueOrError<>");
- static constexpr auto sig_v = concat("");
+template<>
+struct signature<ValueOrError<>> : signature_helper<signature<ValueOrError<>>>
+{
+ static constexpr auto name_v = concat("ValueOrError<>");
+ static constexpr auto sig_v = concat("");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const ValueOrError<>& args)
- {
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const ValueOrError<>& args)
+ {
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, ValueOrError<>& args)
- {
- return true;
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, ValueOrError<>& args)
+ {
+ return true;
+ }
+};
- /**
+/**
* @brief Signature class for marshalling pair of types
*/
- template < typename A, typename B >
- struct signature< std::pair< A, B > > : signature_helper<signature<std::pair<A, B>>>
- {
- static constexpr auto name_v = concat("pair<", signature_tuple_helper<0, 2, A, B>::name_v, ">");
- static constexpr auto sig_v = concat("(", signature_tuple_helper<0, 2, A, B>::sig_v, ")");
+template<typename A, typename B>
+struct signature<std::pair<A, B>> : signature_helper<signature<std::pair<A, B>>>
+{
+ static constexpr auto name_v = concat("pair<", signature_tuple_helper<0, 2, A, B>::name_v, ">");
+ static constexpr auto sig_v = concat("(", signature_tuple_helper<0, 2, A, B>::sig_v, ")");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const std::pair< A, B >& ab, bool dictionary = false)
- {
- auto entry = DBUS_W->eldbus_message_iter_container_new_impl(iter, dictionary ? 'e' : 'r', "");
- signature_tuple_helper< 0, 2, A, B >::set(entry, ab);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const std::pair<A, B>& ab, bool dictionary = false)
+ {
+ auto entry = DBUS_W->eldbus_message_iter_container_new_impl(iter, dictionary ? 'e' : 'r', "");
+ signature_tuple_helper<0, 2, A, B>::set(entry, ab);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, std::pair< A, B >& ab)
- {
- auto entry = DBUS_W->eldbus_message_iter_get_and_next_by_type_impl(iter, 'r');
- if (!entry) {
- entry = DBUS_W->eldbus_message_iter_get_and_next_by_type_impl(iter, '{');
- if (!entry) return false;
- }
+ static bool get(const DBusWrapper::MessageIterPtr& iter, std::pair<A, B>& ab)
+ {
+ auto entry = DBUS_W->eldbus_message_iter_get_and_next_by_type_impl(iter, 'r');
+ if(!entry)
+ {
+ entry = DBUS_W->eldbus_message_iter_get_and_next_by_type_impl(iter, '{');
+ if(!entry) return false;
+ }
- std::tuple< A, B > ab_tmp;
- auto z = signature_tuple_helper< 0, 2, A, B >::get(entry, ab_tmp);
- if (z)
- {
- ab.first = std::move(std::get< 0 >(ab_tmp));
- ab.second = std::move(std::get< 1 >(ab_tmp));
- }
- return z;
- }
- };
+ std::tuple<A, B> ab_tmp;
+ auto z = signature_tuple_helper<0, 2, A, B>::get(entry, ab_tmp);
+ if(z)
+ {
+ ab.first = std::move(std::get<0>(ab_tmp));
+ ab.second = std::move(std::get<1>(ab_tmp));
+ }
+ return z;
+ }
+};
- /**
+/**
* @brief Signature class for marshalling std::vector template type
*
* This marshals container's content as DBUS a ascii character type code.
*/
- template < typename A >
- struct signature< std::vector< A > > : signature_helper<signature<std::vector<A>>>
- {
- static constexpr auto name_v = concat("vector<", signature<A>::name_v, ">");
- static constexpr auto sig_v = concat("a", signature<A>::sig_v);
+template<typename A>
+struct signature<std::vector<A>> : signature_helper<signature<std::vector<A>>>
+{
+ static constexpr auto name_v = concat("vector<", signature<A>::name_v, ">");
+ static constexpr auto sig_v = concat("a", signature<A>::sig_v);
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const std::vector< A >& v)
- {
- auto lst = DBUS_W->eldbus_message_iter_container_new_impl(iter, 'a', std::string{signature< A >::sig()});
- assert(lst);
- for (auto& a : v)
- {
- signature< A >::set(lst, a);
- }
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const std::vector<A>& v)
+ {
+ auto lst = DBUS_W->eldbus_message_iter_container_new_impl(iter, 'a', std::string{signature<A>::sig()});
+ assert(lst);
+ for(auto& a : v)
+ {
+ signature<A>::set(lst, a);
+ }
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, std::vector< A >& v)
- {
- auto s = DBUS_W->eldbus_message_iter_get_and_next_by_type_impl(iter, 'a');
- if (!s) return false;
- v.clear();
- A a;
- while (signature< A >::get(s, a))
- v.push_back(std::move(a));
-
- return true;
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, std::vector<A>& v)
+ {
+ auto s = DBUS_W->eldbus_message_iter_get_and_next_by_type_impl(iter, 'a');
+ if(!s) return false;
+ v.clear();
+ A a;
+ while(signature<A>::get(s, a))
+ v.push_back(std::move(a));
+
+ return true;
+ }
+};
- /**
+/**
* @brief Signature class for marshalling std::array template type
*
* This marshals container's content as DBUS a ascii character type code.
*/
- template < typename A, size_t N >
- struct signature< std::array< A, N > > : signature_helper<signature<std::array<A, N>>>
- {
- static constexpr auto name_v = concat("array<", signature<A>::name_v, ", ", to_string<N>::value, ">");
- static constexpr auto sig_v = concat("a", signature<A>::sig_v);
+template<typename A, size_t N>
+struct signature<std::array<A, N>> : signature_helper<signature<std::array<A, N>>>
+{
+ static constexpr auto name_v = concat("array<", signature<A>::name_v, ", ", to_string<N>::value, ">");
+ static constexpr auto sig_v = concat("a", signature<A>::sig_v);
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const std::array< A, N >& v)
- {
- auto lst = DBUS_W->eldbus_message_iter_container_new_impl(iter, 'a', std::string{signature< A >::sig()});
- assert(lst);
- for (auto& a : v)
- {
- signature< A >::set(lst, a);
- }
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const std::array<A, N>& v)
+ {
+ auto lst = DBUS_W->eldbus_message_iter_container_new_impl(iter, 'a', std::string{signature<A>::sig()});
+ assert(lst);
+ for(auto& a : v)
+ {
+ signature<A>::set(lst, a);
+ }
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, std::array< A, N >& v)
- {
- auto s = DBUS_W->eldbus_message_iter_get_and_next_by_type_impl(iter, 'a');
- if (!s)
- return false;
- for (auto& a : v)
- {
- if (!signature< A >::get(s, a))
- return false;
- }
- return true;
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, std::array<A, N>& v)
+ {
+ auto s = DBUS_W->eldbus_message_iter_get_and_next_by_type_impl(iter, 'a');
+ if(!s)
+ return false;
+ for(auto& a : v)
+ {
+ if(!signature<A>::get(s, a))
+ return false;
+ }
+ return true;
+ }
+};
- /**
+/**
* @brief Signature class for marshalling EldbusVariant type
*
* This marshals variant's content as DBUS v ascii character type code.
*/
- template < typename A >
- struct signature< EldbusVariant< A > > : signature_helper<signature<EldbusVariant<A>>>
- {
- static constexpr auto name_v = concat("variant<", signature<A>::name_v, ">");
- static constexpr auto sig_v = concat("v");
+template<typename A>
+struct signature<EldbusVariant<A>> : signature_helper<signature<EldbusVariant<A>>>
+{
+ static constexpr auto name_v = concat("variant<", signature<A>::name_v, ">");
+ static constexpr auto sig_v = concat("v");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const EldbusVariant< A >& v)
- {
- set(iter, v.value);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const EldbusVariant<A>& v)
+ {
+ set(iter, v.value);
+ }
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const A& v)
- {
- auto var = DBUS_W->eldbus_message_iter_container_new_impl(iter, 'v', std::string{signature< A >::sig()});
- signature< A >::set(var, v);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const A& v)
+ {
+ auto var = DBUS_W->eldbus_message_iter_container_new_impl(iter, 'v', std::string{signature<A>::sig()});
+ signature<A>::set(var, v);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, EldbusVariant< A >& v)
- {
- auto s = DBUS_W->eldbus_message_iter_get_and_next_by_type_impl(iter, 'v');
- if (!s)
- return false;
- return signature< A >::get(s, v.value);
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, EldbusVariant<A>& v)
+ {
+ auto s = DBUS_W->eldbus_message_iter_get_and_next_by_type_impl(iter, 'v');
+ if(!s)
+ return false;
+ return signature<A>::get(s, v.value);
+ }
+};
- /**
+/**
* @brief Signature class for marshalling std::unordered_map template type
*
* This marshals container's content as DBUS {} ascii character type code.
* User can receive such values as std::vector of std::pair<key, value> values.
* Order of such values is unspecified.
*/
- template < typename A, typename B >
- struct signature< std::unordered_map< A, B > > : signature_helper<signature<std::unordered_map<A, B>>>
- {
- static constexpr auto name_v = concat("unordered_map<", signature<A>::name_v, ", ", signature<B>::name_v, ">");
- static constexpr auto sig_v = concat("a{", signature_tuple_helper<0, 2, A, B>::sig_v, "}");
+template<typename A, typename B>
+struct signature<std::unordered_map<A, B>> : signature_helper<signature<std::unordered_map<A, B>>>
+{
+ static constexpr auto name_v = concat("unordered_map<", signature<A>::name_v, ", ", signature<B>::name_v, ">");
+ static constexpr auto sig_v = concat("a{", signature_tuple_helper<0, 2, A, B>::sig_v, "}");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const std::unordered_map< A, B >& v)
- {
- auto sig = "{" + std::string{signature_tuple_helper< 0, 2, A, B >::sig()} + "}";
- auto lst = DBUS_W->eldbus_message_iter_container_new_impl(iter, 'a', sig);
- assert(lst);
- for (auto& a : v)
- {
- signature< std::pair< A, B > >::set(lst, a, true);
- }
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const std::unordered_map<A, B>& v)
+ {
+ auto sig = "{" + std::string{signature_tuple_helper<0, 2, A, B>::sig()} + "}";
+ auto lst = DBUS_W->eldbus_message_iter_container_new_impl(iter, 'a', sig);
+ assert(lst);
+ for(auto& a : v)
+ {
+ signature<std::pair<A, B>>::set(lst, a, true);
+ }
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, std::unordered_map< A, B >& v)
- {
- auto s = DBUS_W->eldbus_message_iter_get_and_next_by_type_impl(iter, 'a');
- v.clear();
- if (!s)
- return false;
- std::pair< A, B > a;
- while (signature< std::pair< A, B > >::get(s, a))
- v.insert(std::move(a));
- return true;
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, std::unordered_map<A, B>& v)
+ {
+ auto s = DBUS_W->eldbus_message_iter_get_and_next_by_type_impl(iter, 'a');
+ v.clear();
+ if(!s)
+ return false;
+ std::pair<A, B> a;
+ while(signature<std::pair<A, B>>::get(s, a))
+ v.insert(std::move(a));
+ return true;
+ }
+};
- /**
+/**
* @brief Signature class for marshalling std::unordered_map template type
*
* This marshals container's content as DBUS {} ascii character type code.
* User can receive such values as std::vector of std::pair<key, value> values.
* Order of such values is unspecified.
*/
- template < typename A, typename B >
- struct signature< std::map< A, B > > : signature_helper<signature<std::map<A, B>>>
- {
- static constexpr auto name_v = concat("map<", signature<A>::name_v, ", ", signature<B>::name_v, ">");
- static constexpr auto sig_v = concat("a{", signature_tuple_helper<0, 2, A, B>::sig_v, "}");
+template<typename A, typename B>
+struct signature<std::map<A, B>> : signature_helper<signature<std::map<A, B>>>
+{
+ static constexpr auto name_v = concat("map<", signature<A>::name_v, ", ", signature<B>::name_v, ">");
+ static constexpr auto sig_v = concat("a{", signature_tuple_helper<0, 2, A, B>::sig_v, "}");
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const std::map< A, B >& v)
- {
- auto sig = "{" + std::string{signature_tuple_helper< 0, 2, A, B >::sig()} + "}";
- auto lst = DBUS_W->eldbus_message_iter_container_new_impl(iter, 'a', sig);
- assert(lst);
- for (auto& a : v)
- {
- signature< std::pair< A, B > >::set(lst, a, true);
- }
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const std::map<A, B>& v)
+ {
+ auto sig = "{" + std::string{signature_tuple_helper<0, 2, A, B>::sig()} + "}";
+ auto lst = DBUS_W->eldbus_message_iter_container_new_impl(iter, 'a', sig);
+ assert(lst);
+ for(auto& a : v)
+ {
+ signature<std::pair<A, B>>::set(lst, a, true);
+ }
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static bool get(const DBusWrapper::MessageIterPtr& iter, std::map< A, B >& v)
- {
- auto s = DBUS_W->eldbus_message_iter_get_and_next_by_type_impl(iter, 'a');
- if (!s)
- return false;
- std::pair< A, B > a;
- while (signature< std::pair< A, B > >::get(s, a))
- v.insert(std::move(a));
- return true;
- }
- };
+ static bool get(const DBusWrapper::MessageIterPtr& iter, std::map<A, B>& v)
+ {
+ auto s = DBUS_W->eldbus_message_iter_get_and_next_by_type_impl(iter, 'a');
+ if(!s)
+ return false;
+ std::pair<A, B> a;
+ while(signature<std::pair<A, B>>::get(s, a))
+ v.insert(std::move(a));
+ return true;
+ }
+};
- /**
+/**
* @brief Signature helper class for marshalling const reference types
*/
- template < typename A >
- struct signature< const A& > : signature_helper<signature<const A &>>
- {
- static constexpr auto name_v = concat("const ", signature<A>::name_v, "&");
- static constexpr auto sig_v = signature<A>::sig_v;
+template<typename A>
+struct signature<const A&> : signature_helper<signature<const A&>>
+{
+ static constexpr auto name_v = concat("const ", signature<A>::name_v, "&");
+ static constexpr auto sig_v = signature<A>::sig_v;
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const A& v)
- {
- signature< A >::set(iter, v);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const A& v)
+ {
+ signature<A>::set(iter, v);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static void get(const DBusWrapper::MessageIterPtr& iter, A& v)
- {
- signature< A >::get(iter, v);
- }
- };
+ static void get(const DBusWrapper::MessageIterPtr& iter, A& v)
+ {
+ signature<A>::get(iter, v);
+ }
+};
- /**
+/**
* @brief Signature helper class for marshalling reference types
*/
- template < typename A >
- struct signature< A& > : signature_helper<signature<A &>>
- {
- static constexpr auto name_v = concat(signature<A>::name_v, "&");
- static constexpr auto sig_v = signature<A>::sig_v;
+template<typename A>
+struct signature<A&> : signature_helper<signature<A&>>
+{
+ static constexpr auto name_v = concat(signature<A>::name_v, "&");
+ static constexpr auto sig_v = signature<A>::sig_v;
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const A& v)
- {
- signature< A >::set(iter, v);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const A& v)
+ {
+ signature<A>::set(iter, v);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static void get(const DBusWrapper::MessageIterPtr& iter, A& v)
- {
- signature< A >::get(iter, v);
- }
- };
+ static void get(const DBusWrapper::MessageIterPtr& iter, A& v)
+ {
+ signature<A>::get(iter, v);
+ }
+};
- /**
+/**
* @brief Signature helper class for marshalling const types
*/
- template < typename A >
- struct signature< const A > : signature_helper<signature<const A>>
- {
- static constexpr auto name_v = concat("const ", signature<A>::name_v);
- static constexpr auto sig_v = signature<A>::sig_v;
+template<typename A>
+struct signature<const A> : signature_helper<signature<const A>>
+{
+ static constexpr auto name_v = concat("const ", signature<A>::name_v);
+ static constexpr auto sig_v = signature<A>::sig_v;
- /**
+ /**
* @brief Marshals value v as marshalled type into message
*/
- static void set(const DBusWrapper::MessageIterPtr& iter, const A& v)
- {
- signature< A >::set(iter, v);
- }
+ static void set(const DBusWrapper::MessageIterPtr& iter, const A& v)
+ {
+ signature<A>::set(iter, v);
+ }
- /**
+ /**
* @brief Marshals value from marshalled type into variable v
*/
- static void get(const DBusWrapper::MessageIterPtr& iter, A& v)
- {
- signature< A >::get(iter, v);
- }
- };
+ static void get(const DBusWrapper::MessageIterPtr& iter, A& v)
+ {
+ signature<A>::get(iter, v);
+ }
+};
- using CallId = DBusWrapper::CallId;
+using CallId = DBusWrapper::CallId;
- template < typename ValueType >
- ValueType unpackValues(CallId callId, const DBusWrapper::MessagePtr& msg)
- {
- static const std::string sig{signature< ValueType >::sig().data()};
+template<typename ValueType>
+ValueType unpackValues(CallId callId, const DBusWrapper::MessagePtr& msg)
+{
+ static const std::string sig{signature<ValueType>::sig().data()};
- auto iter = DBUS_W->eldbus_message_iter_get_impl(msg, false);
- ValueType r;
+ auto iter = DBUS_W->eldbus_message_iter_get_impl(msg, false);
+ ValueType r;
- if (iter)
- {
- if (!signature< ValueType >::get(iter, r))
- {
- DBUS_DEBUG("ValueType is %s", signature< ValueType >::name().data());
- r = Error{ "call " + std::to_string(callId.id) + ": failed to unpack values, got signature '" +
- DBUS_W->eldbus_message_signature_get_impl(msg) + "', expected '" + sig + "'" };
- }
- }
- else
- {
- r = Error{ "call " + std::to_string(callId.id) + ": failed to get iterator" };
- }
- return r;
+ if(iter)
+ {
+ if(!signature<ValueType>::get(iter, r))
+ {
+ DBUS_DEBUG("ValueType is %s", signature<ValueType>::name().data());
+ r = Error{"call " + std::to_string(callId.id) + ": failed to unpack values, got signature '" +
+ DBUS_W->eldbus_message_signature_get_impl(msg) + "', expected '" + sig + "'"};
}
+ }
+ else
+ {
+ r = Error{"call " + std::to_string(callId.id) + ": failed to get iterator"};
+ }
+ return r;
+}
- inline void packValues_helper(const DBusWrapper::MessageIterPtr&) {}
+inline void packValues_helper(const DBusWrapper::MessageIterPtr&)
+{
+}
- template < typename A, typename... ARGS >
- void packValues_helper(const DBusWrapper::MessageIterPtr& iter, A&& a, ARGS&&... r)
- {
- signature< A >::set(iter, std::forward< A >(a));
- packValues_helper(iter, std::forward< ARGS >(r)...);
- }
+template<typename A, typename... ARGS>
+void packValues_helper(const DBusWrapper::MessageIterPtr& iter, A&& a, ARGS&&... r)
+{
+ signature<A>::set(iter, std::forward<A>(a));
+ packValues_helper(iter, std::forward<ARGS>(r)...);
+}
- template < typename... ARGS >
- void packValues(CallId callId, const DBusWrapper::MessagePtr& msg, ARGS&&... r)
- {
- auto iter = DBUS_W->eldbus_message_iter_get_impl(msg, true);
- packValues_helper(iter, std::forward< ARGS >(r)...);
- }
+template<typename... ARGS>
+void packValues(CallId callId, const DBusWrapper::MessagePtr& msg, ARGS&&... r)
+{
+ auto iter = DBUS_W->eldbus_message_iter_get_impl(msg, true);
+ packValues_helper(iter, std::forward<ARGS>(r)...);
+}
- struct ConnectionState
- {
- DBusWrapper::ConnectionPtr connection;
- DBusWrapper::ObjectPtr object;
- DBusWrapper::ProxyPtr proxy, propertiesProxy;
- };
+struct ConnectionState
+{
+ DBusWrapper::ConnectionPtr connection;
+ DBusWrapper::ObjectPtr object;
+ DBusWrapper::ProxyPtr proxy, propertiesProxy;
+};
- template < typename RETTYPE, typename... ARGS >
- RETTYPE call(CallId callId, const ConnectionState& connectionState, bool property, const std::string& funcName, const ARGS&... args)
- {
- const auto& proxy = property ? connectionState.propertiesProxy : connectionState.proxy;
- if (!proxy)
- {
- DBUS_DEBUG("call %d: not initialized", callId.id);
- return Error{ "not initialized" };
- }
+template<typename RETTYPE, typename... ARGS>
+RETTYPE call(CallId callId, const ConnectionState& connectionState, bool property, const std::string& funcName, const ARGS&... args)
+{
+ const auto& proxy = property ? connectionState.propertiesProxy : connectionState.proxy;
+ if(!proxy)
+ {
+ DBUS_DEBUG("call %d: not initialized", callId.id);
+ return Error{"not initialized"};
+ }
- DBUS_DEBUG("call %d: calling '%s'", callId.id, funcName.c_str());
- auto msg = DBUS_W->eldbus_proxy_method_call_new_impl(proxy, funcName);
- if (!msg)
- {
- DBUS_DEBUG("call %d: failed", callId.id);
- return Error{ "failed to create message" };
- }
+ DBUS_DEBUG("call %d: calling '%s'", callId.id, funcName.c_str());
+ auto msg = DBUS_W->eldbus_proxy_method_call_new_impl(proxy, funcName);
+ if(!msg)
+ {
+ DBUS_DEBUG("call %d: failed", callId.id);
+ return Error{"failed to create message"};
+ }
- detail::packValues(callId, msg, args...);
- auto reply = DBUS_W->eldbus_proxy_send_and_block_impl(proxy, msg);
- DBUS_DEBUG("call %d: calling '%s' done", callId.id, funcName.c_str());
- if (!reply)
- {
- DBUS_DEBUG("call %d: failed", callId.id);
- return Error{ "eldbus returned null as reply" };
- }
- std::string errname, errmsg;
- if (DBUS_W->eldbus_message_error_get_impl(reply, errname, errmsg))
- {
- DBUS_DEBUG("call %d: %s: %s", callId.id, errname.c_str(), errmsg.c_str());
- return Error{ errname + ": " + errmsg };
- }
- DBUS_DEBUG("call %d: got reply with signature '%s'", callId.id,
- DBUS_W->eldbus_message_signature_get_impl(reply).c_str());
- return detail::unpackValues< RETTYPE >(callId, reply);
- }
+ detail::packValues(callId, msg, args...);
+ auto reply = DBUS_W->eldbus_proxy_send_and_block_impl(proxy, msg);
+ DBUS_DEBUG("call %d: calling '%s' done", callId.id, funcName.c_str());
+ if(!reply)
+ {
+ DBUS_DEBUG("call %d: failed", callId.id);
+ return Error{"eldbus returned null as reply"};
+ }
+ std::string errname, errmsg;
+ if(DBUS_W->eldbus_message_error_get_impl(reply, errname, errmsg))
+ {
+ DBUS_DEBUG("call %d: %s: %s", callId.id, errname.c_str(), errmsg.c_str());
+ return Error{errname + ": " + errmsg};
+ }
+ DBUS_DEBUG("call %d: got reply with signature '%s'", callId.id, DBUS_W->eldbus_message_signature_get_impl(reply).c_str());
+ return detail::unpackValues<RETTYPE>(callId, reply);
+}
- template < typename RETTYPE, typename... ARGS >
- void asyncCall(CallId callId, const ConnectionState& connectionState,
- bool property, const std::string& funcName,
- std::function< void(RETTYPE) > callback, const ARGS&... args)
- {
- const auto& proxy = property ? connectionState.propertiesProxy : connectionState.proxy;
- if (!proxy)
- {
- DBUS_DEBUG("call %d: not initialized", callId.id);
- callback(Error{ "not initialized" });
- return;
- }
+template<typename RETTYPE, typename... ARGS>
+void asyncCall(CallId callId, const ConnectionState& connectionState, bool property, const std::string& funcName, std::function<void(RETTYPE)> callback, const ARGS&... args)
+{
+ const auto& proxy = property ? connectionState.propertiesProxy : connectionState.proxy;
+ if(!proxy)
+ {
+ DBUS_DEBUG("call %d: not initialized", callId.id);
+ callback(Error{"not initialized"});
+ return;
+ }
- auto msg = DBUS_W->eldbus_proxy_method_call_new_impl(proxy, funcName);
- if (!msg)
- {
- DBUS_DEBUG("call %d: failed", callId.id);
- callback(Error{ "failed to create message" });
- return;
- }
+ auto msg = DBUS_W->eldbus_proxy_method_call_new_impl(proxy, funcName);
+ if(!msg)
+ {
+ DBUS_DEBUG("call %d: failed", callId.id);
+ callback(Error{"failed to create message"});
+ return;
+ }
- detail::packValues(callId, msg, args...);
- auto pending = DBUS_W->eldbus_proxy_send_impl(proxy, msg, [callback, callId, proxy](const DBusWrapper::MessagePtr& reply) {
- DBUS_DEBUG("call %d: calling done", callId.id);
- if (!reply)
- {
- DBUS_DEBUG("call %d: failed", callId.id);
- callback(Error{ "eldbus returned null as reply" });
- }
- else
- {
- std::string errname, errmsg;
- if (DBUS_W->eldbus_message_error_get_impl(reply, errname, errmsg))
- {
- DBUS_DEBUG("call %d: %s: %s", callId.id, errname.c_str(), errmsg.c_str());
- callback(Error{ errname + ": " + errmsg });
- }
- else
- {
- DBUS_DEBUG("call %d: got reply with signature '%s'", callId.id,
- DBUS_W->eldbus_message_signature_get_impl(reply).c_str());
- callback(detail::unpackValues< RETTYPE >(callId, reply));
- }
- }
- }
- );
- if (pending)
+ detail::packValues(callId, msg, args...);
+ auto pending = DBUS_W->eldbus_proxy_send_impl(proxy, msg, [callback, callId, proxy](const DBusWrapper::MessagePtr& reply) {
+ DBUS_DEBUG("call %d: calling done", callId.id);
+ if(!reply)
+ {
+ DBUS_DEBUG("call %d: failed", callId.id);
+ callback(Error{"eldbus returned null as reply"});
+ }
+ else
+ {
+ std::string errname, errmsg;
+ if(DBUS_W->eldbus_message_error_get_impl(reply, errname, errmsg))
{
- DBUS_DEBUG("call %d: call sent", callId.id);
+ DBUS_DEBUG("call %d: %s: %s", callId.id, errname.c_str(), errmsg.c_str());
+ callback(Error{errname + ": " + errmsg});
}
else
{
- DBUS_DEBUG("call %d: failed to send call", callId.id);
- callback(Error{ "failed to send call" });
+ DBUS_DEBUG("call %d: got reply with signature '%s'", callId.id, DBUS_W->eldbus_message_signature_get_impl(reply).c_str());
+ callback(detail::unpackValues<RETTYPE>(callId, reply));
}
}
+ });
+ if(pending)
+ {
+ DBUS_DEBUG("call %d: call sent", callId.id);
+ }
+ else
+ {
+ DBUS_DEBUG("call %d: failed to send call", callId.id);
+ callback(Error{"failed to send call"});
+ }
+}
- inline void displayDebugCallInfo(CallId callId, const std::string& funcName, const std::string& info, const std::string& interfaceName)
- {
- DBUS_DEBUG("call %d: %s iname = %s fname = %s", callId.id, info.c_str(), interfaceName.c_str(), funcName.c_str());
- }
-
- inline void displayDebugCallInfoSignal(CallId callId, const std::string& funcName, const std::string& info, const std::string& interfaceName)
- {
- DBUS_DEBUG("call %d: %s signal iname = %s fname = %s", callId.id, info.c_str(), interfaceName.c_str(), funcName.c_str());
- }
+inline void displayDebugCallInfo(CallId callId, const std::string& funcName, const std::string& info, const std::string& interfaceName)
+{
+ DBUS_DEBUG("call %d: %s iname = %s fname = %s", callId.id, info.c_str(), interfaceName.c_str(), funcName.c_str());
+}
- inline void displayDebugCallInfoProperty(CallId callId, const std::string& funcName, std::string info, const std::string& interfaceName,
- const std::string& propertyName)
- {
- DBUS_DEBUG("call %d: %s iname = %s pname = %s", callId.id, info.c_str(), interfaceName.c_str(), propertyName.c_str());
- }
+inline void displayDebugCallInfoSignal(CallId callId, const std::string& funcName, const std::string& info, const std::string& interfaceName)
+{
+ DBUS_DEBUG("call %d: %s signal iname = %s fname = %s", callId.id, info.c_str(), interfaceName.c_str(), funcName.c_str());
+}
- using StringStorage = DBusWrapper::StringStorage;
+inline void displayDebugCallInfoProperty(CallId callId, const std::string& funcName, std::string info, const std::string& interfaceName, const std::string& propertyName)
+{
+ DBUS_DEBUG("call %d: %s iname = %s pname = %s", callId.id, info.c_str(), interfaceName.c_str(), propertyName.c_str());
+}
- template < typename A, typename... ARGS >
- struct EldbusArgGenerator_Helper
- {
- static void add(std::vector< std::pair<std::string, std::string> >& r)
- {
- auto s = r.size();
- auto sig = std::string{signature< A >::sig()};
- assert(!sig.empty());
- auto name = "p" + std::to_string(s + 1);
- r.push_back({ std::move(sig), std::move(name) });
- EldbusArgGenerator_Helper<ARGS...>::add(r);
- }
- };
+using StringStorage = DBusWrapper::StringStorage;
- template <>
- struct EldbusArgGenerator_Helper< void >
- {
- static void add(std::vector< std::pair<std::string, std::string> >&)
- {
- }
- };
+template<typename A, typename... ARGS>
+struct EldbusArgGenerator_Helper
+{
+ static void add(std::vector<std::pair<std::string, std::string>>& r)
+ {
+ auto s = r.size();
+ auto sig = std::string{signature<A>::sig()};
+ assert(!sig.empty());
+ auto name = "p" + std::to_string(s + 1);
+ r.push_back({std::move(sig), std::move(name)});
+ EldbusArgGenerator_Helper<ARGS...>::add(r);
+ }
+};
- template <>
- struct EldbusArgGenerator_Helper< ValueOrError< void >, void >
- {
- static void add(std::vector< std::pair<std::string, std::string> >&)
- {
- }
- };
- template <>
- struct EldbusArgGenerator_Helper< ValueOrError<>, void >
- {
- static void add(std::vector< std::pair<std::string, std::string> >&)
- {
- }
- };
+template<>
+struct EldbusArgGenerator_Helper<void>
+{
+ static void add(std::vector<std::pair<std::string, std::string>>&)
+ {
+ }
+};
- template < typename... ARGS >
- struct EldbusArgGenerator_Helper< std::tuple< ARGS... > >
- {
- static void add(std::vector< std::pair<std::string, std::string> >& r)
- {
- EldbusArgGenerator_Helper< ARGS..., void >::add(r);
- }
- };
+template<>
+struct EldbusArgGenerator_Helper<ValueOrError<void>, void>
+{
+ static void add(std::vector<std::pair<std::string, std::string>>&)
+ {
+ }
+};
+template<>
+struct EldbusArgGenerator_Helper<ValueOrError<>, void>
+{
+ static void add(std::vector<std::pair<std::string, std::string>>&)
+ {
+ }
+};
- template < typename RetType >
- struct dbus_interface_return_type_traits
- {
- using type = ValueOrError< RetType >;
- };
+template<typename... ARGS>
+struct EldbusArgGenerator_Helper<std::tuple<ARGS...>>
+{
+ static void add(std::vector<std::pair<std::string, std::string>>& r)
+ {
+ EldbusArgGenerator_Helper<ARGS..., void>::add(r);
+ }
+};
- template < typename... ARGS >
- struct dbus_interface_return_type_traits< ValueOrError< ARGS... > >
- {
- using type = ValueOrError< ARGS... >;
- };
+template<typename RetType>
+struct dbus_interface_return_type_traits
+{
+ using type = ValueOrError<RetType>;
+};
- template < typename T >
- struct dbus_interface_traits;
- template < typename RetType, typename... ARGS >
- struct dbus_interface_traits< RetType(ARGS...) >
- {
- using Ret = typename dbus_interface_return_type_traits< RetType >::type;
- using SyncCB = std::function< Ret(ARGS...) >;
- using AsyncCB = std::function< void(std::function< void(Ret) >, ARGS...) >;
- using VEArgs = ValueOrError< ARGS... >;
- };
+template<typename... ARGS>
+struct dbus_interface_return_type_traits<ValueOrError<ARGS...>>
+{
+ using type = ValueOrError<ARGS...>;
+};
- template < typename T >
- struct EldbusArgGenerator_Args;
- template < typename RetType, typename... ARGS >
- struct EldbusArgGenerator_Args< RetType(ARGS...) >
- {
- static std::string name()
- {
- return std::string{signature_tuple_helper< 0, sizeof...(ARGS), ARGS... >::name()};
- }
- static std::vector< std::pair<std::string, std::string> > get()
- {
- std::vector< std::pair<std::string, std::string> > tmp;
- EldbusArgGenerator_Helper< ARGS..., void >::add(tmp);
- return tmp;
- }
- };
+template<typename T>
+struct dbus_interface_traits;
+template<typename RetType, typename... ARGS>
+struct dbus_interface_traits<RetType(ARGS...)>
+{
+ using Ret = typename dbus_interface_return_type_traits<RetType>::type;
+ using SyncCB = std::function<Ret(ARGS...)>;
+ using AsyncCB = std::function<void(std::function<void(Ret)>, ARGS...)>;
+ using VEArgs = ValueOrError<ARGS...>;
+};
- template < typename T >
- struct EldbusArgGenerator_ReturnType;
- template < typename RetType, typename... ARGS >
- struct EldbusArgGenerator_ReturnType< RetType(ARGS...) >
- {
- static std::string name()
- {
- return std::string{signature< RetType >::name()};
- }
- static std::vector< std::pair<std::string, std::string> > get()
- {
- std::vector< std::pair<std::string, std::string> > tmp;
- EldbusArgGenerator_Helper< RetType, void >::add(tmp);
- return tmp;
- }
- };
+template<typename T>
+struct EldbusArgGenerator_Args;
+template<typename RetType, typename... ARGS>
+struct EldbusArgGenerator_Args<RetType(ARGS...)>
+{
+ static std::string name()
+ {
+ return std::string{signature_tuple_helper<0, sizeof...(ARGS), ARGS...>::name()};
+ }
+ static std::vector<std::pair<std::string, std::string>> get()
+ {
+ std::vector<std::pair<std::string, std::string>> tmp;
+ EldbusArgGenerator_Helper<ARGS..., void>::add(tmp);
+ return tmp;
+ }
+};
- template < typename T >
- struct EldbusArgGenerator_ReturnType;
- template < typename... ARGS >
- struct EldbusArgGenerator_ReturnType< void(ARGS...) >
- {
- static std::string name()
- {
- return "";
- }
- static std::vector< std::pair<std::string, std::string> > get()
- {
- return {};
- }
- };
+template<typename T>
+struct EldbusArgGenerator_ReturnType;
+template<typename RetType, typename... ARGS>
+struct EldbusArgGenerator_ReturnType<RetType(ARGS...)>
+{
+ static std::string name()
+ {
+ return std::string{signature<RetType>::name()};
+ }
+ static std::vector<std::pair<std::string, std::string>> get()
+ {
+ std::vector<std::pair<std::string, std::string>> tmp;
+ EldbusArgGenerator_Helper<RetType, void>::add(tmp);
+ return tmp;
+ }
+};
+template<typename T>
+struct EldbusArgGenerator_ReturnType;
+template<typename... ARGS>
+struct EldbusArgGenerator_ReturnType<void(ARGS...)>
+{
+ static std::string name()
+ {
+ return "";
+ }
+ static std::vector<std::pair<std::string, std::string>> get()
+ {
+ return {};
}
+};
- using ConnectionType = DBusWrapper::ConnectionType;
+} // namespace detail
- /**
+using ConnectionType = DBusWrapper::ConnectionType;
+
+/**
* @brief Class representing client's end of DBUS connection
*
* Allows calling (synchronous and asynchronous) methods on selected interface
* Allows (synchronous and asynchronous) setting / getting properties.
* Allows registering signals.
- */
- class DBusClient
- {
- struct ConnectionInfo
- {
- std::string interfaceName, busName, pathName;
- };
- public:
- /**
+ */
+class DBusClient
+{
+ struct ConnectionInfo
+ {
+ std::string interfaceName, busName, pathName;
+ };
+
+public:
+ /**
* @brief Default constructor, creates non-connected object.
*/
- DBusClient() = default;
+ DBusClient() = default;
- /**
+ /**
* @brief Connects to dbus choosen by tp, using given arguments
*
* @param bus_name name of the bus to connect to
* @param path_name object's path
* @param interface_name interface name
*/
- DBusClient(std::string busName_, std::string pathName_, std::string interfaceName_,
- ConnectionType tp);
+ DBusClient(std::string busName_, std::string pathName_, std::string interfaceName_, ConnectionType tp);
- /**
+ /**
* @brief Connects to dbus using connection conn
*
* @param bus_name name of the bus to connect to
* @param interface_name interface name
* @param conn connection object from getDBusConnectionByType call
*/
- DBusClient(std::string busName_, std::string pathName_, std::string interfaceName_,
- const DBusWrapper::ConnectionPtr& conn = {});
+ DBusClient(std::string busName_, std::string pathName_, std::string interfaceName_, const DBusWrapper::ConnectionPtr& conn = {});
- /**
+ /**
* @brief Destructor object.
*
* All signals added will be disconnected.
* All asynchronous calls will be cancelled, their callback's will be called
* with failure message.
*/
- ~DBusClient() = default;
- DBusClient(const DBusClient&) = delete;
- DBusClient(DBusClient&&) = default;
+ ~DBusClient() = default;
+ DBusClient(const DBusClient&) = delete;
+ DBusClient(DBusClient&&) = default;
- DBusClient& operator=(DBusClient&&) = default;
- DBusClient& operator=(const DBusClient&) = delete;
+ DBusClient& operator=(DBusClient&&) = default;
+ DBusClient& operator=(const DBusClient&) = delete;
- /**
+ /**
* @brief bool operator
*
* Returns true, if object is connected to DBUS
*/
- explicit operator bool() const
- {
- return bool(connectionState->proxy);
- }
+ explicit operator bool() const
+ {
+ return bool(connectionState->proxy);
+ }
- /**
+ /**
* @brief Helper class for calling a method
*
* Template type T defines both arguments sent to the method
* defines method, which takes two arguments (two floats) and return
* single value of type int.
*/
- template < typename T >
- struct Method
- {
- using RetType = typename detail::dbus_interface_traits< T >::Ret;
- const detail::ConnectionState& connectionState;
- std::string funcName;
- std::string info;
- std::shared_ptr< ConnectionInfo > connectionInfo;
+ template<typename T>
+ struct Method
+ {
+ using RetType = typename detail::dbus_interface_traits<T>::Ret;
+ const detail::ConnectionState& connectionState;
+ std::string funcName;
+ std::string info;
+ std::shared_ptr<ConnectionInfo> connectionInfo;
- /**
+ /**
* @brief Executes synchronous call on DBUS's method
*
* The function returns ValueOrError<...> object, which
*
* @param args arguments to pass to the method
*/
- template < typename... ARGS >
- RetType call(const ARGS&... args)
- {
- detail::CallId callId;
- detail::displayDebugCallInfo(callId, funcName, info, connectionInfo->interfaceName);
- return detail::call< RetType >(callId, connectionState, false, funcName, args...);
- }
+ template<typename... ARGS>
+ RetType call(const ARGS&... args)
+ {
+ detail::CallId callId;
+ detail::displayDebugCallInfo(callId, funcName, info, connectionInfo->interfaceName);
+ return detail::call<RetType>(callId, connectionState, false, funcName, args...);
+ }
- /**
+ /**
* @brief Executes asynchronous call on DBUS's method
*
* The function calls callback with either received values or error message.
* @param callback callback functor, which will be called with return value(s) or error message
* @param args arguments to pass to the method
*/
- template < typename... ARGS >
- void asyncCall(std::function< void(RetType) > callback, const ARGS&... args)
- {
- detail::CallId callId;
- detail::displayDebugCallInfo(callId, funcName, info, connectionInfo->interfaceName);
- detail::asyncCall< RetType >(callId, connectionState, false, funcName, std::move(callback), args...);
- }
- };
+ template<typename... ARGS>
+ void asyncCall(std::function<void(RetType)> callback, const ARGS&... args)
+ {
+ detail::CallId callId;
+ detail::displayDebugCallInfo(callId, funcName, info, connectionInfo->interfaceName);
+ detail::asyncCall<RetType>(callId, connectionState, false, funcName, std::move(callback), args...);
+ }
+ };
- /**
+ /**
* @brief Helper class for calling a property
*
* Template type T defines type of the value hidden under property.
* Note, that library automatically wraps both sent and received value into
* DBUS's wrapper type.
*/
- template < typename T >
- struct Property
- {
- using RetType = typename detail::dbus_interface_return_type_traits< T >::type;
- using VariantRetType = typename detail::dbus_interface_return_type_traits< EldbusVariant< T > >::type;
- const detail::ConnectionState& connectionState;
- std::string propName;
- std::string info;
- std::shared_ptr< ConnectionInfo > connectionInfo;
-
- /**
+ template<typename T>
+ struct Property
+ {
+ using RetType = typename detail::dbus_interface_return_type_traits<T>::type;
+ using VariantRetType = typename detail::dbus_interface_return_type_traits<EldbusVariant<T>>::type;
+ const detail::ConnectionState& connectionState;
+ std::string propName;
+ std::string info;
+ std::shared_ptr<ConnectionInfo> connectionInfo;
+
+ /**
* @brief executes synchronous get on property
*
* The function returns ValueOrError<...> object, which
* contains either received values or error message.
*/
- RetType get()
- {
- detail::CallId callId;
- detail::displayDebugCallInfoProperty(callId, "Get", info, connectionInfo->interfaceName, propName);
- auto z = detail::call< VariantRetType >(callId, connectionState, true, "Get", connectionInfo->interfaceName, propName);
- if (!z)
- return z.getError();
- return { std::get< 0 >(z.getValues()).value };
- }
+ RetType get()
+ {
+ detail::CallId callId;
+ detail::displayDebugCallInfoProperty(callId, "Get", info, connectionInfo->interfaceName, propName);
+ auto z = detail::call<VariantRetType>(callId, connectionState, true, "Get", connectionInfo->interfaceName, propName);
+ if(!z)
+ return z.getError();
+ return {std::get<0>(z.getValues()).value};
+ }
- /**
+ /**
* @brief executes asynchronous get on property
*
* The function calls callback with either received values or error message.
*
* @param callback callback functor, which will be called with return value(s) or error message
*/
- void asyncGet(std::function< void(RetType) > callback)
- {
- detail::CallId callId;
- detail::displayDebugCallInfoProperty(callId, "Get", info, connectionInfo->interfaceName, propName);
- auto cc = [callback](VariantRetType reply) {
- if (reply)
- callback(std::move(std::get< 0 >(reply.getValues()).value));
- else
- callback(reply.getError());
- };
- detail::asyncCall< VariantRetType >(callId, connectionState, true, "Get", std::move(cc), connectionInfo->interfaceName, propName);
- }
+ void asyncGet(std::function<void(RetType)> callback)
+ {
+ detail::CallId callId;
+ detail::displayDebugCallInfoProperty(callId, "Get", info, connectionInfo->interfaceName, propName);
+ auto cc = [callback](VariantRetType reply) {
+ if(reply)
+ callback(std::move(std::get<0>(reply.getValues()).value));
+ else
+ callback(reply.getError());
+ };
+ detail::asyncCall<VariantRetType>(callId, connectionState, true, "Get", std::move(cc), connectionInfo->interfaceName, propName);
+ }
- /**
+ /**
* @brief executes synchronous set on property
*
* The function returns ValueOrError<void> object, with
* possible error message.
*/
- ValueOrError< void > set(const T& r)
- {
- detail::CallId callId;
- detail::displayDebugCallInfoProperty(callId, "Set", info, connectionInfo->interfaceName, propName);
- EldbusVariant< T > variantValue{ std::move(r) };
- return detail::call< ValueOrError< void > >(callId, connectionState, true, "Set", connectionInfo->interfaceName, propName, variantValue);
- }
+ ValueOrError<void> set(const T& r)
+ {
+ detail::CallId callId;
+ detail::displayDebugCallInfoProperty(callId, "Set", info, connectionInfo->interfaceName, propName);
+ EldbusVariant<T> variantValue{std::move(r)};
+ return detail::call<ValueOrError<void>>(callId, connectionState, true, "Set", connectionInfo->interfaceName, propName, variantValue);
+ }
- /**
+ /**
* @brief executes asynchronous get on property
*
* The function calls callback with either received values or error message.
*
* @param callback callback functor, which will be called with return value(s) or error message
*/
- void asyncSet(std::function< void(ValueOrError< void >) > callback, const T& r)
- {
- detail::CallId callId;
- detail::displayDebugCallInfoProperty(callId, "Set", info, connectionInfo->interfaceName, propName);
- EldbusVariant< T > variantValue{ std::move(r) };
- detail::asyncCall< ValueOrError< void > >(callId, connectionState, true, "Set", std::move(callback), connectionInfo->interfaceName, propName, variantValue);
- }
- };
+ void asyncSet(std::function<void(ValueOrError<void>)> callback, const T& r)
+ {
+ detail::CallId callId;
+ detail::displayDebugCallInfoProperty(callId, "Set", info, connectionInfo->interfaceName, propName);
+ EldbusVariant<T> variantValue{std::move(r)};
+ detail::asyncCall<ValueOrError<void>>(callId, connectionState, true, "Set", std::move(callback), connectionInfo->interfaceName, propName, variantValue);
+ }
+ };
- /**
+ /**
* @brief Constructs Property<...> object for calling properties
*
* The function constructs and returns proxy object for calling property.
*
* @param propName property name to set and / or query
*/
- template < typename PropertyType >
- Property< PropertyType > property(std::string propName)
- {
- return Property< PropertyType >{*connectionState, std::move(propName), info, connectionInfo};
- }
+ template<typename PropertyType>
+ Property<PropertyType> property(std::string propName)
+ {
+ return Property<PropertyType>{*connectionState, std::move(propName), info, connectionInfo};
+ }
- /**
+ /**
* @brief Constructs Method<...> object for calling methods
*
* The function constructs and returns proxy object for calling method.
*
* @param funcName function name to call
*/
- template < typename MethodType >
- Method< MethodType > method(std::string funcName)
- {
- return Method< MethodType >{*connectionState, std::move(funcName), info, connectionInfo};
- }
+ template<typename MethodType>
+ Method<MethodType> method(std::string funcName)
+ {
+ return Method<MethodType>{*connectionState, std::move(funcName), info, connectionInfo};
+ }
- /**
+ /**
* @brief Registers notification callback, when property has changed
*
* The callback will be called with new value, when property's value has changed.
* Note, that template type V must match expected type, otherwise undefined behavior will occur,
* there's no check for this.
*/
- template < typename V >
- void addPropertyChangedEvent(std::string propertyName, std::function< void(V) > callback)
- {
- detail::CallId callId;
- detail::displayDebugCallInfoSignal(callId, propertyName, info, connectionInfo->interfaceName);
- DBUS_DEBUG("call %d: adding property", callId.id);
- auto& cI = this->connectionInfo;
- DBUS_W->add_property_changed_event_listener_impl(connectionState->proxy, cI->interfaceName, propertyName,
- [callback](const _Eina_Value* newValue) {
- V val = 0;
- if (!getFromEinaValue(newValue, &val))
- {
- DBUS_DEBUG("unable to get property's value");
- return;
- }
- callback(val);
- });
- }
+ template<typename V>
+ void addPropertyChangedEvent(std::string propertyName, std::function<void(V)> callback)
+ {
+ detail::CallId callId;
+ detail::displayDebugCallInfoSignal(callId, propertyName, info, connectionInfo->interfaceName);
+ DBUS_DEBUG("call %d: adding property", callId.id);
+ auto& cI = this->connectionInfo;
+ DBUS_W->add_property_changed_event_listener_impl(connectionState->proxy, cI->interfaceName, propertyName, [callback](const _Eina_Value* newValue) {
+ V val = 0;
+ if(!getFromEinaValue(newValue, &val))
+ {
+ DBUS_DEBUG("unable to get property's value");
+ return;
+ }
+ callback(val);
+ });
+ }
- /**
+ /**
* @brief Registers callback on the DBUS' signal
*
* The function registers callback signalName. When signal comes, callback will be called.
* @param signalName name of the signal to register
* @param callback callback to call
*/
- template < typename SignalType >
- void addSignal(std::string signalName, std::function< SignalType > callback)
- {
- detail::CallId callId;
- detail::displayDebugCallInfoSignal(callId, signalName, info, connectionInfo->interfaceName);
- DBUS_W->eldbus_proxy_signal_handler_add_impl(connectionState->proxy, signalName,
- [callId, callback, signalName](const DBusWrapper::MessagePtr& msg) -> void {
- std::string errname, aux;
- if (DBUS_W->eldbus_message_error_get_impl(msg, errname, aux))
- {
- DBUS_DEBUG("call %d: Eldbus error: %s %s", callId.id, errname.c_str(), aux.c_str());
- return;
- }
- DBUS_DEBUG("call %d: received signal with signature '%s'", callId.id, DBUS_W->eldbus_message_signature_get_impl(msg).c_str());
- using ParamsType = typename detail::dbus_interface_traits< SignalType >::VEArgs;
- auto params = detail::unpackValues< ParamsType >(callId, msg);
- if (!params)
- {
- DBUS_DEBUG("call %d: failed: %s", callId.id, params.getError().message.c_str());
- return;
- }
- try
- {
- std::apply(callback, params.getValues());
- }
- catch (const Dali::DaliException &e)
- {
- DBUS_DEBUG("unhandled exception");
- assert(0);
- }
- });
- }
+ template<typename SignalType>
+ void addSignal(std::string signalName, std::function<SignalType> callback)
+ {
+ detail::CallId callId;
+ detail::displayDebugCallInfoSignal(callId, signalName, info, connectionInfo->interfaceName);
+ DBUS_W->eldbus_proxy_signal_handler_add_impl(connectionState->proxy, signalName, [callId, callback, signalName](const DBusWrapper::MessagePtr& msg) -> void {
+ std::string errname, aux;
+ if(DBUS_W->eldbus_message_error_get_impl(msg, errname, aux))
+ {
+ DBUS_DEBUG("call %d: Eldbus error: %s %s", callId.id, errname.c_str(), aux.c_str());
+ return;
+ }
+ DBUS_DEBUG("call %d: received signal with signature '%s'", callId.id, DBUS_W->eldbus_message_signature_get_impl(msg).c_str());
+ using ParamsType = typename detail::dbus_interface_traits<SignalType>::VEArgs;
+ auto params = detail::unpackValues<ParamsType>(callId, msg);
+ if(!params)
+ {
+ DBUS_DEBUG("call %d: failed: %s", callId.id, params.getError().message.c_str());
+ return;
+ }
+ try
+ {
+ std::apply(callback, params.getValues());
+ }
+ catch(const Dali::DaliException& e)
+ {
+ DBUS_DEBUG("unhandled exception");
+ assert(0);
+ }
+ });
+ }
- private:
- std::unique_ptr<detail::ConnectionState> connectionState{ new detail::ConnectionState };
- std::string info;
- std::shared_ptr< ConnectionInfo > connectionInfo;
+private:
+ std::unique_ptr<detail::ConnectionState> connectionState{new detail::ConnectionState};
+ std::string info;
+ std::shared_ptr<ConnectionInfo> connectionInfo;
- static bool getFromEinaValue(const _Eina_Value* v, void* dst);
- };
+ static bool getFromEinaValue(const _Eina_Value* v, void* dst);
+};
- /**
+/**
* @brief Helper class describing DBUS's server interface
*
*/
- class DBusInterfaceDescription
- {
- friend class DBusServer;
+class DBusInterfaceDescription
+{
+ friend class DBusServer;
- public:
- using MethodInfo = DBusWrapper::MethodInfo;
- using SignalInfo = DBusWrapper::SignalInfo;
- using PropertyInfo = DBusWrapper::PropertyInfo;
- using SignalId = DBusWrapper::SignalId;
+public:
+ using MethodInfo = DBusWrapper::MethodInfo;
+ using SignalInfo = DBusWrapper::SignalInfo;
+ using PropertyInfo = DBusWrapper::PropertyInfo;
+ using SignalId = DBusWrapper::SignalId;
- /**
+ /**
* @brief Creates empty interface description with given name
*
* @param interfaceName name of the interface
*/
- DBusInterfaceDescription(std::string interfaceName);
+ DBusInterfaceDescription(std::string interfaceName);
- /**
+ /**
* @brief adds new, synchronous method to the interface
*
* When method memberName is called on DBUS, callback functor will be called
* @param memberName name of the method
* @param callback functor, which will be called
*/
- template < typename T >
- void addMethod(const std::string& memberName, typename detail::dbus_interface_traits< T >::SyncCB callback)
- {
- detail::CallId callId;
- MethodInfo mi;
- methods.push_back(std::move(mi));
- auto& z = methods.back();
- z.in = detail::EldbusArgGenerator_Args< T >::get();
- z.out = detail::EldbusArgGenerator_ReturnType< T >::get();
- z.memberName = memberName;
- DBUS_DEBUG("call %d: method %s, in %s, out %s", callId.id, memberName.c_str(),
- detail::EldbusArgGenerator_Args< T >::name().c_str(),
- detail::EldbusArgGenerator_ReturnType< T >::name().c_str());
- z.callback = construct< T >(callId, callback);
- z.id = callId;
- }
+ template<typename T>
+ void addMethod(const std::string& memberName, typename detail::dbus_interface_traits<T>::SyncCB callback)
+ {
+ detail::CallId callId;
+ MethodInfo mi;
+ methods.push_back(std::move(mi));
+ auto& z = methods.back();
+ z.in = detail::EldbusArgGenerator_Args<T>::get();
+ z.out = detail::EldbusArgGenerator_ReturnType<T>::get();
+ z.memberName = memberName;
+ DBUS_DEBUG("call %d: method %s, in %s, out %s", callId.id, memberName.c_str(), detail::EldbusArgGenerator_Args<T>::name().c_str(), detail::EldbusArgGenerator_ReturnType<T>::name().c_str());
+ z.callback = construct<T>(callId, callback);
+ z.id = callId;
+ }
- /**
+ /**
* @brief adds new, synchronous property to the interface
*
* When property memberName is called on DBUS, respective callback functor will be called
* @param getter functor, which will be called when property is being read
* @param setter functor, which will be called when property is being set
*/
- template < typename T >
- void addProperty(const std::string& memberName, std::function< ValueOrError< T >() > getter, std::function< ValueOrError< void >(T) > setter)
- {
- properties.push_back({});
- auto& z = properties.back();
- z.memberName = memberName;
- z.typeSignature = detail::signature< T >::sig();
- if (getter)
- {
- detail::CallId getterId;
- z.getterId = getterId;
- DBUS_DEBUG("call %d: property %s (get) type %s", getterId.id, memberName.c_str(), detail::signature< T >::name().data());
- z.getCallback = [=](const DBusWrapper::MessagePtr& src, const DBusWrapper::MessageIterPtr& dst) -> std::string {
+ template<typename T>
+ void addProperty(const std::string& memberName, std::function<ValueOrError<T>()> getter, std::function<ValueOrError<void>(T)> setter)
+ {
+ properties.push_back({});
+ auto& z = properties.back();
+ z.memberName = memberName;
+ z.typeSignature = detail::signature<T>::sig();
+ if(getter)
+ {
+ detail::CallId getterId;
+ z.getterId = getterId;
+ DBUS_DEBUG("call %d: property %s (get) type %s", getterId.id, memberName.c_str(), detail::signature<T>::name().data());
+ z.getCallback = [=](const DBusWrapper::MessagePtr& src, const DBusWrapper::MessageIterPtr& dst) -> std::string {
+ try
+ {
+ auto v = std::apply(getter, std::tuple<>{});
+ if(v)
+ {
+ detail::signature<T>::set(dst, std::get<0>(v.getValues()));
+ DBUS_DEBUG("call %d: success", getterId.id);
+ return "";
+ }
+ DBUS_DEBUG("call %d: failed: %s", getterId.id, v.getError().message.c_str());
+ return v.getError().message;
+ }
+ catch(std::exception& e)
+ {
+ return std::string("unhandled exception (") + e.what() + ")";
+ }
+ catch(const Dali::DaliException& e)
+ {
+ return std::string("unhandled exception (") + e.condition + ")";
+ }
+ };
+ }
+ if(setter)
+ {
+ detail::CallId setterId;
+ z.setterId = setterId;
+ DBUS_DEBUG("call %d: property %s (set) type %s", setterId.id, memberName.c_str(), detail::signature<T>::name().data());
+ z.setCallback = [=](const DBusWrapper::MessagePtr& src, const DBusWrapper::MessageIterPtr& src_iter) -> std::string {
+ std::tuple<T> value;
+ auto src_signature = DBUS_W->eldbus_message_iter_signature_get_impl(src_iter);
+ if(detail::signature<T>::get(src_iter, std::get<0>(value)))
+ {
try
{
- auto v = std::apply(getter, std::tuple<>{});
- if (v)
+ auto v = std::apply(setter, std::move(value));
+ if(v)
{
- detail::signature< T >::set(dst, std::get< 0 >(v.getValues()));
- DBUS_DEBUG("call %d: success", getterId.id);
+ DBUS_DEBUG("call %d: success", setterId.id);
return "";
}
- DBUS_DEBUG("call %d: failed: %s", getterId.id, v.getError().message.c_str());
+ DBUS_DEBUG("call %d: failed: %s", setterId.id, v.getError().message.c_str());
return v.getError().message;
}
- catch (std::exception & e)
+ catch(std::exception& e)
{
return std::string("unhandled exception (") + e.what() + ")";
}
- catch (const Dali::DaliException &e)
+ catch(const Dali::DaliException& e)
{
return std::string("unhandled exception (") + e.condition + ")";
}
- };
- }
- if (setter)
- {
- detail::CallId setterId;
- z.setterId = setterId;
- DBUS_DEBUG("call %d: property %s (set) type %s", setterId.id, memberName.c_str(), detail::signature< T >::name().data());
- z.setCallback = [=](const DBusWrapper::MessagePtr& src, const DBusWrapper::MessageIterPtr& src_iter) -> std::string {
- std::tuple< T > value;
- auto src_signature = DBUS_W->eldbus_message_iter_signature_get_impl(src_iter);
- if (detail::signature< T >::get(src_iter, std::get< 0 >(value)))
- {
- try
- {
- auto v = std::apply(setter, std::move(value));
- if (v)
- {
- DBUS_DEBUG("call %d: success", setterId.id);
- return "";
- }
- DBUS_DEBUG("call %d: failed: %s", setterId.id, v.getError().message.c_str());
- return v.getError().message;
- }
- catch (std::exception & e)
- {
- return std::string("unhandled exception (") + e.what() + ")";
- }
- catch (const Dali::DaliException &e)
- {
- return std::string("unhandled exception (") + e.condition + ")";
- }
- }
- DBUS_DEBUG("call %d: failed to unpack values, got signature '%s', expected '%s'", setterId.id,
- src_signature.c_str(), detail::signature< T >::sig().data());
- return "call " + std::to_string(setterId.id) + ": failed to unpack values, got signature '" +
- src_signature + "', expected '" + std::string{detail::signature< T >::sig()} + "'";
- };
- }
+ }
+ DBUS_DEBUG("call %d: failed to unpack values, got signature '%s', expected '%s'", setterId.id, src_signature.c_str(), detail::signature<T>::sig().data());
+ return "call " + std::to_string(setterId.id) + ": failed to unpack values, got signature '" +
+ src_signature + "', expected '" + std::string{detail::signature<T>::sig()} + "'";
+ };
}
+ }
- /**
+ /**
* @brief adds new signal to the interface
*
* Template types ARGS defines values, which will be emited with the signal
*
* @param memberName name of the method
*/
- template < typename... ARGS >
- SignalId addSignal(const std::string& memberName)
- {
- detail::CallId callId;
- signals.push_back({});
- auto& z = signals.back();
- z.memberName = memberName;
- z.args = detail::EldbusArgGenerator_Args< void(ARGS...) >::get(DBUS_W->Strings);
- z.id = callId;
- DBUS_DEBUG("call %d: signal %s", callId.id, memberName.c_str());
- return SignalId{ callId };
- }
+ template<typename... ARGS>
+ SignalId addSignal(const std::string& memberName)
+ {
+ detail::CallId callId;
+ signals.push_back({});
+ auto& z = signals.back();
+ z.memberName = memberName;
+ z.args = detail::EldbusArgGenerator_Args<void(ARGS...)>::get(DBUS_W->Strings);
+ z.id = callId;
+ DBUS_DEBUG("call %d: signal %s", callId.id, memberName.c_str());
+ return SignalId{callId};
+ }
- private:
- std::vector< MethodInfo > methods;
- std::vector< PropertyInfo > properties;
- std::vector< SignalInfo > signals;
- std::string interfaceName;
+private:
+ std::vector<MethodInfo> methods;
+ std::vector<PropertyInfo> properties;
+ std::vector<SignalInfo> signals;
+ std::string interfaceName;
- template < typename T >
- std::function< DBusWrapper::MessagePtr(const DBusWrapper::MessagePtr & msg) > construct(detail::CallId callId,
- typename detail::dbus_interface_traits< T >::SyncCB callback)
- {
- using VEArgs = typename detail::dbus_interface_traits< T >::VEArgs;
- return [=](const DBusWrapper::MessagePtr& msg) -> DBusWrapper::MessagePtr {
- DBUS_DEBUG("call %d: entering", callId.id);
- DBusWrapper::MessagePtr ret = {};
- auto args = detail::unpackValues< VEArgs >(callId, msg);
- if (args)
+ template<typename T>
+ std::function<DBusWrapper::MessagePtr(const DBusWrapper::MessagePtr& msg)> construct(detail::CallId callId,
+ typename detail::dbus_interface_traits<T>::SyncCB callback)
+ {
+ using VEArgs = typename detail::dbus_interface_traits<T>::VEArgs;
+ return [=](const DBusWrapper::MessagePtr& msg) -> DBusWrapper::MessagePtr {
+ DBUS_DEBUG("call %d: entering", callId.id);
+ DBusWrapper::MessagePtr ret = {};
+ auto args = detail::unpackValues<VEArgs>(callId, msg);
+ if(args)
+ {
+ try
{
- try
- {
- auto v = std::apply(callback, std::move(args.getValues()));
- if (v)
- {
- DBUS_DEBUG("call %d: success", callId.id);
- ret = DBUS_W->eldbus_message_method_return_new_impl(msg);
- detail::packValues(callId, ret, v);
- }
- else
- {
- DBUS_DEBUG("call %d: failed: %s", callId.id, v.getError().message.c_str());
- ret = DBUS_W->eldbus_message_error_new_impl(msg, "org.freedesktop.DBus.Error.Failed", v.getError().message);
- }
- }
- catch (std::exception & e)
+ auto v = std::apply(callback, std::move(args.getValues()));
+ if(v)
{
- auto txt = std::string("unhandled exception (") + e.what() + ")";
- DBUS_DEBUG("call %d: failed: %s", callId.id, txt.c_str());
- ret = DBUS_W->eldbus_message_error_new_impl(msg, "org.freedesktop.DBus.Error.Failed", txt);
+ DBUS_DEBUG("call %d: success", callId.id);
+ ret = DBUS_W->eldbus_message_method_return_new_impl(msg);
+ detail::packValues(callId, ret, v);
}
- catch (const Dali::DaliException &e)
+ else
{
- auto txt = std::string("unhandled exception (") + e.condition + ")";
- DBUS_DEBUG("call %d: failed: %s", callId.id, txt.c_str());
- ret = DBUS_W->eldbus_message_error_new_impl(msg, "org.freedesktop.DBus.Error.Failed", txt);
+ DBUS_DEBUG("call %d: failed: %s", callId.id, v.getError().message.c_str());
+ ret = DBUS_W->eldbus_message_error_new_impl(msg, "org.freedesktop.DBus.Error.Failed", v.getError().message);
}
}
- else
+ catch(std::exception& e)
{
- std::ostringstream err;
- err << "expected signature '" << detail::signature< VEArgs >::sig() << "', got '" << DBUS_W->eldbus_message_signature_get_impl(msg) << "'";
- auto str = err.str();
- DBUS_DEBUG("call %d: failed: %s", callId.id, str.c_str());
- ret = DBUS_W->eldbus_message_error_new_impl(msg, "org.freedesktop.DBus.Error.InvalidArgs", str);
+ auto txt = std::string("unhandled exception (") + e.what() + ")";
+ DBUS_DEBUG("call %d: failed: %s", callId.id, txt.c_str());
+ ret = DBUS_W->eldbus_message_error_new_impl(msg, "org.freedesktop.DBus.Error.Failed", txt);
}
- return ret;
- };
- }
- };
+ catch(const Dali::DaliException& e)
+ {
+ auto txt = std::string("unhandled exception (") + e.condition + ")";
+ DBUS_DEBUG("call %d: failed: %s", callId.id, txt.c_str());
+ ret = DBUS_W->eldbus_message_error_new_impl(msg, "org.freedesktop.DBus.Error.Failed", txt);
+ }
+ }
+ else
+ {
+ std::ostringstream err;
+ err << "expected signature '" << detail::signature<VEArgs>::sig() << "', got '" << DBUS_W->eldbus_message_signature_get_impl(msg) << "'";
+ auto str = err.str();
+ DBUS_DEBUG("call %d: failed: %s", callId.id, str.c_str());
+ ret = DBUS_W->eldbus_message_error_new_impl(msg, "org.freedesktop.DBus.Error.InvalidArgs", str);
+ }
+ return ret;
+ };
+ }
+};
- /**
+/**
* @brief Class representing server's end of DBUS connection
*
* Allows listening (synchronously and asynchronously) on methods on selected interface
* Allows listening (synchronously and asynchronously) on setting / getting properties.
* Allows emiting signals.
*/
- class DBusServer
- {
- public:
- /**
+class DBusServer
+{
+public:
+ /**
* @brief Constructs non-connected dbus server.
*/
- DBusServer() = default;
+ DBusServer() = default;
- /**
+ /**
* @brief Constructs dbus server on either system or user dbus connection.
*/
- DBusServer(ConnectionType tp);
+ DBusServer(ConnectionType tp);
- /**
+ /**
* @brief Constructs dbus server on connection from getDBusConnectionByType
*/
- DBusServer(const DBusWrapper::ConnectionPtr& conn);
+ DBusServer(const DBusWrapper::ConnectionPtr& conn);
- /**
+ /**
* @brief Destructor
*
* Destructor will properly destroy everything. Destructor will cancel
* pending replies.
*/
- ~DBusServer() = default;
+ ~DBusServer() = default;
- DBusServer(const DBusServer&) = delete;
- DBusServer(DBusServer&&) = default;
+ DBusServer(const DBusServer&) = delete;
+ DBusServer(DBusServer&&) = default;
- DBusServer& operator=(DBusServer&&) = default;
- DBusServer& operator=(const DBusServer&) = delete;
+ DBusServer& operator=(DBusServer&&) = default;
+ DBusServer& operator=(const DBusServer&) = delete;
- /**
+ /**
* @brief Registers interface on given path name
*
* @param pathName path object to register interface on.
* @param dscr
* @param fallback
*/
- void addInterface(const std::string& pathName, DBusInterfaceDescription& dscr, bool fallback = false);
+ void addInterface(const std::string& pathName, DBusInterfaceDescription& dscr, bool fallback = false);
- /**
+ /**
* @brief Gets bus name of the current connection (must be connected)
*/
- std::string getBusName() const;
+ std::string getBusName() const;
- /**
+ /**
* @brief Returns connection object for this dbus server object
*
* @return connection object
*/
- DBusWrapper::ConnectionPtr getConnection();
+ DBusWrapper::ConnectionPtr getConnection();
- /**
+ /**
* @brief Emits signal
*
* Emits signal based only on data passed to the function
* @param signal identifier of the signal
* @param args values to emit
*/
- template < typename... ARGS >
- void emit2(const std::string& path, const std::string& interfaceName,
- const std::string& signalName, const ARGS&... args)
- {
- auto msg = DBUS_W->eldbus_message_signal_new_impl(path, interfaceName, signalName);
- detail::CallId id;
- detail::packValues(id, msg, args...);
- DBUS_W->eldbus_connection_send_impl(connection, msg);
- }
+ template<typename... ARGS>
+ void emit2(const std::string& path, const std::string& interfaceName, const std::string& signalName, const ARGS&... args)
+ {
+ auto msg = DBUS_W->eldbus_message_signal_new_impl(path, interfaceName, signalName);
+ detail::CallId id;
+ detail::packValues(id, msg, args...);
+ DBUS_W->eldbus_connection_send_impl(connection, msg);
+ }
- /**
+ /**
* @brief Returns current object path, when handling call to property / method
*
* User can call this function from inside callback used to handle property / method calls.
* };
* \endcode
*/
- static std::string getCurrentObjectPath() { return currentObjectPath; }
+ static std::string getCurrentObjectPath()
+ {
+ return currentObjectPath;
+ }
- /**
+ /**
* @brief Returns current connection object, when handling call to property / method
*
* User can call this function from inside callback used to handle property / method calls.
* };
* \endcode
*/
- static const DBusWrapper::ConnectionPtr& getCurrentConnection() { return currentConnection; }
+ static const DBusWrapper::ConnectionPtr& getCurrentConnection()
+ {
+ return currentConnection;
+ }
- /// \cond
- class CurrentObjectSetter
+ /// \cond
+ class CurrentObjectSetter
+ {
+ public:
+ CurrentObjectSetter(DBusWrapper::ConnectionPtr con, std::string path)
{
- public:
- CurrentObjectSetter(DBusWrapper::ConnectionPtr con, std::string path)
- {
- currentObjectPath = std::move(path);
- currentConnection = std::move(con);
- }
- ~CurrentObjectSetter()
- {
- currentObjectPath = "";
- currentConnection = {};
- }
- CurrentObjectSetter(const CurrentObjectSetter&) = delete;
- CurrentObjectSetter(CurrentObjectSetter&&) = delete;
- void operator=(const CurrentObjectSetter&) = delete;
- void operator=(CurrentObjectSetter&&) = delete;
- };
-
- private:
- DBusWrapper::ConnectionPtr connection;
- struct DestructorObject {
- std::vector<std::function<void()>> destructors;
- ~DestructorObject() {
- for (auto& a : destructors) a();
- }
- };
-
- std::unique_ptr<DestructorObject> destructorObject{ new DestructorObject() };
- static thread_local std::string currentObjectPath;
- static thread_local DBusWrapper::ConnectionPtr currentConnection;
+ currentObjectPath = std::move(path);
+ currentConnection = std::move(con);
+ }
+ ~CurrentObjectSetter()
+ {
+ currentObjectPath = "";
+ currentConnection = {};
+ }
+ CurrentObjectSetter(const CurrentObjectSetter&) = delete;
+ CurrentObjectSetter(CurrentObjectSetter&&) = delete;
+ void operator=(const CurrentObjectSetter&) = delete;
+ void operator=(CurrentObjectSetter&&) = delete;
+ };
+private:
+ DBusWrapper::ConnectionPtr connection;
+ struct DestructorObject
+ {
+ std::vector<std::function<void()>> destructors;
+ ~DestructorObject()
+ {
+ for(auto& a : destructors) a();
+ }
};
- DBusWrapper::ConnectionPtr getDBusConnectionByType(ConnectionType tp);
- DBusWrapper::ConnectionPtr getDBusConnectionByName(const std::string& name);
- std::string getConnectionName(const DBusWrapper::ConnectionPtr&);
-}
+ std::unique_ptr<DestructorObject> destructorObject{new DestructorObject()};
+ static thread_local std::string currentObjectPath;
+ static thread_local DBusWrapper::ConnectionPtr currentConnection;
+};
+
+DBusWrapper::ConnectionPtr getDBusConnectionByType(ConnectionType tp);
+DBusWrapper::ConnectionPtr getDBusConnectionByName(const std::string& name);
+std::string getConnectionName(const DBusWrapper::ConnectionPtr&);
+} // namespace DBus
namespace std
{
- template < size_t INDEX, typename... ARGS >
- inline auto get(DBus::ValueOrError< ARGS... >& v) -> decltype(std::get< INDEX >(v.getValues()))&
- {
- return std::get< INDEX >(v.getValues());
- }
+template<size_t INDEX, typename... ARGS>
+inline auto get(DBus::ValueOrError<ARGS...>& v) -> decltype(std::get<INDEX>(v.getValues()))&
+{
+ return std::get<INDEX>(v.getValues());
+}
- template < size_t INDEX, typename... ARGS >
- inline auto get(const DBus::ValueOrError< ARGS... >& v) -> decltype(std::get< INDEX >(v.getValues()))
- {
- return std::get< INDEX >(v.getValues());
- }
+template<size_t INDEX, typename... ARGS>
+inline auto get(const DBus::ValueOrError<ARGS...>& v) -> decltype(std::get<INDEX>(v.getValues()))
+{
+ return std::get<INDEX>(v.getValues());
}
+} // namespace std
#endif // DALI_INTERNAL_ACCESSIBILITY_BRIDGE_DBUS_H
#define DALI_INTERNAL_ACCESSIBILITY_COMMON_TTS_PLAYER_FACTORY_H
/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
class TtsPlayer;
namespace TtsPlayerFactory
{
-
/**
* Factory function that ought to be overriden by platform implementation.
* @return
} // namespace TtsPlayerFactory
-} // namespaceAdaptor
+} // namespace Adaptor
} // namespace Internal
#define DALI_INTERNAL_ACCESSIBILITY_COMMON_TTS_PLAYER_IMPL_H
/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Text-to-speech player
*/
class TtsPlayer : public Dali::BaseObject
{
-
public:
-
/**
* Create a TtsPlayer with the given mode.
* This should only be called once by the Adaptor class for each given mode.
inline Internal::Adaptor::TtsPlayer& GetImplementation(Dali::TtsPlayer& player)
{
- DALI_ASSERT_ALWAYS( player && "TtsPlayer handle is empty" );
+ DALI_ASSERT_ALWAYS(player && "TtsPlayer handle is empty");
BaseObject& handle = player.GetBaseObject();
inline const Internal::Adaptor::TtsPlayer& GetImplementation(const Dali::TtsPlayer& player)
{
- DALI_ASSERT_ALWAYS( player && "TtsPlayer handle is empty" );
+ DALI_ASSERT_ALWAYS(player && "TtsPlayer handle is empty");
const BaseObject& handle = player.GetBaseObject();
#define DALI_INTERNAL_ACCESSIBILITY_GENERIC_TTS_PLAYER_IMPL_GENERIC_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
// EXTERNAL INCLUDES
-#include <string>
#include <memory>
+#include <string>
#include <dali/integration-api/debug.h>
#include <dali/public-api/object/base-object.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Text-to-speech player
*/
class TtsPlayerGeneric : public Dali::Internal::Adaptor::TtsPlayer
{
-
public:
-
/**
* Create a TtsPlayer with the given mode.
* This should only be called once by the Adaptor class for each given mode.
~TtsPlayerGeneric() override;
private:
-
Dali::TtsPlayer::StateChangedSignalType mStateChangedSignal; ///< Signal emitted when the TTS state changes (non-functional, for interface compatibility).
#if defined(DEBUG_ENABLED)
#define DALI_INTERNAL_ACCESSIBILITY_TIZEN_TTS_PLAYER_IMPL_TIZEN_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
// EXTERNAL INCLUDES
#include <tts.h>
-#include <string>
#include <memory>
+#include <string>
#include <dali/integration-api/debug.h>
#include <dali/public-api/object/base-object.h>
// INTERNAL INCLUDES
-#include <dali/public-api/adaptor-framework/tts-player.h>
#include <dali/internal/accessibility/common/tts-player-impl.h>
+#include <dali/public-api/adaptor-framework/tts-player.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Text-to-speech player
*/
class TtsPlayerTizen : public Dali::Internal::Adaptor::TtsPlayer
{
-
public:
-
/**
* Create a TtsPlayer with the given mode.
* This should only be called once by the Adaptor class for each given mode.
~TtsPlayerTizen() override;
private:
-
/**
* Private Constructor; see also TtsPlayer::New()
* @param mode the mode of tts-player
* @param[in] previous The previous state
* @param[in] current The current state
*/
- void EmitStateChangedSignal( tts_state_e previous, tts_state_e current );
+ void EmitStateChangedSignal(tts_state_e previous, tts_state_e current);
/**
* Called when the state of TTS is changed.
* @param[in] current A current state
* @param[in] userData The user data passed from the callback registration function.
*/
- static void StateChangedCallback(tts_h tts, tts_state_e previous, tts_state_e current, void *userData);
+ static void StateChangedCallback(tts_h tts, tts_state_e previous, tts_state_e current, void* userData);
// Undefined
TtsPlayerTizen(const TtsPlayerTizen&);
TtsPlayerTizen& operator=(TtsPlayerTizen&);
private:
-
Dali::TtsPlayer::StateChangedSignalType mStateChangedSignal; ///< Signal emitted when the TTS state changes
- bool mInitialized; ///< Whether the TTS player is initialised successfully or not
- std::string mUnplayedString; ///< The text that can not be played because tts engine is not yet initialized
- tts_h mTtsHandle; ///< The handle of TTS
- int mUtteranceId; ///< The utterance ID
+ bool mInitialized; ///< Whether the TTS player is initialised successfully or not
+ std::string mUnplayedString; ///< The text that can not be played because tts engine is not yet initialized
+ tts_h mTtsHandle; ///< The handle of TTS
+ int mUtteranceId; ///< The utterance ID
Dali::TtsPlayer::Mode mTtsMode; ///< The current mode of tts engine
#define DALI_FILE_LOADER_IMPL_GENERIC_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
int ReadFile(const std::string& filename, Dali::Vector<char>& memblock, Dali::FileLoader::FileType fileType = Dali::FileLoader::BINARY);
int ReadFile(const std::string& filename, Dali::Vector<uint8_t>& memblock, Dali::FileLoader::FileType fileType = Dali::FileLoader::BINARY);
std::streampos GetFileSize(const std::string& filename);
-} // Adaptor
+} // namespace Adaptor
-} // Internal
+} // namespace Internal
-} // Dali
+} // namespace Dali
#endif // DALI_FILE_LOADER_IMPL_GENERIC_H
#define DALI_FILE_STREAM_IMPL_GENERIC_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
class FileStream::Impl
{
public:
private:
std::string mFileName;
- uint8_t mMode;
- uint8_t* mBuffer; // external buffer, not owned
- size_t mDataSize;
+ uint8_t mMode;
+ uint8_t* mBuffer; // external buffer, not owned
+ size_t mDataSize;
Dali::Vector<char> mFileBuffer; // for internal usage only
- FILE* mFile;
- std::fstream mFileStream;
- std::stringstream mBufferStream;
+ FILE* mFile;
+ std::fstream mFileStream;
+ std::stringstream mBufferStream;
};
-} // Dali
+} // namespace Dali
#endif // DALI_FILE_STREAM_IMPL_GENERIC_H
#define DALI_INTEGRATION_ANDROID_FRAMEWORK_IMPL_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/// Android application events
enum
{
/**
* @copydoc Dali::Integration::AndroidFramework::SetNativeApplication()
*/
- void SetNativeApplication( android_app* application );
+ void SetNativeApplication(android_app* application);
/**
* @copydoc Dali::Integration::AndroidFramework::GetNativeApplication()
/**
* @copydoc Dali::Integration::AndroidFramework::SetJVM()
*/
- void SetJVM( JavaVM* jvm );
+ void SetJVM(JavaVM* jvm);
/**
* @copydoc Dali::Integration::AndroidFramework::GetJVM()
/**
* @copydoc Dali::Integration::AndroidFramework::SetApplicationAssets()
*/
- void SetApplicationAssets( AAssetManager* assets );
+ void SetApplicationAssets(AAssetManager* assets);
/**
* @copydoc Dali::Integration::AndroidFramework::GetApplicationAssets()
/**
* copydoc Dali::Integration::AndroidFramework::SetInternalDataPath()
*/
- void SetInternalDataPath( const std::string& path );
+ void SetInternalDataPath(const std::string& path);
/**
* copydoc Dali::Integration::AndroidFramework::GetInternalDataPath()
/**
* @copydoc Dali::Integration::AndroidFramework::SetApplicationConfiguration()
*/
- void SetApplicationConfiguration( AConfiguration* configuration );
+ void SetApplicationConfiguration(AConfiguration* configuration);
/**
* @copydoc Dali::Integration::AndroidFramework::GetApplicationConfiguration()
/**
* @copydoc Dali::Integration::AndroidFramework::SetApplicationWindow()
*/
- void SetApplicationWindow( ANativeWindow* window );
+ void SetApplicationWindow(ANativeWindow* window);
/**
* @copydoc Dali::Integration::AndroidFramework::GetApplicationWindow()
/**
* @copydoc Dali::Integration::AndroidFramework::OnWindowCreated()
*/
- void OnWindowCreated( ANativeWindow* window );
+ void OnWindowCreated(ANativeWindow* window);
/**
* @copydoc Dali::Integration::AndroidFramework::OnWindowDestroyed()
*/
- void OnWindowDestroyed( ANativeWindow* window );
+ void OnWindowDestroyed(ANativeWindow* window);
/**
* @copydoc Dali::Integration::AndroidFramework::Get()
/**
* @brief Sets an internal framework.
*/
- void SetFramework( Framework* framework ) { mFramework = framework; }
+ void SetFramework(Framework* framework)
+ {
+ mFramework = framework;
+ }
/**
* @brief Gets an internal framework.
*
* @return a pointer to the internal framework
*/
- Framework* GetFramework() { return mFramework; }
+ Framework* GetFramework()
+ {
+ return mFramework;
+ }
/**
* Virtual destructor.
virtual ~AndroidFramework();
// Not copyable or movable
- AndroidFramework( const AndroidFramework& ) = delete; ///< Deleted copy constructor
- AndroidFramework( AndroidFramework&& ) = delete; ///< Deleted move constructor
- AndroidFramework& operator=( const AndroidFramework& ) = delete; ///< Deleted copy assignment operator
- AndroidFramework& operator=( AndroidFramework&& ) = delete; ///< Deleted move assignment operator
+ AndroidFramework(const AndroidFramework&) = delete; ///< Deleted copy constructor
+ AndroidFramework(AndroidFramework&&) = delete; ///< Deleted move constructor
+ AndroidFramework& operator=(const AndroidFramework&) = delete; ///< Deleted copy assignment operator
+ AndroidFramework& operator=(AndroidFramework&&) = delete; ///< Deleted move assignment operator
private:
- AndroidFramework( Dali::Integration::AndroidFramework* androidFramework );
+ AndroidFramework(Dali::Integration::AndroidFramework* androidFramework);
Dali::Integration::AndroidFramework* mAndroidFramework;
- Framework* mFramework;
+ Framework* mFramework;
- android_app* mNativeApplication;
- ANativeWindow* mWindow;
- AAssetManager* mAssets;
- std::string mInternalDataPath;
+ android_app* mNativeApplication;
+ ANativeWindow* mWindow;
+ AAssetManager* mAssets;
+ std::string mInternalDataPath;
AConfiguration* mConfiguration;
- JavaVM* mJVM;
+ JavaVM* mJVM;
public:
- static AndroidFramework& GetImplementation( Dali::Integration::AndroidFramework& androidFramework ) { return *androidFramework.mImpl; }
- static Framework& GetFramework( Dali::Integration::AndroidFramework& androidFramework ) { return *androidFramework.mImpl->mFramework; }
+ static AndroidFramework& GetImplementation(Dali::Integration::AndroidFramework& androidFramework)
+ {
+ return *androidFramework.mImpl;
+ }
+ static Framework& GetFramework(Dali::Integration::AndroidFramework& androidFramework)
+ {
+ return *androidFramework.mImpl->mFramework;
+ }
};
-} // namespace Internal
-
} // namespace Adaptor
+} // namespace Internal
+
} // namespace Dali
#endif // DALI_INTEGRATION_ANDROID_FRAMEWORK_IMPL_H
-
#define DALI_INTERNAL_ADAPTOR_IMPL_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
+#include <dali/integration-api/render-controller.h>
#include <dali/public-api/common/vector-wrapper.h>
#include <dali/public-api/math/rect.h>
-#include <dali/public-api/signals/callback.h>
#include <dali/public-api/math/uint-16-pair.h>
-#include <dali/integration-api/render-controller.h>
+#include <dali/public-api/signals/callback.h>
// INTERNAL INCLUDES
-#include <dali/public-api/adaptor-framework/tts-player.h>
#include <dali/devel-api/adaptor-framework/clipboard.h>
-#include <dali/integration-api/scene.h>
#include <dali/integration-api/adaptor-framework/adaptor.h>
#include <dali/integration-api/adaptor-framework/scene-holder-impl.h>
#include <dali/integration-api/adaptor-framework/trigger-event-factory.h>
+#include <dali/integration-api/scene.h>
#include <dali/internal/adaptor/common/adaptor-internal-services.h>
#include <dali/internal/graphics/common/graphics-interface.h>
#include <dali/internal/legacy/common/tizen-platform-abstraction.h>
#include <dali/internal/system/common/system-trace.h>
#include <dali/internal/window-system/common/damage-observer.h>
#include <dali/internal/window-system/common/window-visibility-observer.h>
+#include <dali/public-api/adaptor-framework/tts-player.h>
#include <string>
namespace Dali
{
-
class RenderSurfaceInterface;
namespace Accessibility
class GlAbstraction;
class Processor;
class AddOnManager;
-}
+} // namespace Integration
namespace Internal
{
-
namespace Adaptor
{
class DisplayConnection;
public WindowVisibilityObserver
{
public:
-
- using AdaptorSignalType = Dali::Adaptor::AdaptorSignalType;
+ using AdaptorSignalType = Dali::Adaptor::AdaptorSignalType;
using WindowCreatedSignalType = Dali::Adaptor::WindowCreatedSignalType;
- using SurfaceSize = Uint16Pair; ///< Surface size type
+ using SurfaceSize = Uint16Pair; ///< Surface size type
/**
* Creates a New Adaptor
* @param[in] environmentOptions A pointer to the environment options. If NULL then one is created.
* @param[in] threadMode The thread mode
*/
- static Dali::Adaptor* New( Dali::Integration::SceneHolder window,
- Dali::RenderSurfaceInterface* surface,
- EnvironmentOptions* environmentOptions,
- ThreadMode threadMode );
+ static Dali::Adaptor* New(Dali::Integration::SceneHolder window,
+ Dali::RenderSurfaceInterface* surface,
+ EnvironmentOptions* environmentOptions,
+ ThreadMode threadMode);
/**
* Creates a New Adaptor
* @param[in] window The window handle
* @param[in] environmentOptions A pointer to the environment options. If NULL then one is created.
*/
- static Dali::Adaptor* New( Dali::Integration::SceneHolder window,
- EnvironmentOptions* environmentOptions );
+ static Dali::Adaptor* New(Dali::Integration::SceneHolder window,
+ EnvironmentOptions* environmentOptions);
/**
* Creates a New Adaptor
* @param[in] environmentOptions A pointer to the environment options. If NULL then one is created.
* @param[in] threadMode The thread mode
*/
- static Dali::Adaptor* New( GraphicsFactory& graphicsFactory,
- Dali::Integration::SceneHolder window,
- Dali::RenderSurfaceInterface* surface,
- EnvironmentOptions* environmentOptions,
- ThreadMode threadMode );
+ static Dali::Adaptor* New(GraphicsFactory& graphicsFactory,
+ Dali::Integration::SceneHolder window,
+ Dali::RenderSurfaceInterface* surface,
+ EnvironmentOptions* environmentOptions,
+ ThreadMode threadMode);
/**
* Creates a New Adaptor
* @param[in] window The window handle
* @param[in] environmentOptions A pointer to the environment options. If NULL then one is created.
*/
- static Dali::Adaptor* New( GraphicsFactory& graphicsFactory,
- Dali::Integration::SceneHolder window,
- EnvironmentOptions* environmentOptions );
+ static Dali::Adaptor* New(GraphicsFactory& graphicsFactory,
+ Dali::Integration::SceneHolder window,
+ EnvironmentOptions* environmentOptions);
/**
* 2-step initialisation, this should be called after creating an adaptor instance.
* @param[in] graphicsFactory A factory that creates the graphics interface
*/
- void Initialize( GraphicsFactory& graphicsFactory );
+ void Initialize(GraphicsFactory& graphicsFactory);
/**
* Virtual destructor.
/**
* @copydoc Dali::EventFeeder::FeedTouchPoint()
*/
- virtual void FeedTouchPoint( TouchPoint& point, int timeStamp );
+ virtual void FeedTouchPoint(TouchPoint& point, int timeStamp);
/**
* @copydoc Dali::EventFeeder::FeedWheelEvent()
*/
- virtual void FeedWheelEvent( Dali::WheelEvent& wheelEvent );
+ virtual void FeedWheelEvent(Dali::WheelEvent& wheelEvent);
/**
* @copydoc Dali::EventFeeder::FeedKeyEvent()
*/
- virtual void FeedKeyEvent( Dali::KeyEvent& keyEvent );
+ virtual void FeedKeyEvent(Dali::KeyEvent& keyEvent);
/**
* @copydoc Dali::Adaptor::ReplaceSurface()
*/
- virtual void ReplaceSurface( Dali::Integration::SceneHolder window, Dali::RenderSurfaceInterface& surface );
+ virtual void ReplaceSurface(Dali::Integration::SceneHolder window, Dali::RenderSurfaceInterface& surface);
/**
* @copydoc Dali::Adaptor::GetSurface()
/**
* @copydoc Dali::Adaptor::AddIdle()
*/
- virtual bool AddIdle( CallbackBase* callback, bool hasReturnValue, bool forceAdd );
+ virtual bool AddIdle(CallbackBase* callback, bool hasReturnValue, bool forceAdd);
/**
* Adds a new Window instance to the Adaptor
* @param[in] childWindow The child window instance
*/
- virtual bool AddWindow( Dali::Integration::SceneHolder childWindow );
+ virtual bool AddWindow(Dali::Integration::SceneHolder childWindow);
/**
* Removes an existing Window instance from the Adaptor
* @param[in] window The Window instance
*/
- virtual bool RemoveWindow( Dali::Integration::SceneHolder* childWindow );
+ virtual bool RemoveWindow(Dali::Integration::SceneHolder* childWindow);
/**
* Removes an existing Window instance from the Adaptor
* @param[in] windowName The Window name
* @note If two Windows have the same name, the first one that matches will be removed
*/
- virtual bool RemoveWindow( std::string childWindowName );
+ virtual bool RemoveWindow(std::string childWindowName);
/**
* @copydoc Dali::Adaptor::RemoveIdle()
*/
- virtual void RemoveIdle( CallbackBase* callback );
+ virtual void RemoveIdle(CallbackBase* callback);
/**
* @copydoc Dali::Adaptor::ProcessIdle()
/**
* Sets a pre-render callback.
*/
- void SetPreRenderCallback( CallbackBase* callback );
+ void SetPreRenderCallback(CallbackBase* callback);
/**
* Removes an existing Window instance from the Adaptor
* @param[in] childWindow The Window instance
*/
- bool RemoveWindow( Dali::Internal::Adaptor::SceneHolder* childWindow );
+ bool RemoveWindow(Dali::Internal::Adaptor::SceneHolder* childWindow);
/**
* @brief Deletes the rendering surface
* @param[in] surface to delete
*/
- void DeleteSurface( Dali::RenderSurfaceInterface& surface );
+ void DeleteSurface(Dali::RenderSurfaceInterface& surface);
/**
* @brief Retrieve the window that the given actor is added to.
* @param[in] actor The actor
* @return The window the actor is added to or a null pointer if the actor is not added to any widnow.
*/
- Dali::Internal::Adaptor::SceneHolder* GetWindow( Dali::Actor& actor );
+ Dali::Internal::Adaptor::SceneHolder* GetWindow(Dali::Actor& actor);
/**
* @copydoc Dali::Adaptor::GetWindows()
Dali::ObjectRegistry GetObjectRegistry() const;
public:
-
/**
* @return the Core instance
*/
/**
* @copydoc Dali::Adaptor::SetRenderRefreshRate()
*/
- void SetRenderRefreshRate( unsigned int numberOfVSyncsPerRender );
+ void SetRenderRefreshRate(unsigned int numberOfVSyncsPerRender);
/**
* Return the PlatformAbstraction.
* @param[in] actor The actor
* @return native window handle
*/
- Any GetNativeWindowHandle( Dali::Actor actor );
+ Any GetNativeWindowHandle(Dali::Actor actor);
/**
* Get the native display associated with the graphics backend
void SetUseRemoteSurface(bool useRemoteSurface);
public:
-
/**
* Adds an adaptor observer so that we can observe the adaptor's lifetime events.
* @param[in] observer The observer.
* @note Observers should remove themselves when they are destroyed.
*/
- void AddObserver( LifeCycleObserver& observer );
+ void AddObserver(LifeCycleObserver& observer);
/**
* Removes the observer from the adaptor.
* @param[in] observer The observer to remove.
* @note Observers should remove themselves when they are destroyed.
*/
- void RemoveObserver( LifeCycleObserver& observer );
+ void RemoveObserver(LifeCycleObserver& observer);
/**
* Emits the Notification event to the Dali core.
/**
* Gets AppId of current application
*/
- void GetAppId( std::string& appId );
+ void GetAppId(std::string& appId);
/**
* Gets path for resource storage.
* @param[out] path Path for resource storage
*/
- void GetResourceStoragePath( std::string& path );
+ void GetResourceStoragePath(std::string& path);
/**
* @copydoc Dali::Adaptor::SurfaceResizePrepare
*/
- void SurfaceResizePrepare( Dali::RenderSurfaceInterface* surface, SurfaceSize surfaceSize );
+ void SurfaceResizePrepare(Dali::RenderSurfaceInterface* surface, SurfaceSize surfaceSize);
/**
* @copydoc Dali::Adaptor::SurfaceResizeComplete
*/
- void SurfaceResizeComplete( Dali::RenderSurfaceInterface* surface, SurfaceSize surfaceSize );
+ void SurfaceResizeComplete(Dali::RenderSurfaceInterface* surface, SurfaceSize surfaceSize);
/**
* Sets layout direction of root by system language
* @param[in] locale System locale
*/
- void SetRootLayoutDirection( std::string locale );
+ void SetRootLayoutDirection(std::string locale);
/**
* @copydoc Dali::Adaptor::RenderOnce
/**
* @copydoc Dali::Adaptor::RegisterProcessor
*/
- void RegisterProcessor( Integration::Processor& processor );
+ void RegisterProcessor(Integration::Processor& processor);
/**
* @coydoc Dali::Adaptor::UnregisterProcessor
*/
- void UnregisterProcessor( Integration::Processor& processor );
+ void UnregisterProcessor(Integration::Processor& processor);
/**
* Check MultipleWindow is supported
*/
bool IsMultipleWindowSupported() const;
-public: //AdaptorInternalServices
-
+public: //AdaptorInternalServices
/**
* @copydoc Dali::Internal::Adaptor::AdaptorInternalServices::GetPlatformAbstractionInterface()
*/
/**
* copydoc Dali::Internal::Adaptor::AdaptorInternalServices::GetWindowContainerInterface()
*/
- void GetWindowContainerInterface( WindowContainer& windows ) override;
+ void GetWindowContainerInterface(WindowContainer& windows) override;
public: // Signals
-
/**
* @copydoc Dali::Adaptor::SignalResized
*/
}
public: // From Dali::Internal::Adaptor::CoreEventInterface
-
/**
* @copydoc Dali::Internal::Adaptor:CoreEventInterface:::ProcessCoreEvents()
*/
void ProcessCoreEvents() override;
private: // From Dali::Internal::Adaptor::CoreEventInterface
-
/**
* @copydoc Dali::Internal::Adaptor::CoreEventInterface::QueueCoreEvent()
*/
void QueueCoreEvent(const Dali::Integration::Event& event) override;
private: // From Dali::Integration::RenderController
-
/**
* @copydoc Dali::Integration::RenderController::RequestUpdate()
*/
- void RequestUpdate( bool forceUpdate ) override;
+ void RequestUpdate(bool forceUpdate) override;
/**
* @copydoc Dali::Integration::RenderController::RequestProcessEventsOnIdle()
*/
- void RequestProcessEventsOnIdle( bool forceProcess ) override;
+ void RequestProcessEventsOnIdle(bool forceProcess) override;
public: // From Dali::Internal::Adaptor::WindowVisibilityObserver
-
/**
* Called when the window becomes fully or partially visible.
*/
void OnWindowHidden() override;
private: // From Dali::Internal::Adaptor::DamageObserver
-
/**
* @copydoc Dali::Internal::Adaptor::DamageObserver::OnDamaged()
*/
- void OnDamaged( const DamageArea& area ) override;
+ void OnDamaged(const DamageArea& area) override;
private:
-
// Undefined
Adaptor(const Adaptor&) = delete;
Adaptor& operator=(Adaptor&) = delete;
private:
-
/**
* Assigns the render surface to the adaptor
*
*/
- void SetSurface(Dali::RenderSurfaceInterface *surface);
+ void SetSurface(Dali::RenderSurfaceInterface* surface);
/**
* called after surface is created
* @endcode
* This callback will be called repeatedly as long as it returns true. A return of 0 deletes this callback.
*/
- bool AddIdleEnterer( CallbackBase* callback, bool forceAdd );
+ bool AddIdleEnterer(CallbackBase* callback, bool forceAdd);
/**
* Removes a previously added the idle enterer callback.
*/
- void RemoveIdleEnterer( CallbackBase* callback );
+ void RemoveIdleEnterer(CallbackBase* callback);
private:
-
/**
* Constructor
* @param[in] window window handle
* @param[in] environmentOptions A pointer to the environment options. If NULL then one is created.
* @param[in] threadMode The ThreadMode of the Adaptor
*/
- Adaptor( Dali::Integration::SceneHolder window, Dali::Adaptor& adaptor, Dali::RenderSurfaceInterface* surface, EnvironmentOptions* environmentOptions, ThreadMode threadMode );
+ Adaptor(Dali::Integration::SceneHolder window, Dali::Adaptor& adaptor, Dali::RenderSurfaceInterface* surface, EnvironmentOptions* environmentOptions, ThreadMode threadMode);
private: // Types
-
enum State
{
READY, ///< Initial state before Adaptor::Start is called.
// There is no weak handle for BaseHandle in DALi, but we can't ref count the window here,
// so we have to store the raw pointer.
- using WindowContainer = std::vector<Dali::Internal::Adaptor::SceneHolder*>;
+ using WindowContainer = std::vector<Dali::Internal::Adaptor::SceneHolder*>;
using ObserverContainer = std::vector<LifeCycleObserver*>;
-private: // Data
-
- AdaptorSignalType mResizedSignal; ///< Resized signal.
- AdaptorSignalType mLanguageChangedSignal; ///< Language changed signal.
- WindowCreatedSignalType mWindowCreatedSignal; ///< Window created signal.
-
- Dali::Adaptor& mAdaptor; ///< Reference to public adaptor instance.
- State mState; ///< Current state of the adaptor
- Dali::Integration::Core* mCore; ///< Dali Core
- ThreadController* mThreadController; ///< Controls the threads
-
- std::unique_ptr< GraphicsInterface > mGraphics; ///< Graphics interface
- Dali::DisplayConnection* mDisplayConnection; ///< Display connection
- WindowContainer mWindows; ///< A container of all the Windows that are currently created
-
- std::unique_ptr<ConfigurationManager> mConfigurationManager; ///< Configuration manager
-
- TizenPlatform::TizenPlatformAbstraction* mPlatformAbstraction; ///< Platform abstraction
-
- CallbackManager* mCallbackManager; ///< Used to install callbacks
- bool mNotificationOnIdleInstalled; ///< whether the idle handler is installed to send an notification event
- TriggerEventInterface* mNotificationTrigger; ///< Notification event trigger
- FeedbackPluginProxy* mDaliFeedbackPlugin; ///< Used to access feedback support
- FeedbackController* mFeedbackController; ///< Plays feedback effects for Dali-Toolkit UI Controls.
- Dali::TtsPlayer mTtsPlayers[Dali::TtsPlayer::MODE_NUM]; ///< Provides TTS support
- ObserverContainer mObservers; ///< A list of adaptor observer pointers
- EnvironmentOptions* mEnvironmentOptions; ///< environment options
- PerformanceInterface* mPerformanceInterface; ///< Performance interface
- KernelTrace mKernelTracer; ///< Kernel tracer
- SystemTrace mSystemTracer; ///< System tracer
- ObjectProfiler* mObjectProfiler; ///< Tracks object lifetime for profiling
- SocketFactory mSocketFactory; ///< Socket factory
- ThreadMode mThreadMode; ///< The thread mode
- const bool mEnvironmentOptionsOwned:1; ///< Whether we own the EnvironmentOptions (and thus, need to delete it)
- bool mUseRemoteSurface:1; ///< whether the remoteSurface is used or not
- Dali::LayoutDirection::Type mRootLayoutDirection; ///< LayoutDirection of window
-
- std::unique_ptr<Integration::AddOnManager> mAddOnManager; ///< Pointer to the addon manager
+private: // Data
+ AdaptorSignalType mResizedSignal; ///< Resized signal.
+ AdaptorSignalType mLanguageChangedSignal; ///< Language changed signal.
+ WindowCreatedSignalType mWindowCreatedSignal; ///< Window created signal.
+
+ Dali::Adaptor& mAdaptor; ///< Reference to public adaptor instance.
+ State mState; ///< Current state of the adaptor
+ Dali::Integration::Core* mCore; ///< Dali Core
+ ThreadController* mThreadController; ///< Controls the threads
+
+ std::unique_ptr<GraphicsInterface> mGraphics; ///< Graphics interface
+ Dali::DisplayConnection* mDisplayConnection; ///< Display connection
+ WindowContainer mWindows; ///< A container of all the Windows that are currently created
+
+ std::unique_ptr<ConfigurationManager> mConfigurationManager; ///< Configuration manager
+
+ TizenPlatform::TizenPlatformAbstraction* mPlatformAbstraction; ///< Platform abstraction
+
+ CallbackManager* mCallbackManager; ///< Used to install callbacks
+ bool mNotificationOnIdleInstalled; ///< whether the idle handler is installed to send an notification event
+ TriggerEventInterface* mNotificationTrigger; ///< Notification event trigger
+ FeedbackPluginProxy* mDaliFeedbackPlugin; ///< Used to access feedback support
+ FeedbackController* mFeedbackController; ///< Plays feedback effects for Dali-Toolkit UI Controls.
+ Dali::TtsPlayer mTtsPlayers[Dali::TtsPlayer::MODE_NUM]; ///< Provides TTS support
+ ObserverContainer mObservers; ///< A list of adaptor observer pointers
+ EnvironmentOptions* mEnvironmentOptions; ///< environment options
+ PerformanceInterface* mPerformanceInterface; ///< Performance interface
+ KernelTrace mKernelTracer; ///< Kernel tracer
+ SystemTrace mSystemTracer; ///< System tracer
+ ObjectProfiler* mObjectProfiler; ///< Tracks object lifetime for profiling
+ SocketFactory mSocketFactory; ///< Socket factory
+ ThreadMode mThreadMode; ///< The thread mode
+ const bool mEnvironmentOptionsOwned : 1; ///< Whether we own the EnvironmentOptions (and thus, need to delete it)
+ bool mUseRemoteSurface : 1; ///< whether the remoteSurface is used or not
+ Dali::LayoutDirection::Type mRootLayoutDirection; ///< LayoutDirection of window
+
+ std::unique_ptr<Integration::AddOnManager> mAddOnManager; ///< Pointer to the addon manager
class AccessibilityObserver : public ConnectionTracker
{
public:
- void OnAccessibleKeyEvent( const Dali::KeyEvent& event );
+ void OnAccessibleKeyEvent(const Dali::KeyEvent& event);
};
AccessibilityObserver accessibilityObserver;
public:
- inline static Adaptor& GetImplementation(Dali::Adaptor& adaptor) { return *adaptor.mImpl; }
+ inline static Adaptor& GetImplementation(Dali::Adaptor& adaptor)
+ {
+ return *adaptor.mImpl;
+ }
};
-} // namespace Internal
-
} // namespace Adaptor
+} // namespace Internal
+
} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_IMPL_H
#define DALI_INTERNAL_ADAPTOR_INTERNAL_SERVICES_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class SceneHolder;
using WindowContainer = std::vector<Internal::Adaptor::SceneHolder*>;
*/
class AdaptorInternalServices
{
-
public:
-
/**
* @return core
*/
* Used to access the list of windows from the Render thread
* @param[out] windows The list of created windows
*/
- virtual void GetWindowContainerInterface( WindowContainer& windows ) = 0;
+ virtual void GetWindowContainerInterface(WindowContainer& windows) = 0;
protected:
-
/**
* constructor
*/
- AdaptorInternalServices()
- {
- };
+ AdaptorInternalServices(){};
/**
* virtual destructor
*/
- virtual ~AdaptorInternalServices()
- {
- };
+ virtual ~AdaptorInternalServices(){};
// Undefined copy constructor.
- AdaptorInternalServices( const AdaptorInternalServices& ) = delete;
+ AdaptorInternalServices(const AdaptorInternalServices&) = delete;
// Undefined assignment operator.
- AdaptorInternalServices& operator=( const AdaptorInternalServices& ) = delete;
+ AdaptorInternalServices& operator=(const AdaptorInternalServices&) = delete;
};
-} // namespace Internal
-
} // namespace Adaptor
+} // namespace Internal
+
} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_INTERNAL_SERVICES_H
#define DALI_INTERNAL_APPLICATION_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/public-api/object/base-object.h>
// INTERNAL INCLUDES
-#include <dali/public-api/adaptor-framework/application.h>
#include <dali/devel-api/common/singleton-service.h>
+#include <dali/public-api/adaptor-framework/application.h>
+#include <dali/internal/adaptor/common/adaptor-builder-impl.h>
#include <dali/internal/adaptor/common/framework.h>
#include <dali/internal/system/common/environment-options.h>
-#include <dali/internal/adaptor/common/adaptor-builder-impl.h>
namespace Dali
{
namespace Internal
{
-
namespace Adaptor
{
-
namespace Launchpad
{
-
/**
* @brief Launchpad is used to improve application launch performance.
* When an application is pre-initialized, so files are preloaded, some functions are initialized and a window is made in advance.
*/
enum State
{
- NONE, ///< The default state
- PRE_INITIALIZED ///< Application is pre-initialized.
+ NONE, ///< The default state
+ PRE_INITIALIZED ///< Application is pre-initialized.
};
} // namespace Launchpad
class Application : public BaseObject, public Framework::Observer
{
public:
-
typedef Dali::Application::LowBatterySignalType LowBatterySignalType;
- typedef Dali::Application::LowMemorySignalType LowMemorySignalType;
- typedef Dali::Application::AppSignalType AppSignalType;
+ typedef Dali::Application::LowMemorySignalType LowMemorySignalType;
+ typedef Dali::Application::AppSignalType AppSignalType;
typedef Dali::Application::AppControlSignalType AppControlSignalType;
- typedef Dali::Application::WINDOW_MODE WINDOW_MODE;
+ typedef Dali::Application::WINDOW_MODE WINDOW_MODE;
/**
* Create a new application
* @param[in] positionSize A position and a size of the window
* @param[in] applicationType A member of Dali::Framework::Type
*/
- static ApplicationPtr New( int* argc, char **argv[], const std::string& stylesheet,
- WINDOW_MODE windowMode, const PositionSize& positionSize, Framework::Type applicationType );
+ static ApplicationPtr New(int* argc, char** argv[], const std::string& stylesheet, WINDOW_MODE windowMode, const PositionSize& positionSize, Framework::Type applicationType);
/**
* @copydoc Dali::DevelApplication::PreInitialize()
*/
- static void PreInitialize( int* argc, char** argv[] );
+ static void PreInitialize(int* argc, char** argv[]);
public:
-
/**
* @copydoc Dali::Application::MainLoop()
*/
/**
* @copydoc Dali::Application::AddIdle()
*/
- bool AddIdle( CallbackBase* callback, bool hasReturnValue );
+ bool AddIdle(CallbackBase* callback, bool hasReturnValue);
/**
* @copydoc Dali::Application::GetAdaptor();
static ApplicationPtr GetPreInitializedApplication();
public: // From Framework::Observer
-
/**
* Called when the framework is initialised.
*/
* Called when the framework received AppControlSignal.
* @param[in] The bundle data of AppControl event.
*/
- void OnAppControl(void *data) override;
+ void OnAppControl(void* data) override;
/**
* Called when the framework informs the application that it should reset itself.
/**
* Called when the framework informs the application that the battery level of the device is low.
*/
- void OnBatteryLow( Dali::DeviceStatus::Battery::Status status ) override;
+ void OnBatteryLow(Dali::DeviceStatus::Battery::Status status) override;
/**
* Called when the framework informs the application that the memory level of the device is low.
*/
- void OnMemoryLow( Dali::DeviceStatus::Memory::Status status ) override;
+ void OnMemoryLow(Dali::DeviceStatus::Memory::Status status) override;
/**
* Called when the framework informs the application that the platform surface is created.
*/
- void OnSurfaceCreated( Any newSurface ) override;
+ void OnSurfaceCreated(Any newSurface) override;
/**
* Called when the framework informs the application that the platform surface is destroyed.
*/
- void OnSurfaceDestroyed( Any newSurface ) override;
+ void OnSurfaceDestroyed(Any newSurface) override;
public:
-
/**
* Sets a user defined theme file.
* This should be called before initialization.
* @param[in] stylesheet The path to user defined theme file
*/
- void SetStyleSheet( const std::string& stylesheet );
+ void SetStyleSheet(const std::string& stylesheet);
/**
* Sets a command line options.
* @param[in] argc A pointer to the number of arguments
* @param[in] argv A pointer to the argument list
*/
- void SetCommandLineOptions( int* argc, char **argv[] );
-
-public: // Signals
+ void SetCommandLineOptions(int* argc, char** argv[]);
+public: // Signals
/**
* @copydoc Dali::Application::InitSignal()
*/
- Dali::Application::AppSignalType& InitSignal() { return mInitSignal; }
+ Dali::Application::AppSignalType& InitSignal()
+ {
+ return mInitSignal;
+ }
/**
* @copydoc Dali::Application::TerminateSignal()
*/
- Dali::Application::AppSignalType& TerminateSignal() { return mTerminateSignal; }
+ Dali::Application::AppSignalType& TerminateSignal()
+ {
+ return mTerminateSignal;
+ }
/**
* @copydoc Dali::Application::PauseSignal()
*/
- Dali::Application::AppSignalType& PauseSignal() { return mPauseSignal; }
+ Dali::Application::AppSignalType& PauseSignal()
+ {
+ return mPauseSignal;
+ }
/**
* @copydoc Dali::Application::ResumeSignal()
*/
- Dali::Application::AppSignalType& ResumeSignal() { return mResumeSignal; }
+ Dali::Application::AppSignalType& ResumeSignal()
+ {
+ return mResumeSignal;
+ }
/**
* @copydoc Dali::Application::ResetSignal()
*/
- Dali::Application::AppSignalType& ResetSignal() { return mResetSignal; }
+ Dali::Application::AppSignalType& ResetSignal()
+ {
+ return mResetSignal;
+ }
/**
* @copydoc Dali::Application::AppControlSignal()
*/
- Dali::Application::AppControlSignalType& AppControlSignal() { return mAppControlSignal; }
+ Dali::Application::AppControlSignalType& AppControlSignal()
+ {
+ return mAppControlSignal;
+ }
/**
* @copydoc Dali::Application::LanguageChangedSignal()
*/
- Dali::Application::AppSignalType& LanguageChangedSignal() { return mLanguageChangedSignal; }
+ Dali::Application::AppSignalType& LanguageChangedSignal()
+ {
+ return mLanguageChangedSignal;
+ }
/**
* @copydoc Dali::Application::RegionChangedSignal()
*/
- Dali::Application::AppSignalType& RegionChangedSignal() { return mRegionChangedSignal; }
+ Dali::Application::AppSignalType& RegionChangedSignal()
+ {
+ return mRegionChangedSignal;
+ }
/**
* @copydoc Dali::Application::LowBatterySignal()
*/
- Dali::Application::LowBatterySignalType& LowBatterySignal() { return mLowBatterySignal; }
+ Dali::Application::LowBatterySignalType& LowBatterySignal()
+ {
+ return mLowBatterySignal;
+ }
/**
* @copydoc Dali::Application:::LowMemorySignal()
*/
- Dali::Application::LowMemorySignalType& LowMemorySignal() { return mLowMemorySignal; }
+ Dali::Application::LowMemorySignalType& LowMemorySignal()
+ {
+ return mLowMemorySignal;
+ }
protected:
-
/**
* Private Constructor
* @param[in] argc A pointer to the number of arguments
* @param[in] positionSize A position and a size of the window
* @param[in] applicationType A member of Dali::Framework::Type
*/
- Application( int* argc, char **argv[], const std::string& stylesheet,
- WINDOW_MODE windowMode, const PositionSize& positionSize, Framework::Type applicationType );
+ Application(int* argc, char** argv[], const std::string& stylesheet, WINDOW_MODE windowMode, const PositionSize& positionSize, Framework::Type applicationType);
/**
* Destructor
void QuitFromMainLoop();
private:
-
- AppSignalType mInitSignal;
- AppSignalType mTerminateSignal;
- AppSignalType mPauseSignal;
- AppSignalType mResumeSignal;
- AppSignalType mResetSignal;
- AppControlSignalType mAppControlSignal;
- AppSignalType mLanguageChangedSignal;
- AppSignalType mRegionChangedSignal;
- LowBatterySignalType mLowBatterySignal;
- LowMemorySignalType mLowMemorySignal;
-
- EventLoop* mEventLoop;
- Framework* mFramework;
-
- CommandLineOptions* mCommandLineOptions;
-
- Dali::Internal::Adaptor::AdaptorBuilder* mAdaptorBuilder; ///< The adaptor builder
+ AppSignalType mInitSignal;
+ AppSignalType mTerminateSignal;
+ AppSignalType mPauseSignal;
+ AppSignalType mResumeSignal;
+ AppSignalType mResetSignal;
+ AppControlSignalType mAppControlSignal;
+ AppSignalType mLanguageChangedSignal;
+ AppSignalType mRegionChangedSignal;
+ LowBatterySignalType mLowBatterySignal;
+ LowMemorySignalType mLowMemorySignal;
+
+ EventLoop* mEventLoop;
+ Framework* mFramework;
+
+ CommandLineOptions* mCommandLineOptions;
+
+ Dali::Internal::Adaptor::AdaptorBuilder* mAdaptorBuilder; ///< The adaptor builder
Dali::Adaptor* mAdaptor;
// The Main Window is that window created by the Application during initial startup
// (previously this was the only window)
- Dali::Window mMainWindow; ///< Main Window instance
- Dali::Application::WINDOW_MODE mMainWindowMode; ///< Window mode of the main window
- std::string mMainWindowName; ///< Name of the main window as obtained from environment options
+ Dali::Window mMainWindow; ///< Main Window instance
+ Dali::Application::WINDOW_MODE mMainWindowMode; ///< Window mode of the main window
+ std::string mMainWindowName; ///< Name of the main window as obtained from environment options
- std::string mStylesheet;
- EnvironmentOptions mEnvironmentOptions;
- PositionSize mWindowPositionSize;
- Launchpad::State mLaunchpadState;
- bool mUseRemoteSurface;
+ std::string mStylesheet;
+ EnvironmentOptions mEnvironmentOptions;
+ PositionSize mWindowPositionSize;
+ Launchpad::State mLaunchpadState;
+ bool mUseRemoteSurface;
- SlotDelegate< Application > mSlotDelegate;
+ SlotDelegate<Application> mSlotDelegate;
- static ApplicationPtr gPreInitializedApplication;
+ static ApplicationPtr gPreInitializedApplication;
};
inline Application& GetImplementation(Dali::Application& application)
return static_cast<const Internal::Adaptor::Application&>(handle);
}
-
} // namespace Adaptor
} // namespace Internal
#define DALI_INTERNAL_COMBINED_UPDATE_RENDER_CONTROLLER_DEBUG_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
namespace
{
// Uncomment next line for FULL logging of the ThreadSynchronization class in release mode
#define ENABLE_UPDATE_RENDER_THREAD_LOGGING
#define ENABLE_EVENT_LOGGING
-#define DEBUG_LEVEL_COUNTER Debug::Verbose
-#define DEBUG_LEVEL_UPDATE_RENDER Debug::General
-#define DEBUG_LEVEL_EVENT Debug::Concise
+#define DEBUG_LEVEL_COUNTER Debug::Verbose
+#define DEBUG_LEVEL_UPDATE_RENDER Debug::General
+#define DEBUG_LEVEL_EVENT Debug::Concise
-Debug::Filter* gLogFilter = Debug::Filter::New( Debug::NoLogging, false, "LOG_THREAD_SYNC" );
+Debug::Filter* gLogFilter = Debug::Filter::New(Debug::NoLogging, false, "LOG_THREAD_SYNC");
#define LOG_THREAD_SYNC(level, color, format, ...) \
- DALI_LOG_INFO( gLogFilter, level, "%s" format "%s\n", color, ## __VA_ARGS__, COLOR_CLEAR )
+ DALI_LOG_INFO(gLogFilter, level, "%s" format "%s\n", color, ##__VA_ARGS__, COLOR_CLEAR)
-#define LOG_THREAD_SYNC_TRACE(color) \
- Dali::Integration::Log::TraceObj debugTraceObj( gLogFilter, "%s%s%s", color, __FUNCTION__, COLOR_CLEAR ); \
- if( ! gLogFilter->IsTraceEnabled() ) { LOG_THREAD_SYNC( Debug::Concise, color, "%s", __FUNCTION__ ); }
+#define LOG_THREAD_SYNC_TRACE(color) \
+ Dali::Integration::Log::TraceObj debugTraceObj(gLogFilter, "%s%s%s", color, __FUNCTION__, COLOR_CLEAR); \
+ if(!gLogFilter->IsTraceEnabled()) \
+ { \
+ LOG_THREAD_SYNC(Debug::Concise, color, "%s", __FUNCTION__); \
+ }
-#define LOG_THREAD_SYNC_TRACE_FMT(color, format, ...) \
- Dali::Integration::Log::TraceObj debugTraceObj( gLogFilter, "%s%s: " format "%s", color, __FUNCTION__, ## __VA_ARGS__, COLOR_CLEAR ); \
- if( ! gLogFilter->IsTraceEnabled() ) { LOG_THREAD_SYNC( Debug::Concise, color, "%s: " format, __FUNCTION__, ## __VA_ARGS__ ); }
+#define LOG_THREAD_SYNC_TRACE_FMT(color, format, ...) \
+ Dali::Integration::Log::TraceObj debugTraceObj(gLogFilter, "%s%s: " format "%s", color, __FUNCTION__, ##__VA_ARGS__, COLOR_CLEAR); \
+ if(!gLogFilter->IsTraceEnabled()) \
+ { \
+ LOG_THREAD_SYNC(Debug::Concise, color, "%s: " format, __FUNCTION__, ##__VA_ARGS__); \
+ }
-#elif defined( RELEASE_BUILD_LOGGING )
+#elif defined(RELEASE_BUILD_LOGGING)
#define ENABLE_LOG_IN_COLOR
#define ENABLE_COUNTER_LOGGING
#define ENABLE_UPDATE_RENDER_THREAD_LOGGING
#define ENABLE_EVENT_LOGGING
-#define DEBUG_LEVEL_COUNTER 0
-#define DEBUG_LEVEL_UPDATE_RENDER 0
-#define DEBUG_LEVEL_EVENT 0
+#define DEBUG_LEVEL_COUNTER 0
+#define DEBUG_LEVEL_UPDATE_RENDER 0
+#define DEBUG_LEVEL_EVENT 0
#define LOG_THREAD_SYNC(level, color, format, ...) \
- Dali::Integration::Log::LogMessage( Dali::Integration::Log::DebugInfo, "%s" format "%s\n", color, ## __VA_ARGS__, COLOR_CLEAR )
+ Dali::Integration::Log::LogMessage(Dali::Integration::Log::DebugInfo, "%s" format "%s\n", color, ##__VA_ARGS__, COLOR_CLEAR)
#define LOG_THREAD_SYNC_TRACE(color) \
- Dali::Integration::Log::LogMessage( Dali::Integration::Log::DebugInfo, "%s%s%s\n", color, __FUNCTION__, COLOR_CLEAR )
+ Dali::Integration::Log::LogMessage(Dali::Integration::Log::DebugInfo, "%s%s%s\n", color, __FUNCTION__, COLOR_CLEAR)
#define LOG_THREAD_SYNC_TRACE_FMT(color, format, ...) \
- Dali::Integration::Log::LogMessage( Dali::Integration::Log::DebugInfo, "%s%s: " format "%s\n", color, __FUNCTION__, ## __VA_ARGS__, COLOR_CLEAR )
+ Dali::Integration::Log::LogMessage(Dali::Integration::Log::DebugInfo, "%s%s: " format "%s\n", color, __FUNCTION__, ##__VA_ARGS__, COLOR_CLEAR)
#else
#endif // DEBUG_ENABLED
#ifdef ENABLE_LOG_IN_COLOR
-#define COLOR_YELLOW "\033[33m"
-#define COLOR_LIGHT_RED "\033[91m"
-#define COLOR_LIGHT_YELLOW "\033[93m"
-#define COLOR_WHITE "\033[97m"
-#define COLOR_CLEAR "\033[0m"
+#define COLOR_YELLOW "\033[33m"
+#define COLOR_LIGHT_RED "\033[91m"
+#define COLOR_LIGHT_YELLOW "\033[93m"
+#define COLOR_WHITE "\033[97m"
+#define COLOR_CLEAR "\033[0m"
#else
#define COLOR_YELLOW
#define COLOR_LIGHT_RED
#endif
#ifdef ENABLE_COUNTER_LOGGING
-#define LOG_COUNTER_EVENT(format, ...) LOG_THREAD_SYNC(DEBUG_LEVEL_COUNTER, COLOR_LIGHT_RED, "%s: " format, __FUNCTION__, ## __VA_ARGS__)
-#define LOG_COUNTER_UPDATE_RENDER(format, ...) LOG_THREAD_SYNC(DEBUG_LEVEL_COUNTER, COLOR_LIGHT_YELLOW, "%s: " format, __FUNCTION__, ## __VA_ARGS__)
+#define LOG_COUNTER_EVENT(format, ...) LOG_THREAD_SYNC(DEBUG_LEVEL_COUNTER, COLOR_LIGHT_RED, "%s: " format, __FUNCTION__, ##__VA_ARGS__)
+#define LOG_COUNTER_UPDATE_RENDER(format, ...) LOG_THREAD_SYNC(DEBUG_LEVEL_COUNTER, COLOR_LIGHT_YELLOW, "%s: " format, __FUNCTION__, ##__VA_ARGS__)
#else
#define LOG_COUNTER_EVENT(format, ...)
#define LOG_COUNTER_UPDATE_RENDER(format, ...)
#endif
#ifdef ENABLE_UPDATE_RENDER_THREAD_LOGGING
-#define LOG_UPDATE_RENDER(format, ...) LOG_THREAD_SYNC(DEBUG_LEVEL_UPDATE_RENDER, COLOR_YELLOW, "%s: " format, __FUNCTION__, ## __VA_ARGS__)
-#define LOG_UPDATE_RENDER_TRACE LOG_THREAD_SYNC_TRACE(COLOR_YELLOW)
-#define LOG_UPDATE_RENDER_TRACE_FMT(format, ...) LOG_THREAD_SYNC_TRACE_FMT(COLOR_YELLOW, format, ## __VA_ARGS__)
+#define LOG_UPDATE_RENDER(format, ...) LOG_THREAD_SYNC(DEBUG_LEVEL_UPDATE_RENDER, COLOR_YELLOW, "%s: " format, __FUNCTION__, ##__VA_ARGS__)
+#define LOG_UPDATE_RENDER_TRACE LOG_THREAD_SYNC_TRACE(COLOR_YELLOW)
+#define LOG_UPDATE_RENDER_TRACE_FMT(format, ...) LOG_THREAD_SYNC_TRACE_FMT(COLOR_YELLOW, format, ##__VA_ARGS__)
#else
#define LOG_UPDATE_RENDER(format, ...)
#define LOG_UPDATE_RENDER_TRACE
#endif
#ifdef ENABLE_EVENT_LOGGING
-#define LOG_EVENT(format, ...) LOG_THREAD_SYNC(DEBUG_LEVEL_EVENT, COLOR_WHITE, "%s: " format, __FUNCTION__, ## __VA_ARGS__)
-#define LOG_EVENT_TRACE LOG_THREAD_SYNC_TRACE(COLOR_WHITE)
-#define LOG_EVENT_TRACE_FMT(format, ...) LOG_THREAD_SYNC_TRACE_FMT(COLOR_WHITE, format, ## __VA_ARGS__)
+#define LOG_EVENT(format, ...) LOG_THREAD_SYNC(DEBUG_LEVEL_EVENT, COLOR_WHITE, "%s: " format, __FUNCTION__, ##__VA_ARGS__)
+#define LOG_EVENT_TRACE LOG_THREAD_SYNC_TRACE(COLOR_WHITE)
+#define LOG_EVENT_TRACE_FMT(format, ...) LOG_THREAD_SYNC_TRACE_FMT(COLOR_WHITE, format, ##__VA_ARGS__)
#else
#define LOG_EVENT(format, ...)
#define LOG_EVENT_TRACE
#define DALI_INTERNAL_COMBINED_UPDATE_RENDER_CONTROLLER_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <pthread.h>
-#include <semaphore.h>
-#include <atomic>
-#include <stdint.h>
#include <dali/devel-api/threading/conditional-wait.h>
#include <dali/devel-api/threading/semaphore.h>
#include <dali/integration-api/core.h>
+#include <pthread.h>
+#include <semaphore.h>
+#include <stdint.h>
+#include <atomic>
// INTERNAL INCLUDES
#include <dali/integration-api/adaptor-framework/thread-synchronization-interface.h>
namespace Dali
{
-
class RenderSurfaceInterface;
class TriggerEventInterface;
namespace Internal
{
-
namespace Adaptor
{
-
class AdaptorInternalServices;
class EnvironmentOptions;
public ThreadSynchronizationInterface
{
public:
-
/**
* Constructor
*/
- CombinedUpdateRenderController( AdaptorInternalServices& adaptorInterfaces, const EnvironmentOptions& environmentOptions, ThreadMode threadMode );
+ CombinedUpdateRenderController(AdaptorInternalServices& adaptorInterfaces, const EnvironmentOptions& environmentOptions, ThreadMode threadMode);
/**
* Non virtual destructor. Not intended as base class.
/**
* @copydoc ThreadControllerInterface::RequestUpdateOnce()
*/
- void RequestUpdateOnce( UpdateMode updateMode ) override;
+ void RequestUpdateOnce(UpdateMode updateMode) override;
/**
* @copydoc ThreadControllerInterface::ReplaceSurface()
*/
- void ReplaceSurface( Dali::RenderSurfaceInterface* surface ) override;
+ void ReplaceSurface(Dali::RenderSurfaceInterface* surface) override;
/**
* @copydoc ThreadControllerInterface::DeleteSurface()
*/
- void DeleteSurface( Dali::RenderSurfaceInterface* surface ) override;
+ void DeleteSurface(Dali::RenderSurfaceInterface* surface) override;
/**
* @copydoc ThreadControllerInterface::ResizeSurface()
/**
* @copydoc ThreadControllerInterface::SetRenderRefreshRate()
*/
- void SetRenderRefreshRate( unsigned int numberOfFramesPerRender ) override;
+ void SetRenderRefreshRate(unsigned int numberOfFramesPerRender) override;
/**
* @copydoc ThreadControllerInterface::SetPreRenderCallback
*/
- void SetPreRenderCallback( CallbackBase* callback ) override;
+ void SetPreRenderCallback(CallbackBase* callback) override;
/**
* @copydoc ThreadControllerInterface::AddSurface()
*/
- void AddSurface( Dali::RenderSurfaceInterface* surface ) override;
+ void AddSurface(Dali::RenderSurfaceInterface* surface) override;
private:
-
// Undefined copy constructor.
- CombinedUpdateRenderController( const CombinedUpdateRenderController& );
+ CombinedUpdateRenderController(const CombinedUpdateRenderController&);
// Undefined assignment operator.
- CombinedUpdateRenderController& operator=( const CombinedUpdateRenderController& );
+ CombinedUpdateRenderController& operator=(const CombinedUpdateRenderController&);
/////////////////////////////////////////////////////////////////////////////////////////////////
// EventThread
enum AnimationProgression
{
- USE_ELAPSED_TIME, ///< Animation progression using elapsed time
- NONE ///< No animation progression
+ USE_ELAPSED_TIME, ///< Animation progression using elapsed time
+ NONE ///< No animation progression
};
/**
* @param[in] animationProgression Whether to progress animation using time elapsed since the last frame.
* @param[in] updateMode The update mode (i.e. either update & render or skip rendering)
*/
- inline void RunUpdateRenderThread( int numberOfCycles, AnimationProgression animationProgression, UpdateMode updateMode );
+ inline void RunUpdateRenderThread(int numberOfCycles, AnimationProgression animationProgression, UpdateMode updateMode);
/**
* Pauses the Update/Render Thread.
* @param[out] timeToSleepUntil The time remaining in nanoseconds to keep the thread sleeping before resuming.
* @return false, if the thread should stop.
*/
- bool UpdateRenderReady( bool& useElapsedTime, bool updateRequired, uint64_t& timeToSleepUntil );
+ bool UpdateRenderReady(bool& useElapsedTime, bool updateRequired, uint64_t& timeToSleepUntil);
/**
* Checks to see if the surface needs to be replaced.
* Helper for the thread calling the entry function
* @param[in] This A pointer to the current object
*/
- static void* InternalUpdateRenderThreadEntryFunc( void* This )
+ static void* InternalUpdateRenderThreadEntryFunc(void* This)
{
- ( static_cast<CombinedUpdateRenderController*>( This ) )->UpdateRenderThread();
+ (static_cast<CombinedUpdateRenderController*>(This))->UpdateRenderThread();
return NULL;
}
* Helper to add a performance marker to the performance server (if it's active)
* @param[in] type performance marker type
*/
- void AddPerformanceMarker( PerformanceInterface::MarkerType type );
+ void AddPerformanceMarker(PerformanceInterface::MarkerType type);
/////////////////////////////////////////////////////////////////////////////////////////////////
// POST RENDERING - ThreadSynchronizationInterface overrides
void PostRenderWaitForCompletion() override;
private:
+ FpsTracker mFpsTracker; ///< Object that tracks the FPS
+ UpdateStatusLogger mUpdateStatusLogger; ///< Object that logs the update-status as required.
- FpsTracker mFpsTracker; ///< Object that tracks the FPS
- UpdateStatusLogger mUpdateStatusLogger; ///< Object that logs the update-status as required.
-
- Semaphore<> mEventThreadSemaphore; ///< Used by the event thread to ensure all threads have been initialised, and when replacing the surface.
- ConditionalWait mGraphicsInitializeWait; ///< Used by the render thread to ensure the graphics has been initialised.
- Semaphore<> mSurfaceSemaphore; ///< Used by the event thread to ensure the surface has been deleted or replaced.
+ Semaphore<> mEventThreadSemaphore; ///< Used by the event thread to ensure all threads have been initialised, and when replacing the surface.
+ ConditionalWait mGraphicsInitializeWait; ///< Used by the render thread to ensure the graphics has been initialised.
+ Semaphore<> mSurfaceSemaphore; ///< Used by the event thread to ensure the surface has been deleted or replaced.
- ConditionalWait mUpdateRenderThreadWaitCondition; ///< The wait condition for the update-render-thread.
+ ConditionalWait mUpdateRenderThreadWaitCondition; ///< The wait condition for the update-render-thread.
- AdaptorInternalServices& mAdaptorInterfaces; ///< The adaptor internal interface
- PerformanceInterface* mPerformanceInterface; ///< The performance logging interface
- Integration::Core& mCore; ///< Dali core reference
- const EnvironmentOptions& mEnvironmentOptions; ///< Environment options
- TriggerEventInterface& mNotificationTrigger; ///< Reference to notification event trigger
- TriggerEventInterface* mSleepTrigger; ///< Used by the update-render thread to trigger the event thread when it no longer needs to do any updates
- CallbackBase* mPreRenderCallback; ///< Used by Update/Render thread when PreRender is about to be called on graphics.
+ AdaptorInternalServices& mAdaptorInterfaces; ///< The adaptor internal interface
+ PerformanceInterface* mPerformanceInterface; ///< The performance logging interface
+ Integration::Core& mCore; ///< Dali core reference
+ const EnvironmentOptions& mEnvironmentOptions; ///< Environment options
+ TriggerEventInterface& mNotificationTrigger; ///< Reference to notification event trigger
+ TriggerEventInterface* mSleepTrigger; ///< Used by the update-render thread to trigger the event thread when it no longer needs to do any updates
+ CallbackBase* mPreRenderCallback; ///< Used by Update/Render thread when PreRender is about to be called on graphics.
- pthread_t* mUpdateRenderThread; ///< The Update/Render thread.
+ pthread_t* mUpdateRenderThread; ///< The Update/Render thread.
- float mDefaultFrameDelta; ///< Default time delta between each frame (used for animations). Not protected by lock, but written to rarely so not worth adding a lock when reading.
+ float mDefaultFrameDelta; ///< Default time delta between each frame (used for animations). Not protected by lock, but written to rarely so not worth adding a lock when reading.
// TODO: mDefaultFrameDurationMilliseconds is defined as uint64_t, the only place where it is used, it is converted to an unsigned int!!!
- uint64_t mDefaultFrameDurationMilliseconds; ///< Default duration of a frame (used for predicting the time of the next frame). Not protected by lock, but written to rarely so not worth adding a lock when reading.
- uint64_t mDefaultFrameDurationNanoseconds; ///< Default duration of a frame (used for sleeping if not enough time elapsed). Not protected by lock, but written to rarely so not worth adding a lock when reading.
- uint64_t mDefaultHalfFrameNanoseconds; ///< Is half of mDefaultFrameDurationNanoseconds. Using a member variable avoids having to do the calculation every frame. Not protected by lock, but written to rarely so not worth adding a lock when reading.
+ uint64_t mDefaultFrameDurationMilliseconds; ///< Default duration of a frame (used for predicting the time of the next frame). Not protected by lock, but written to rarely so not worth adding a lock when reading.
+ uint64_t mDefaultFrameDurationNanoseconds; ///< Default duration of a frame (used for sleeping if not enough time elapsed). Not protected by lock, but written to rarely so not worth adding a lock when reading.
+ uint64_t mDefaultHalfFrameNanoseconds; ///< Is half of mDefaultFrameDurationNanoseconds. Using a member variable avoids having to do the calculation every frame. Not protected by lock, but written to rarely so not worth adding a lock when reading.
- unsigned int mUpdateRequestCount; ///< Count of update-requests we have received to ensure we do not go to sleep too early.
- unsigned int mRunning; ///< Read and set on the event-thread only to state whether we are running.
+ unsigned int mUpdateRequestCount; ///< Count of update-requests we have received to ensure we do not go to sleep too early.
+ unsigned int mRunning; ///< Read and set on the event-thread only to state whether we are running.
- ThreadMode mThreadMode; ///< Whether the thread runs continuously or runs when it is requested.
+ ThreadMode mThreadMode; ///< Whether the thread runs continuously or runs when it is requested.
//
// NOTE: cannot use booleans as these are used from multiple threads, must use variable with machine word size for atomic read/write
//
- volatile int mUpdateRenderRunCount; ///< The number of times Update/Render cycle should run. If -1, then will run continuously (set by the event-thread, read by v-sync-thread).
- volatile unsigned int mDestroyUpdateRenderThread; ///< Whether the Update/Render thread be destroyed (set by the event-thread, read by the update-render-thread).
- volatile unsigned int mUpdateRenderThreadCanSleep; ///< Whether the Update/Render thread can sleep (set by the event-thread, read by the update-render-thread).
- volatile unsigned int mPendingRequestUpdate; ///< Is set as soon as an RequestUpdate is made and unset when the next update happens (set by the event-thread and update-render thread, read by the update-render-thread).
- ///< Ensures we do not go to sleep if we have not processed the most recent update-request.
+ volatile int mUpdateRenderRunCount; ///< The number of times Update/Render cycle should run. If -1, then will run continuously (set by the event-thread, read by v-sync-thread).
+ volatile unsigned int mDestroyUpdateRenderThread; ///< Whether the Update/Render thread be destroyed (set by the event-thread, read by the update-render-thread).
+ volatile unsigned int mUpdateRenderThreadCanSleep; ///< Whether the Update/Render thread can sleep (set by the event-thread, read by the update-render-thread).
+ volatile unsigned int mPendingRequestUpdate; ///< Is set as soon as an RequestUpdate is made and unset when the next update happens (set by the event-thread and update-render thread, read by the update-render-thread).
+ ///< Ensures we do not go to sleep if we have not processed the most recent update-request.
- volatile unsigned int mUseElapsedTimeAfterWait; ///< Whether we should use the elapsed time after waiting (set by the event-thread, read by the update-render-thread).
+ volatile unsigned int mUseElapsedTimeAfterWait; ///< Whether we should use the elapsed time after waiting (set by the event-thread, read by the update-render-thread).
- Dali::RenderSurfaceInterface* volatile mNewSurface; ///< Will be set to the new-surface if requested (set by the event-thread, read & cleared by the update-render thread).
- Dali::RenderSurfaceInterface* volatile mDeletedSurface; ///< Will be set to the deleted surface if requested (set by the event-thread, read & cleared by the update-render thread).
+ Dali::RenderSurfaceInterface* volatile mNewSurface; ///< Will be set to the new-surface if requested (set by the event-thread, read & cleared by the update-render thread).
+ Dali::RenderSurfaceInterface* volatile mDeletedSurface; ///< Will be set to the deleted surface if requested (set by the event-thread, read & cleared by the update-render thread).
- volatile unsigned int mPostRendering; ///< Whether post-rendering is taking place (set by the event & render threads, read by the render-thread).
- volatile unsigned int mSurfaceResized; ///< Will be set to resize the surface (set by the event-thread, read & cleared by the update-render thread).
- volatile unsigned int mForceClear; ///< Will be set to clear forcibly
+ volatile unsigned int mPostRendering; ///< Whether post-rendering is taking place (set by the event & render threads, read by the render-thread).
+ volatile unsigned int mSurfaceResized; ///< Will be set to resize the surface (set by the event-thread, read & cleared by the update-render thread).
+ volatile unsigned int mForceClear; ///< Will be set to clear forcibly
- volatile unsigned int mUploadWithoutRendering; ///< Will be set to upload the resource only (with no rendering)
+ volatile unsigned int mUploadWithoutRendering; ///< Will be set to upload the resource only (with no rendering)
- volatile unsigned int mFirstFrameAfterResume; ///< Will be set to check the first frame after resume (for log)
+ volatile unsigned int mFirstFrameAfterResume; ///< Will be set to check the first frame after resume (for log)
- std::vector<Rect<int>> mDamagedRects; ///< Keeps collected damaged render items rects for one render pass
+ std::vector<Rect<int>> mDamagedRects; ///< Keeps collected damaged render items rects for one render pass
};
} // namespace Adaptor
#define DALI_INTERNAL_FRAMEWORK_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <string>
#include <dali/public-api/signals/callback.h>
+#include <string>
#ifdef APPCORE_WATCH_AVAILABLE
#include <dali/public-api/watch/watch-application.h>
#endif
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* The Framework class is ideally placed to provide key API required by Applications.
*
class Framework
{
public:
-
enum Type
{
- NORMAL, ///< normal appFramework
- WATCH, ///< watch appFramework
- WIDGET, ///< widget appFramework
- COMPONENT ///< component appFramework
+ NORMAL, ///< normal appFramework
+ WATCH, ///< watch appFramework
+ WIDGET, ///< widget appFramework
+ COMPONENT ///< component appFramework
};
/**
class Observer
{
public:
-
/**
* Invoked when the application is to be initialised.
*/
- virtual void OnInit() {}
+ virtual void OnInit()
+ {
+ }
/**
* Invoked when the application is to be terminated.
*/
- virtual void OnTerminate() {}
+ virtual void OnTerminate()
+ {
+ }
/**
* Invoked when the application is to be paused.
*/
- virtual void OnPause() {}
+ virtual void OnPause()
+ {
+ }
/**
* Invoked when the application is to be resumed.
*/
- virtual void OnResume() {}
+ virtual void OnResume()
+ {
+ }
/**
* Invoked when the application is to be reset.
*/
- virtual void OnReset() {}
+ virtual void OnReset()
+ {
+ }
/**
* Invoked when the AppControl message is received.
* @param[in] The bundle data of AppControl message.
*/
- virtual void OnAppControl(void *) {}
+ virtual void OnAppControl(void*)
+ {
+ }
#ifdef APPCORE_WATCH_AVAILABLE
/**
* Invoked at every second
*/
- virtual void OnTimeTick(WatchTime&) {}
+ virtual void OnTimeTick(WatchTime&)
+ {
+ }
/**
* Invoked at every second in ambient mode
*/
- virtual void OnAmbientTick(WatchTime&) {}
+ virtual void OnAmbientTick(WatchTime&)
+ {
+ }
/**
* Invoked when the device enters or exits ambient mode
*/
- virtual void OnAmbientChanged(bool ambient) {}
+ virtual void OnAmbientChanged(bool ambient)
+ {
+ }
#endif
/**
* Invoked when the language of the device is changed.
*/
- virtual void OnLanguageChanged() {}
+ virtual void OnLanguageChanged()
+ {
+ }
/**
* Invoked when the region is changed.
*/
- virtual void OnRegionChanged() {}
+ virtual void OnRegionChanged()
+ {
+ }
/**
* Invoked when the battery level of the device is low.
*/
- virtual void OnBatteryLow( Dali::DeviceStatus::Battery::Status status ) {}
+ virtual void OnBatteryLow(Dali::DeviceStatus::Battery::Status status)
+ {
+ }
/**
* Invoked when the memory level of the device is low.
*/
- virtual void OnMemoryLow( Dali::DeviceStatus::Memory::Status status ) {}
+ virtual void OnMemoryLow(Dali::DeviceStatus::Memory::Status status)
+ {
+ }
/**
* Invoked when the platform surface is created.
*/
- virtual void OnSurfaceCreated( Any newSurface ) {}
+ virtual void OnSurfaceCreated(Any newSurface)
+ {
+ }
/**
* Invoked when the platform surface is destroyed.
*/
- virtual void OnSurfaceDestroyed( Any newSurface ) {}
+ virtual void OnSurfaceDestroyed(Any newSurface)
+ {
+ }
#ifdef COMPONENT_APPLICATION_SUPPORT
/**
* Invoked when the component application is created.
*/
- virtual Any OnCreate() { return nullptr; }
+ virtual Any OnCreate()
+ {
+ return nullptr;
+ }
#endif
};
public:
-
/**
* Constructor
* @param[in] observer The observer of the Framework.
* @param[in] argv A pointer the the argument list.
* @param[in] type The type of application
*/
- Framework( Observer& observer, int* argc, char ***argv, Type type = NORMAL );
+ Framework(Observer& observer, int* argc, char*** argv, Type type = NORMAL);
/**
* Destructor
~Framework();
public:
-
/**
* Runs the main loop of framework
*/
* @note Only one callback can be registered. The last callback to be set will be called on abort.
* @note The ownership of callback is passed onto this class.
*/
- void AddAbortCallback( CallbackBase* callback );
+ void AddAbortCallback(CallbackBase* callback);
/**
* Gets bundle name which was passed in app_reset callback.
* @param[in] argc A pointer to the number of arguments
* @param[in] argv A pointer to the argument list
*/
- void SetCommandLineOptions( int* argc, char **argv[] )
+ void SetCommandLineOptions(int* argc, char** argv[])
{
mArgc = argc;
mArgv = argv;
}
-
/**
* Gets the path at which application resources are stored.
*/
/**
* Sets system language.
*/
- void SetLanguage( const std::string& language );
+ void SetLanguage(const std::string& language);
/**
* Sets system region.
*/
- void SetRegion( const std::string& region );
+ void SetRegion(const std::string& region);
/**
* Gets system language.
* @param[in] callback The callback.
* @return The callback id.
*/
- unsigned int AddIdle( int timeout, void* data, bool ( *callback )( void *data ) );
+ unsigned int AddIdle(int timeout, void* data, bool (*callback)(void* data));
/**
* Called by the adaptor when an idle callback is removed.
* @param[in] id The callback id.
*/
- void RemoveIdle( unsigned int id );
+ void RemoveIdle(unsigned int id);
private:
-
// Undefined
Framework(const Framework&);
Framework& operator=(Framework&);
private:
-
/**
* Called when the application is created.
*/
void InitThreads();
private:
- Observer& mObserver;
- bool mInitialised;
- bool mPaused;
- bool mRunning;
- int* mArgc;
- char*** mArgv;
- std::string mBundleName;
- std::string mBundleId;
- AbortHandler mAbortHandler;
+ Observer& mObserver;
+ bool mInitialised;
+ bool mPaused;
+ bool mRunning;
+ int* mArgc;
+ char*** mArgv;
+ std::string mBundleName;
+ std::string mBundleId;
+ AbortHandler mAbortHandler;
private: // impl members
-
struct Impl;
Impl* mImpl;
};
#define DALI_INTERNAL_LIFECYCLE_CONTROLLER_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <dali/public-api/object/ref-object.h>
#include <dali/public-api/object/base-object.h>
+#include <dali/public-api/object/ref-object.h>
// INTERNAL INCLUDES
#include <dali/devel-api/adaptor-framework/lifecycle-controller.h>
namespace Dali
{
-
class Adaptor;
namespace Internal
{
-
namespace Adaptor
{
-
/**
* This provides signals that are emitted according the lifecylce of the program.
*/
class LifecycleController : public BaseObject, public ConnectionTracker
{
public:
-
// Creation & Destruction
/**
Dali::LifecycleController::LifecycleSignalType& LanguageChangedSignal();
public:
-
/**
* Called when the framework is initialised.
*
* @param[in] app The application instance
*/
- void OnInit( Dali::Application& app );
+ void OnInit(Dali::Application& app);
/**
* Called when the framework is terminated.
*
* @param[in] app The application instance
*/
- void OnTerminate( Dali::Application& app );
+ void OnTerminate(Dali::Application& app);
/**
* Called when the framework is paused.
*
* @param[in] app The application instance
*/
- void OnPause( Dali::Application& app );
+ void OnPause(Dali::Application& app);
/**
* Called when the framework resumes from a paused state.
*
* @param[in] app The application instance
*/
- void OnResume( Dali::Application& app );
+ void OnResume(Dali::Application& app);
/**
* Called when the framework informs the application that it should reset itself.
*
* @param[in] app The application instance
*/
- void OnReset( Dali::Application& app );
+ void OnReset(Dali::Application& app);
/**
* Called when the framework informs the application that the language of the device has changed.
*
* @param[in] app The application instance
*/
- void OnLanguageChanged( Dali::Application& app );
+ void OnLanguageChanged(Dali::Application& app);
protected:
-
/**
* Virtual Destructor.
*/
~LifecycleController() override;
private:
-
/**
* Emit the init signal.
*/
void EmitLanguageChangedSignal();
private:
-
// Signals
Dali::LifecycleController::LifecycleSignalType mInitSignal;
Dali::LifecycleController::LifecycleSignalType mTerminateSignal;
Dali::LifecycleController::LifecycleSignalType mResumeSignal;
Dali::LifecycleController::LifecycleSignalType mResetSignal;
Dali::LifecycleController::LifecycleSignalType mLanguageChangedSignal;
-
};
} // namespace Adaptor
#define DALI_INTERNAL_BASE_LIFECYCLE_OBSERVER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Adaptor life cycle observer
*/
virtual void OnDestroy() = 0;
protected:
-
/**
* Constructor
*/
}
private:
-
// Undefined copy constructor.
- LifeCycleObserver( const LifeCycleObserver& );
+ LifeCycleObserver(const LifeCycleObserver&);
// Undefined assignment operator.
- LifeCycleObserver& operator=( const LifeCycleObserver& );
-
+ LifeCycleObserver& operator=(const LifeCycleObserver&);
};
-
+} // namespace Adaptor
} // namespace Internal
-} // namespace Adaptor
-
} // namespace Dali
#endif // DALI_INTERNAL_BASE_LIFECYCLE_OBSERVER_H
#define DALI_INTERNAL_THREAD_CONTROLLER_INTERFACE_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
class RenderSurfaceInterface;
namespace Internal
{
-
namespace Adaptor
{
-
enum class UpdateMode
{
- NORMAL, ///< Update and render
- SKIP_RENDER, ///< Update and resource upload but no rendering
- FORCE_RENDER ///< Force update and render
+ NORMAL, ///< Update and render
+ SKIP_RENDER, ///< Update and resource upload but no rendering
+ FORCE_RENDER ///< Force update and render
};
enum class ThreadMode
{
- NORMAL, ///< The thread runs continuously
- RUN_IF_REQUESTED ///< The threads runs when it is requested
+ NORMAL, ///< The thread runs continuously
+ RUN_IF_REQUESTED ///< The threads runs when it is requested
};
/**
class ThreadControllerInterface
{
public:
-
/**
* Virtual destructor. Not intended as base class.
*/
- virtual ~ThreadControllerInterface() { }
+ virtual ~ThreadControllerInterface()
+ {
+ }
/**
* Initializes the thread controller
* If Adaptor is paused, we do one update/render and return to pause
* @param updateMode The update mode (i.e. i.e. either update & render or skip rendering)
*/
- virtual void RequestUpdateOnce( UpdateMode updateMode ) = 0;
+ virtual void RequestUpdateOnce(UpdateMode updateMode) = 0;
/**
* Replaces the surface.
* @param surface new surface
*/
- virtual void ReplaceSurface( Dali::RenderSurfaceInterface* surface ) = 0;
+ virtual void ReplaceSurface(Dali::RenderSurfaceInterface* surface) = 0;
/**
* Deletes the surface.
* @param[in] surface The surface to be deleted
*/
- virtual void DeleteSurface( Dali::RenderSurfaceInterface* surface ) = 0;
+ virtual void DeleteSurface(Dali::RenderSurfaceInterface* surface) = 0;
/**
* Resize the surface.
/**
* @copydoc Dali::Adaptor::SetRenderRefreshRate()
*/
- virtual void SetRenderRefreshRate( unsigned int numberOfVSyncsPerRender ) = 0;
+ virtual void SetRenderRefreshRate(unsigned int numberOfVSyncsPerRender) = 0;
/**
* @copydoc Dali::Adaptor::SetPreRenderCallback()
*/
- virtual void SetPreRenderCallback( CallbackBase* callback ) = 0;
+ virtual void SetPreRenderCallback(CallbackBase* callback) = 0;
/**
* @brief Adds the new surface.
* @param surface new surface
*/
- virtual void AddSurface( Dali::RenderSurfaceInterface* surface ) = 0;
+ virtual void AddSurface(Dali::RenderSurfaceInterface* surface) = 0;
protected:
-
/**
* Constructor
*/
- ThreadControllerInterface() { }
+ ThreadControllerInterface()
+ {
+ }
private:
-
// Undefined copy constructor.
- ThreadControllerInterface( const ThreadControllerInterface& );
+ ThreadControllerInterface(const ThreadControllerInterface&);
// Undefined assignment operator.
- ThreadControllerInterface& operator=( const ThreadControllerInterface& );
+ ThreadControllerInterface& operator=(const ThreadControllerInterface&);
};
} // namespace Adaptor
#define DALI_INTERNAL_ADAPTOR_THREADING_MODE_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
struct ThreadingMode
{
enum Type
{
- COMBINED_UPDATE_RENDER = 1, ///< Three threads: Event, V-Sync & a Joint Update/Render thread.
+ COMBINED_UPDATE_RENDER = 1, ///< Three threads: Event, V-Sync & a Joint Update/Render thread.
};
};
-} // Adaptor
+} // namespace Adaptor
-} // Internal
+} // namespace Internal
-} // Dali
+} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_THREADING_MODE_H
#define DALI_INTERNAL_COMPONENT_APPLICATION_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Internal
{
-
namespace Adaptor
{
-
class ComponentApplication;
typedef IntrusivePtr<ComponentApplication> ComponentApplicationPtr;
* @param[in] windowMode A member of WINDOW_MODE
* @return A handle to the ComponentApplication
*/
- static ComponentApplicationPtr New( int* argc, char **argv[], const std::string& stylesheet, WINDOW_MODE windowMode );
+ static ComponentApplicationPtr New(int* argc, char** argv[], const std::string& stylesheet, WINDOW_MODE windowMode);
/**
* @brief The default constructor.
*/
- ComponentApplication( int* argc, char **argv[], const std::string& stylesheet, WINDOW_MODE windowMode );
+ ComponentApplication(int* argc, char** argv[], const std::string& stylesheet, WINDOW_MODE windowMode);
/**
* @brief Undefined copy constructor.
*/
- ComponentApplication( const ComponentApplication& ) = default;
+ ComponentApplication(const ComponentApplication&) = default;
/**
* @brief Destructor
/**
*@brief Undefined assignment operator.
*/
- ComponentApplication& operator=( const ComponentApplication& ) = delete;
+ ComponentApplication& operator=(const ComponentApplication&) = delete;
-public: // From Framework::Observer
+public: // From Framework::Observer
/**
* Called when the framework is Component Application Created.
*/
Any OnCreate() override;
public:
- CreateSignal mCreateSignal;
+ CreateSignal mCreateSignal;
};
inline ComponentApplication& GetImplementation(Dali::ComponentApplication& application)
return static_cast<const Internal::Adaptor::ComponentApplication&>(handle);
}
-
} // namespace Adaptor
} // namespace Internal
#define DALI_INTERNAL_ADAPTOR_TIZEN_WAYLAND_DALI_ECORE_WAYLAND_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
#pragma GCC system_header
#include <Ecore_Wayland.h>
-
-
#endif /* DALI_INTERNAL_ADAPTOR_TIZEN_WAYLAND_DALI_ECORE_WAYLAND_H */
#define DALI_INTERNAL_ADAPTOR_TIZEN_WAYLAND_DALI_ECORE_WL2_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
#pragma GCC system_header
#include <Ecore_Wl2.h>
-
-
#endif /* DALI_INTERNAL_ADAPTOR_TIZEN_WAYLAND_DALI_ECORE_WL2_H */
#define DALI_INTERNAL_WATCH_APPLICATION_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// INTERNAL INCLUDES
-#include <dali/public-api/watch/watch-application.h>
#include <dali/internal/adaptor/common/application-impl.h>
+#include <dali/public-api/watch/watch-application.h>
namespace Dali
{
namespace Internal
{
-
namespace Adaptor
{
-
class WatchApplication;
typedef IntrusivePtr<WatchApplication> WatchApplicationPtr;
* @param[in] stylesheet The path to user defined theme file
* @param[in] windowMode A member of Dali::Watch::WINDOW_MODE
*/
- static WatchApplicationPtr New( int* argc, char **argv[], const std::string& stylesheet, WINDOW_MODE windowMode );
+ static WatchApplicationPtr New(int* argc, char** argv[], const std::string& stylesheet, WINDOW_MODE windowMode);
/**
* Private Constructor
* @param[in] stylesheet The path to user defined theme file
* @param[in] windowMode A member of Dali::Watch::WINDOW_MODE
*/
- WatchApplication( int* argc, char **argv[], const std::string& stylesheet, WINDOW_MODE windowMode );
+ WatchApplication(int* argc, char** argv[], const std::string& stylesheet, WINDOW_MODE windowMode);
/**
* Destructor
void OnAmbientChanged(bool ambient);
private:
-
// @brief Undefined copy constructor.
- WatchApplication( const WatchApplication& );
+ WatchApplication(const WatchApplication&);
// @brief Undefined assignment operator.
- WatchApplication& operator=( const WatchApplication& );
+ WatchApplication& operator=(const WatchApplication&);
public:
-
// Signals
- WatchTimeSignal mTickSignal;
- WatchTimeSignal mAmbientTickSignal;
- WatchBoolSignal mAmbientChangeSignal;
+ WatchTimeSignal mTickSignal;
+ WatchTimeSignal mAmbientTickSignal;
+ WatchBoolSignal mAmbientChangeSignal;
private:
- WatchApplicationState mState;
+ WatchApplicationState mState;
};
inline WatchApplication& GetImplementation(Dali::WatchApplication& watch)
return static_cast<const Internal::Adaptor::WatchApplication&>(handle);
}
-
} // namespace Adaptor
} // namespace Internal
#define DALI_INTERNAL_ADDON_MANAGER_IMPL
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/integration-api/addon-manager.h>
+#include <memory>
#include <string>
#include <vector>
-#include <memory>
namespace Dali
{
class AddOnManager
{
protected:
-
/**
* @brief Constructor
*/
* @brief Registers the dispatch table with AddOnManager.
* @param[in] dispatchTable Pointer to the valid dispatch table
*/
- virtual void RegisterAddOnDispatchTable( const AddOnDispatchTable* dispatchTable ) = 0;
+ virtual void RegisterAddOnDispatchTable(const AddOnDispatchTable* dispatchTable) = 0;
/**
* @brief Retrieves list of the available AddOns
* @param[out]] info Output reference
* @return True on success, False if extension info cannot be retrieved
*/
- virtual bool GetAddOnInfo(const std::string& name, AddOnInfo& info ) = 0;
+ virtual bool GetAddOnInfo(const std::string& name, AddOnInfo& info) = 0;
/**
* @brief Loads and initialises specified AddOns
* @param[in] extensionNames Array of extension names
* @return vector of initialised AddOnLibrary handles
*/
- virtual std::vector<Dali::AddOnLibrary> LoadAddOns( const std::vector<std::string>& addonNames ) = 0;
+ virtual std::vector<Dali::AddOnLibrary> LoadAddOns(const std::vector<std::string>& addonNames) = 0;
/**
* @brief Returns AddOn global function pointer
* @param[in] procName Name of the function to retrieve
* @return Pointer to the function or null if function doesn't exist
*/
- virtual void* GetGlobalProc( const Dali::AddOnLibrary& addonHandle, const char* procName ) = 0;
+ virtual void* GetGlobalProc(const Dali::AddOnLibrary& addonHandle, const char* procName) = 0;
/**
* @brief Returns addon instance function pointer
* @param[in] procName Name of the function to retrieve
* @return Pointer to the function or null if function doesn't exist
*/
- virtual void* GetInstanceProc( const Dali::AddOnLibrary& addonHandle, const char* procName ) = 0;
+ virtual void* GetInstanceProc(const Dali::AddOnLibrary& addonHandle, const char* procName) = 0;
/**
* @brief Pause lifecycle event
* Implementation is optional and depends whether AddOn needs to handle lifecycle event.
*/
- virtual void Pause() {}
+ virtual void Pause()
+ {
+ }
/**
* @brief Resume lifecycle event
* Implementation is optional and depends whether AddOn needs to handle lifecycle event.
*/
- virtual void Resume() {}
+ virtual void Resume()
+ {
+ }
/**
* @brief Start lifecycle event
* Implementation is optional and depends whether AddOn needs to handle lifecycle event.
*/
- virtual void Start() {}
+ virtual void Start()
+ {
+ }
/**
* @brief Stop lifecycle event
* Implementation is optional and depends whether AddOn needs to handle lifecycle event.
*/
- virtual void Stop() {}
+ virtual void Stop()
+ {
+ }
};
-} // Internal
+} // namespace Internal
-} // Dali
+} // namespace Dali
#endif // DALI_CMAKE_EXTENSION_MANAGER_IMPL
#define DALI_ADAPTOR_COMMON_ADDON_MANAGER
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
class AddOnManager;
namespace Adaptor
{
-
class AddOnManager : public Dali::Integration::AddOnManager
{
public:
-
/**
* @brief Constructor
* @param impl Pointer to the platform specific implementation
* event callbacks.
* @param[in] dispatchTable Valid pointer to the DispatchTable object
*/
- void RegisterAddOnDispatchTable( const AddOnDispatchTable* dispatchTable ) override;
+ void RegisterAddOnDispatchTable(const AddOnDispatchTable* dispatchTable) override;
/**
* @brief Retrieves list of all the extensions available
* @param[out]] info Output reference
* @return True on success, False if extension info cannot be retrieved
*/
- bool GetAddOnInfo(const std::string& name, AddOnInfo& info ) override;
+ bool GetAddOnInfo(const std::string& name, AddOnInfo& info) override;
/**
* @brief Loads and initialises specified extensions
* @param[in] extensionNames Array of extension names
* @return vector of initialised extension handles
*/
- std::vector<AddOnLibrary> LoadAddOns( const std::vector<std::string>& addonNames ) override;
+ std::vector<AddOnLibrary> LoadAddOns(const std::vector<std::string>& addonNames) override;
/**
* @brief Returns addon global function pointer
* @param[in] procName Name of the function to retrieve
* @return Pointer to the function or null if function doesn't exist
*/
- void* GetGlobalProc( const Dali::AddOnLibrary& addonHandle, const char* procName ) override;
+ void* GetGlobalProc(const Dali::AddOnLibrary& addonHandle, const char* procName) override;
/**
* @brief Returns addon instance function pointer
* @param[in] procName Name of the function to retrieve
* @return Pointer to the function or null if function doesn't exist
*/
- void* GetInstanceProc( const Dali::AddOnLibrary& addonHandle, const char* procName ) override;
+ void* GetInstanceProc(const Dali::AddOnLibrary& addonHandle, const char* procName) override;
/**
* @brief Lifecycle pause function
void Stop() override;
private:
-
std::unique_ptr<Internal::AddOnManager> mImpl; /// Implementation of the AddOnManager
-
};
-} // namespace Internal
+} // namespace Adaptor
} // namespace Dali
#endif // DALI_ADAPTOR_COMMON_ADDON_MANAGER
#ifndef DALI_ADDON_MANAGER_IMPL_LINUX
#define DALI_ADDON_MANAGER_IMPL_LINUX
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
// EXTERNAL INCLUDES
#include <dali/public-api/common/vector-wrapper.h>
-#include <string>
#include <memory>
+#include <string>
namespace Dali
{
namespace Internal
{
-
/**
* Implementation of AddOnManager for Linux based platforms (ie. Tizen, Ubuntu)
*/
class AddOnManagerLinux : public Internal::AddOnManager
{
public:
-
/**
* @copydoc Dali::Internal::AddOnManager()
*/
/**
* @copydoc Dali::Internal::AddOnManager::RegisterAddOnDispatchTable()
*/
- void RegisterAddOnDispatchTable( const AddOnDispatchTable* dispatchTable ) override;
+ void RegisterAddOnDispatchTable(const AddOnDispatchTable* dispatchTable) override;
/**
* @copydoc Dali::Internal::AddOnManager::EnumerateAddOns()
/**
* @copydoc Dali::Internal::AddOnManager::GetAddOnInfo()
*/
- bool GetAddOnInfo(const std::string& name, AddOnInfo& info ) override;
+ bool GetAddOnInfo(const std::string& name, AddOnInfo& info) override;
/**
* @copydoc Dali::Internal::AddOnManager::LoadAddOns()
*/
- std::vector<Dali::AddOnLibrary> LoadAddOns( const std::vector<std::string>& extensionNames ) override;
+ std::vector<Dali::AddOnLibrary> LoadAddOns(const std::vector<std::string>& extensionNames) override;
/**
* @copydoc Dali::Internal::AddOnManager::GetGlobalProc()
*/
- void* GetGlobalProc( const Dali::AddOnLibrary& addonHandle, const char* procName ) override;
+ void* GetGlobalProc(const Dali::AddOnLibrary& addonHandle, const char* procName) override;
/**
* @copydoc Dali::Internal::AddOnManager::GetInstanceProc()
*/
- void* GetInstanceProc( const Dali::AddOnLibrary& addonHandle, const char* procName ) override;
+ void* GetInstanceProc(const Dali::AddOnLibrary& addonHandle, const char* procName) override;
/**
* @copydoc Dali::Internal::AddOnManager::Pause()
void Stop() override;
private:
-
/**
* @brief Invokes lifecycle event handling function based on incoming event
* @param[in] lifecycleEvent The lifecycle event
*/
- void InvokeLifecycleFunction( uint32_t lifecycleEvent );
+ void InvokeLifecycleFunction(uint32_t lifecycleEvent);
/**
* @struct Lifecycle callback structure
*/
struct LifecycleCallback
{
- const static uint32_t EVENT_PAUSE = 0u; ///< pause event
+ const static uint32_t EVENT_PAUSE = 0u; ///< pause event
const static uint32_t EVENT_RESUME = 1u; ///< resume event
- const static uint32_t EVENT_START = 2u; ///< start event
- const static uint32_t EVENT_STOP = 3u; ///< stop event
+ const static uint32_t EVENT_START = 2u; ///< start event
+ const static uint32_t EVENT_STOP = 3u; ///< stop event
/**
* @brief Constructor
functionName = funcName;
}
- std::string functionName; ///< Name of lifecycle function
- void(*function)() = nullptr; ///< Lifecycle function pointer
- bool initialized { false }; ///< Flag indicates whether LifecycleCallback is initialized
+ std::string functionName; ///< Name of lifecycle function
+ void (*function)() = nullptr; ///< Lifecycle function pointer
+ bool initialized{false}; ///< Flag indicates whether LifecycleCallback is initialized
};
/**
struct AddOnCacheEntry
{
std::string addOnLib{};
- AddOnInfo info{};
+ AddOnInfo info{};
// library handle
- void* libHandle {nullptr};
+ void* libHandle{nullptr};
// main function pointers
- void(*GetAddOnInfo)(AddOnInfo& ) = nullptr; ///< Returns AddOnInfo structure
- void*(*GetInstanceProc)( const char* ) = nullptr; ///< Returns pointer of instance function (member funtion)
- void*(*GetGlobalProc)( const char* ) = nullptr; ///< Returns pointer of global function (non-member function)
+ void (*GetAddOnInfo)(AddOnInfo&) = nullptr; ///< Returns AddOnInfo structure
+ void* (*GetInstanceProc)(const char*) = nullptr; ///< Returns pointer of instance function (member funtion)
+ void* (*GetGlobalProc)(const char*) = nullptr; ///< Returns pointer of global function (non-member function)
// lifecycle functions
std::vector<LifecycleCallback> lifecycleCallbacks =
- {
- LifecycleCallback{ "OnPause" },
- LifecycleCallback{ "OnResume" },
- LifecycleCallback{ "OnStart" },
- LifecycleCallback{ "OnStop" },
- };
+ {
+ LifecycleCallback{"OnPause"},
+ LifecycleCallback{"OnResume"},
+ LifecycleCallback{"OnStart"},
+ LifecycleCallback{"OnStop"},
+ };
bool opened{false};
};
std::vector<AddOnCacheEntry> mAddOnCache;
- std::vector<std::string> mAddOnNames;
+ std::vector<std::string> mAddOnNames;
};
-
-}
-}
+} // namespace Internal
+} // namespace Dali
#endif //DALI_CMAKE_EXTENSION_MANAGER_IMPL_UBUNTU
#define DALI_INTERNAL_CLIPBOARD_EVENT_NOTIFIER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <string>
-#include <dali/public-api/object/base-object.h>
#include <dali/public-api/math/vector2.h>
+#include <dali/public-api/object/base-object.h>
+#include <string>
// INTERNAL INCLUDES
#include <dali/devel-api/adaptor-framework/clipboard-event-notifier.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* This class listens to Clipboard events.
*/
class ClipboardEventNotifier : public Dali::BaseObject
{
public:
-
typedef Dali::ClipboardEventNotifier::ClipboardEventSignalType ClipboardEventSignalType;
// Creation
* Sets the selected content.
* @param[in] content A string that represents the content that has been selected.
*/
- void SetContent( const std::string& content );
+ void SetContent(const std::string& content);
/**
* Clears the stored content.
void EmitContentSelectedSignal();
public: // Signals
-
/**
* @copydoc Dali::ClipboardEventNotifier::ContentSelectedSignal
*/
}
private:
-
// Construction & Destruction
/**
~ClipboardEventNotifier() override;
// Undefined
- ClipboardEventNotifier( const ClipboardEventNotifier& );
- ClipboardEventNotifier& operator=( ClipboardEventNotifier& );
+ ClipboardEventNotifier(const ClipboardEventNotifier&);
+ ClipboardEventNotifier& operator=(ClipboardEventNotifier&);
private:
-
- std::string mContent; ///< The current selected content.
+ std::string mContent; ///< The current selected content.
ClipboardEventSignalType mContentSelectedSignal;
public:
-
// Helpers for public-api forwarding methods
inline static Internal::Adaptor::ClipboardEventNotifier& GetImplementation(Dali::ClipboardEventNotifier& detector)
{
- DALI_ASSERT_ALWAYS( detector && "ClipboardEventNotifier handle is empty" );
+ DALI_ASSERT_ALWAYS(detector && "ClipboardEventNotifier handle is empty");
BaseObject& handle = detector.GetBaseObject();
inline static const Internal::Adaptor::ClipboardEventNotifier& GetImplementation(const Dali::ClipboardEventNotifier& detector)
{
- DALI_ASSERT_ALWAYS( detector && "ClipboardEventNotifier handle is empty" );
+ DALI_ASSERT_ALWAYS(detector && "ClipboardEventNotifier handle is empty");
const BaseObject& handle = detector.GetBaseObject();
return static_cast<const Internal::Adaptor::ClipboardEventNotifier&>(handle);
}
-
};
} // namespace Adaptor
#define DALI_INTERNAL_CLIPBOARD_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Implementation of the Clip Board
*/
-class Clipboard : public Dali::BaseObject
+class Clipboard : public Dali::BaseObject
{
public:
-
// Hide the specific windowing system
struct Impl;
/**
* @copydoc Dali::Clipboard::SetItem()
*/
- bool SetItem(const std::string &itemData);
+ bool SetItem(const std::string& itemData);
/**
* @copydoc Dali::Clipboard::RequestItem()
* @param[in] event information pointer
* @return The buffer pointer for send or receive data
*/
- char* ExcuteBuffered( bool type, void *event );
+ char* ExcuteBuffered(bool type, void* event);
private:
-
// Undefined
- Clipboard( const Clipboard& );
- Clipboard& operator=( Clipboard& );
+ Clipboard(const Clipboard&);
+ Clipboard& operator=(Clipboard&);
private:
-
Impl* mImpl;
public:
-
}; // class clipboard
} // namespace Adaptor
inline static Internal::Adaptor::Clipboard& GetImplementation(Dali::Clipboard& clipboard)
{
- DALI_ASSERT_ALWAYS( clipboard && "Clipboard handle is empty" );
+ DALI_ASSERT_ALWAYS(clipboard && "Clipboard handle is empty");
BaseObject& handle = clipboard.GetBaseObject();
return static_cast<Internal::Adaptor::Clipboard&>(handle);
}
-inline static const Internal::Adaptor::Clipboard& GetImplementation(const Dali::Clipboard& clipboard)
+inline static const Internal::Adaptor::Clipboard& GetImplementation(const Dali::Clipboard& clipboard)
{
- DALI_ASSERT_ALWAYS( clipboard && "Clipboard handle is empty" );
+ DALI_ASSERT_ALWAYS(clipboard && "Clipboard handle is empty");
const BaseObject& handle = clipboard.GetBaseObject();
return static_cast<const Internal::Adaptor::Clipboard&>(handle);
}
#define DALI_INTERNAL_EGL_IMAGE_EXTENSIONS_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
~EglImageExtensions();
-
-public: // EGLImageKHR extension support
-
+public: // EGLImageKHR extension support
/**
* If the EGL Image extension is available this function returns a
* EGLImageKHR
private:
EglImplementation* mEglImplementation;
- bool mImageKHRInitialized; ///< Flag for whether extended KHR functions loaded
- bool mImageKHRInitializeFailed; ///< Flag to avoid trying to reload extended KHR functions, if
- /// it fails the first time
+ bool mImageKHRInitialized; ///< Flag for whether extended KHR functions loaded
+ bool mImageKHRInitializeFailed; ///< Flag to avoid trying to reload extended KHR functions, if
+ /// it fails the first time
};
} // namespace Adaptor
#define DALI_INTERNAL_BASE_GRAPHICS_FACTORY_INTERFACE_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// INTERNAL INCLUDES
-#include <dali/internal/system/common/environment-options.h>
#include <dali/internal/graphics/common/graphics-interface.h>
+#include <dali/internal/system/common/environment-options.h>
namespace Dali
{
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Factory interface for creating Graphics Factory implementation
*/
/**
* Virtual protected destructor - no deletion through this interface
*/
- virtual ~GraphicsFactoryInterface() {};
+ virtual ~GraphicsFactoryInterface(){};
};
-} // Adaptor
+} // namespace Adaptor
-} // Internal
+} // namespace Internal
-} // Dali
+} // namespace Dali
#endif // DALI_INTERNAL_BASE_GRAPHICS_FACTORY_INTERFACE_H
#define DALI_INTERNAL_ADAPTOR_EGL_CONTEXT_HELPER_IMPLEMENTATION_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Integration
{
class RenderSurface;
{
namespace Adaptor
{
-
class EglImplementation;
/**
* Initialize with the Egl implementation.
* @param[in] impl The EGL implementation (to access the EGL context)
*/
- void Initialize( EglImplementation* impl );
+ void Initialize(EglImplementation* impl);
/**
* @copydoc Dali::Integration::GlContextHelperAbstraction::MakeSurfacelessContextCurrent()
void WaitClient() override;
private:
-
EglImplementation* mEglImplementation; ///< Egl implementation (to access the EGL context)
};
#define DALI_INTERNAL_EGL_DEBUG_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
namespace Egl
{
+void PrintError(EGLint error);
-void PrintError( EGLint error);
-
-} // namespace Egl
+} // namespace Egl
-} // namespace Adaptor
+} // namespace Adaptor
-} // namespace Internal
+} // namespace Internal
-} // namespace Dali
+} // namespace Dali
#endif //DALI_INTERNAL_EGL_DEBUG_H
namespace Dali
{
-
class EglInterface;
namespace Internal
{
namespace Adaptor
{
-
/**
* Factory interface for creating EGL implementation
*/
/**
* Virtual protected destructor - no deletion through this interface
*/
- virtual ~EglFactoryInterface() {};
+ virtual ~EglFactoryInterface(){};
};
-} // Adaptor
-} // Internal
-} // Dali
+} // namespace Adaptor
+} // namespace Internal
+} // namespace Dali
#endif // DALI_INTERNAL_BASE_EGL_FACTORY_INTERFACE_H
#define DALI_INTERNAL_EGL_IMPLEMENTATION_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/public-api/common/list-wrapper.h>
#include <dali/public-api/common/vector-wrapper.h>
+#include <dali/integration-api/core-enumerations.h>
#include <dali/internal/graphics/common/egl-include.h>
#include <dali/public-api/common/dali-vector.h>
#include <dali/public-api/common/vector-wrapper.h>
#include <dali/public-api/math/rect.h>
-#include <dali/integration-api/core-enumerations.h>
// INTERNAL INCLUDES
#include <dali/integration-api/adaptor-framework/egl-interface.h>
{
namespace Adaptor
{
-
/**
* EglImplementation class provides an EGL implementation.
*/
class EglImplementation : public EglInterface
{
public:
-
/**
* Constructor
* @param[in] multiSamplingLevel The Multi-sampling level required
* @param[in] stencilBufferRequired Whether the stencil buffer is required
* @param[in] partialUpdatedRequired Whether the partial update is required
*/
- EglImplementation( int multiSamplingLevel,
- Integration::DepthBufferAvailable depthBufferRequired,
- Integration::StencilBufferAvailable stencilBufferRequired,
- Integration::PartialUpdateAvailable partialUpdateRequired );
+ EglImplementation(int multiSamplingLevel,
+ Integration::DepthBufferAvailable depthBufferRequired,
+ Integration::StencilBufferAvailable stencilBufferRequired,
+ Integration::PartialUpdateAvailable partialUpdateRequired);
/**
* Destructor
~EglImplementation() override;
public:
-
/**
* (Called from RenderSurface, not RenderThread, so not in i/f, hence, not virtual)
* Initialize GL
* @param isOwnSurface whether the surface is own or not
* @return true on success, false on failure
*/
- bool InitializeGles( EGLNativeDisplayType display, bool isOwnSurface = true );
+ bool InitializeGles(EGLNativeDisplayType display, bool isOwnSurface = true);
/**
* Create the OpenGL context for the shared resource.
* Create the OpenGL context for the window.
* @return true if successful
*/
- bool CreateWindowContext( EGLContext& mEglContext );
+ bool CreateWindowContext(EGLContext& mEglContext);
/**
* Destroy the OpenGL context.
*/
- void DestroyContext( EGLContext& eglContext );
+ void DestroyContext(EGLContext& eglContext);
/**
* Destroy the OpenGL surface.
*/
- void DestroySurface( EGLSurface& eglSurface );
+ void DestroySurface(EGLSurface& eglSurface);
/**
* Make the OpenGL context current
*/
- void MakeContextCurrent( EGLSurface eglSurface, EGLContext eglContext ) override;
+ void MakeContextCurrent(EGLSurface eglSurface, EGLContext eglContext) override;
/**
* clear the OpenGL context
* @param pixmap The pixmap to replace the current surface
* @param eglSurface The eglSurface to replace the current OpenGL surface.
*/
- void MakeCurrent( EGLNativePixmapType pixmap, EGLSurface eglSurface );
+ void MakeCurrent(EGLNativePixmapType pixmap, EGLSurface eglSurface);
/**
* Terminate GL
/**
* Performs an OpenGL swap buffers command
*/
- void SwapBuffers( EGLSurface& eglSurface ) override;
+ void SwapBuffers(EGLSurface& eglSurface) override;
/**
* Gets current back buffer age
*/
- EGLint GetBufferAge( EGLSurface& eglSurface ) const;
+ EGLint GetBufferAge(EGLSurface& eglSurface) const;
/**
* Performs an OpenGL set damage command with damaged rects
*/
- void SetDamageRegion( EGLSurface& eglSurface, std::vector< Rect< int > >& damagedRects );
+ void SetDamageRegion(EGLSurface& eglSurface, std::vector<Rect<int>>& damagedRects);
/**
* Performs an OpenGL swap buffers command with damaged rects
*/
- virtual void SwapBuffers( EGLSurface& eglSurface, const std::vector<Rect<int>>& damagedRects );
+ virtual void SwapBuffers(EGLSurface& eglSurface, const std::vector<Rect<int>>& damagedRects);
/**
* Performs an OpenGL copy buffers command
*/
- void CopyBuffers( EGLSurface& eglSurface ) override;
+ void CopyBuffers(EGLSurface& eglSurface) override;
/**
* Performs an EGL wait GL command
* @param colorDepth Bit per pixel value (ex. 32 or 24)
* @return true if the eglChooseConfig is succeed.
*/
- bool ChooseConfig( bool isWindowType, ColorDepth depth );
+ bool ChooseConfig(bool isWindowType, ColorDepth depth);
/**
* Create an OpenGL surface using a window
* @param colorDepth Bit per pixel value (ex. 32 or 24)
* @return Handle to an on-screen EGL window surface (the requester has an ownership of this egl surface)
*/
- EGLSurface CreateSurfaceWindow( EGLNativeWindowType window, ColorDepth depth );
+ EGLSurface CreateSurfaceWindow(EGLNativeWindowType window, ColorDepth depth);
/**
* Create the OpenGL surface using a pixmap
* @param colorDepth Bit per pixel value (ex. 32 or 24)
* @return Handle to an off-screen EGL pixmap surface (the requester has an ownership of this egl surface)
*/
- EGLSurface CreateSurfacePixmap( EGLNativePixmapType pixmap, ColorDepth depth );
+ EGLSurface CreateSurfacePixmap(EGLNativePixmapType pixmap, ColorDepth depth);
/**
* Replaces the render surface
* @return true if the context was lost due to a change in display
* between old surface and new surface
*/
- bool ReplaceSurfaceWindow( EGLNativeWindowType window, EGLSurface& eglSurface, EGLContext& eglContext );
+ bool ReplaceSurfaceWindow(EGLNativeWindowType window, EGLSurface& eglSurface, EGLContext& eglContext);
/**
* Replaces the render surface
* @return true if the context was lost due to a change in x-display
* between old surface and new surface
*/
- bool ReplaceSurfacePixmap( EGLNativePixmapType pixmap, EGLSurface& eglSurface );
+ bool ReplaceSurfacePixmap(EGLNativePixmapType pixmap, EGLSurface& eglSurface);
/**
* Sets gles version
*/
- void SetGlesVersion( const int32_t glesVersion );
+ void SetGlesVersion(const int32_t glesVersion);
/**
* Sets Whether the frame is the first after Resume.
bool IsPartialUpdateRequired() const;
private:
-
- Vector<EGLint> mContextAttribs;
+ Vector<EGLint> mContextAttribs;
EGLNativeDisplayType mEglNativeDisplay;
- EGLNativeWindowType mEglNativeWindow;
+ EGLNativeWindowType mEglNativeWindow;
- EGLNativePixmapType mCurrentEglNativePixmap;
+ EGLNativePixmapType mCurrentEglNativePixmap;
- EGLDisplay mEglDisplay;
- EGLConfig mEglConfig;
- EGLContext mEglContext; ///< The resource context holding assets such as textures to be shared
+ EGLDisplay mEglDisplay;
+ EGLConfig mEglConfig;
+ EGLContext mEglContext; ///< The resource context holding assets such as textures to be shared
typedef std::vector<EGLContext> EglWindowContextContainer;
- EglWindowContextContainer mEglWindowContexts; ///< The EGL context for the window
+ EglWindowContextContainer mEglWindowContexts; ///< The EGL context for the window
- EGLSurface mCurrentEglSurface;
- EGLContext mCurrentEglContext;
+ EGLSurface mCurrentEglSurface;
+ EGLContext mCurrentEglContext;
typedef std::vector<EGLSurface> EglWindowSurfaceContainer;
- EglWindowSurfaceContainer mEglWindowSurfaces; ///< The EGL surface for the window
+ EglWindowSurfaceContainer mEglWindowSurfaces; ///< The EGL surface for the window
- int32_t mMultiSamplingLevel;
- int32_t mGlesVersion;
+ int32_t mMultiSamplingLevel;
+ int32_t mGlesVersion;
- ColorDepth mColorDepth;
+ ColorDepth mColorDepth;
- bool mGlesInitialized;
- bool mIsOwnSurface;
- bool mIsWindow;
- bool mDepthBufferRequired;
- bool mStencilBufferRequired;
- bool mPartialUpdateRequired;
- bool mIsSurfacelessContextSupported;
- bool mIsKhrCreateContextSupported;
+ bool mGlesInitialized;
+ bool mIsOwnSurface;
+ bool mIsWindow;
+ bool mDepthBufferRequired;
+ bool mStencilBufferRequired;
+ bool mPartialUpdateRequired;
+ bool mIsSurfacelessContextSupported;
+ bool mIsKhrCreateContextSupported;
- uint32_t mSwapBufferCountAfterResume;
- PFNEGLSETDAMAGEREGIONKHRPROC mEglSetDamageRegionKHR;
+ uint32_t mSwapBufferCountAfterResume;
+ PFNEGLSETDAMAGEREGIONKHRPROC mEglSetDamageRegionKHR;
PFNEGLSWAPBUFFERSWITHDAMAGEEXTPROC mEglSwapBuffersWithDamageKHR;
-
};
} // namespace Adaptor
#define DALI_INTERNAL_ADAPTOR_EGL_SYNC_IMPLEMENTATION_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
+#include <dali/integration-api/gl-sync-abstraction.h>
#include <dali/internal/graphics/common/egl-include.h>
#include <dali/public-api/common/dali-vector.h>
-#include <dali/integration-api/gl-sync-abstraction.h>
// INTERNAL INCLUDES
#include <dali/public-api/dali-adaptor-common.h>
/**
* Constructor
*/
- EglSyncObject( EglImplementation& eglSyncImpl );
+ EglSyncObject(EglImplementation& eglSyncImpl);
/**
* Destructor
EglImplementation& mEglImplementation;
};
-
/**
* GlSyncImplementation is a concrete implementation for GlSyncAbstraction.
* It provides fence syncing for resources such as FrameBuffers using EGL extensions
* Initialize the sync object with the Egl implementation.
* @param[in] impl The EGL implementation (to access display)
*/
- void Initialize( EglImplementation* impl );
+ void Initialize(EglImplementation* impl);
/**
* @copydoc Dali::Integration::GlSyncAbstraction::CreateSyncObject()
void InitializeEglSync();
private:
- typedef Vector<EglSyncObject*> SyncContainer;
- typedef SyncContainer::Iterator SyncIter;
+ typedef Vector<EglSyncObject*> SyncContainer;
+ typedef SyncContainer::Iterator SyncIter;
- EglImplementation* mEglImplementation; ///< Egl implementation (to get display)
- bool mSyncInitialized; ///< Flag to perform initialization on first use
- bool mSyncInitializeFailed; ///< Flag to avoid reloading functions if failed once
+ EglImplementation* mEglImplementation; ///< Egl implementation (to get display)
+ bool mSyncInitialized; ///< Flag to perform initialization on first use
+ bool mSyncInitializeFailed; ///< Flag to avoid reloading functions if failed once
SyncContainer mSyncObjects;
};
#define DALI_INTERNAL_GL_EXTENSION_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
// EXTERNAL INCLUDES
-#include <GLES3/gl3.h>
#include <GLES2/gl2.h>
#include <GLES2/gl2ext.h>
-
+#include <GLES3/gl3.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* GlExtensions class provides GL extensions support
*/
class GlExtensions
{
public:
-
/**
* Constructor
*/
*/
~GlExtensions();
-
public:
-
/**
* If the GL extension is available this function discards specified data in attachments
* from being copied from the target to improve performance.
* @param numAttachments is the count of attachments
* @param attachments is a pointer to the attachments
*/
- void DiscardFrameBuffer (GLenum target, GLsizei numAttachments, const GLenum *attachments);
+ void DiscardFrameBuffer(GLenum target, GLsizei numAttachments, const GLenum* attachments);
/**
* GLES extension
* @param[out] binaryFormat The format of the program binary
* @param[out] binary The actual program bytecode
*/
- void GetProgramBinaryOES (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
+ void GetProgramBinaryOES(GLuint program, GLsizei bufSize, GLsizei* length, GLenum* binaryFormat, GLvoid* binary);
/**
* GLES extension
* @param[in] binary The program bytecode
* @param[in] length The number of bytes in binary
*/
- void ProgramBinaryOES (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length);
+ void ProgramBinaryOES(GLuint program, GLenum binaryFormat, const GLvoid* binary, GLint length);
/**
* KHR extension
* Specify a boundary between passes when using advanced blend equations.
*/
- bool BlendBarrierKHR ();
+ bool BlendBarrierKHR();
private:
-
/**
* Lazy Initialize extensions on first use
*/
#ifdef GL_OES_get_program_binary
PFNGLGETPROGRAMBINARYOESPROC mGlGetProgramBinaryOES;
- PFNGLPROGRAMBINARYOESPROC mGlProgramBinaryOES;
+ PFNGLPROGRAMBINARYOESPROC mGlProgramBinaryOES;
#endif
#ifdef GL_KHR_blend_equation_advanced
#endif
bool mInitialized;
-
};
} // namespace Adaptor
#define DALI_INTERNAL_GL_IMPLEMENTATION_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <memory>
-#include <cstdlib>
#include <GLES2/gl2.h>
#include <GLES2/gl2ext.h>
-#include <dali/integration-api/gl-abstraction.h>
#include <dali/devel-api/threading/conditional-wait.h>
+#include <dali/integration-api/gl-abstraction.h>
#include <dali/internal/graphics/common/egl-include.h>
+#include <cstdlib>
+#include <memory>
// INTERNAL INCLUDES
#include <dali/internal/graphics/gles/gles-abstraction.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
namespace
{
-
-const int32_t INITIAL_GLES_VERSION = 30;
+const int32_t INITIAL_GLES_VERSION = 30;
const int32_t GLES_VERSION_SUPPORT_BLEND_EQUATION_ADVANCED = 32;
-const char* KHR_BLEND_EQUATION_ADVANCED = "GL_KHR_blend_equation_advanced";
+const char* KHR_BLEND_EQUATION_ADVANCED = "GL_KHR_blend_equation_advanced";
const char* FRAGMENT_SHADER_ADVANCED_BLEND_EQUATION_PREFIX =
"#extension GL_KHR_blend_equation_advanced : enable\n"
const char* FRAGMENT_SHADER_OUTPUT_COLOR_STRING =
"out mediump vec4 fragColor;\n";
-}
+} // namespace
/**
* GlImplementation is a concrete implementation for GlAbstraction.
*/
class GlImplementation : public Dali::Integration::GlAbstraction
{
-
public:
GlImplementation()
- : mContextCreatedWaitCondition(),
- mMaxTextureSize( 0 ),
- mVertexShaderPrefix(""),
- mGlesVersion( INITIAL_GLES_VERSION ),
- mShadingLanguageVersion( 100 ),
- mShadingLanguageVersionCached( false ),
- mIsSurfacelessContextSupported( false ),
- mIsAdvancedBlendEquationSupportedCached( false ),
- mIsAdvancedBlendEquationSupported( false ),
- mIsContextCreated( false )
+ : mContextCreatedWaitCondition(),
+ mMaxTextureSize(0),
+ mVertexShaderPrefix(""),
+ mGlesVersion(INITIAL_GLES_VERSION),
+ mShadingLanguageVersion(100),
+ mShadingLanguageVersionCached(false),
+ mIsSurfacelessContextSupported(false),
+ mIsAdvancedBlendEquationSupportedCached(false),
+ mIsAdvancedBlendEquationSupported(false),
+ mIsContextCreated(false)
{
- mImpl.reset( new Gles3Implementation() );
+ mImpl.reset(new Gles3Implementation());
}
- virtual ~GlImplementation() {}
+ virtual ~GlImplementation()
+ {
+ }
void PreRender() override
{
void ContextCreated()
{
- glGetIntegerv( GL_MAX_TEXTURE_SIZE, &mMaxTextureSize );
+ glGetIntegerv(GL_MAX_TEXTURE_SIZE, &mMaxTextureSize);
GLint majorVersion, minorVersion;
- glGetIntegerv( GL_MAJOR_VERSION, &majorVersion );
- glGetIntegerv( GL_MINOR_VERSION, &minorVersion );
+ glGetIntegerv(GL_MAJOR_VERSION, &majorVersion);
+ glGetIntegerv(GL_MINOR_VERSION, &minorVersion);
mGlesVersion = majorVersion * 10 + minorVersion;
- if( mGlesVersion >= GLES_VERSION_SUPPORT_BLEND_EQUATION_ADVANCED )
+ if(mGlesVersion >= GLES_VERSION_SUPPORT_BLEND_EQUATION_ADVANCED)
{
mIsAdvancedBlendEquationSupported = true;
}
else
{
// when mIsAdvancedBlendEquationSupported is cached, we don't need to check all the extensions.
- if( !mIsAdvancedBlendEquationSupportedCached )
+ if(!mIsAdvancedBlendEquationSupportedCached)
{
const char* const extensionStr = reinterpret_cast<const char*>(glGetString(GL_EXTENSIONS));
std::istringstream stream(extensionStr);
- std::string currentExtension;
+ std::string currentExtension;
while(std::getline(stream, currentExtension, ' '))
{
if(currentExtension == KHR_BLEND_EQUATION_ADVANCED)
if(!mShadingLanguageVersionCached)
{
std::istringstream shadingLanguageVersionStream(reinterpret_cast<const char*>(glGetString(GL_SHADING_LANGUAGE_VERSION)));
- std::string token;
- uint32_t tokenCount = 0;
+ std::string token;
+ uint32_t tokenCount = 0;
while(std::getline(shadingLanguageVersionStream, token, ' '))
{
if(tokenCount == 3 && token == "ES")
}
{
- ConditionalWait::ScopedLock lock( mContextCreatedWaitCondition );
+ ConditionalWait::ScopedLock lock(mContextCreatedWaitCondition);
mIsContextCreated = true;
- mContextCreatedWaitCondition.Notify( lock );
+ mContextCreatedWaitCondition.Notify(lock);
}
}
- void SetGlesVersion( const int32_t glesVersion )
+ void SetGlesVersion(const int32_t glesVersion)
{
- if( mGlesVersion / 10 != glesVersion / 10 )
+ if(mGlesVersion / 10 != glesVersion / 10)
{
mGlesVersion = glesVersion;
- if( mGlesVersion >= 30 )
+ if(mGlesVersion >= 30)
{
- mImpl.reset( new Gles3Implementation() );
+ mImpl.reset(new Gles3Implementation());
}
else
{
- mImpl.reset( new Gles2Implementation() );
+ mImpl.reset(new Gles2Implementation());
}
}
}
- void SetIsSurfacelessContextSupported( const bool isSupported )
+ void SetIsSurfacelessContextSupported(const bool isSupported)
{
mIsSurfacelessContextSupported = isSupported;
}
bool IsAdvancedBlendEquationSupported()
{
- ConditionalWait::ScopedLock lock( mContextCreatedWaitCondition );
+ ConditionalWait::ScopedLock lock(mContextCreatedWaitCondition);
if(!mIsContextCreated && !mIsAdvancedBlendEquationSupportedCached)
{
- mContextCreatedWaitCondition.Wait( lock );
+ mContextCreatedWaitCondition.Wait(lock);
}
return mIsAdvancedBlendEquationSupported;
}
{
if(mShaderVersionPrefix == "")
{
- mShaderVersionPrefix = "#version " + std::to_string( GetShadingLanguageVersion() );
+ mShaderVersionPrefix = "#version " + std::to_string(GetShadingLanguageVersion());
if(GetShadingLanguageVersion() < 300)
{
mShaderVersionPrefix += "\n";
return mFragmentShaderPrefix;
}
- bool TextureRequiresConverting( const GLenum imageGlFormat, const GLenum textureGlFormat, const bool isSubImage ) const override
+ bool TextureRequiresConverting(const GLenum imageGlFormat, const GLenum textureGlFormat, const bool isSubImage) const override
{
- bool convert = ( ( imageGlFormat == GL_RGB ) && ( textureGlFormat == GL_RGBA ) );
- if( mGlesVersion >= 30 )
+ bool convert = ((imageGlFormat == GL_RGB) && (textureGlFormat == GL_RGBA));
+ if(mGlesVersion >= 30)
{
// Don't convert manually from RGB to RGBA if GLES >= 3.0 and a sub-image is uploaded.
- convert = ( convert && !isSubImage );
+ convert = (convert && !isSubImage);
}
return convert;
}
int GetMaxTextureSize()
{
- ConditionalWait::ScopedLock lock( mContextCreatedWaitCondition );
- if( !mIsContextCreated )
+ ConditionalWait::ScopedLock lock(mContextCreatedWaitCondition);
+ if(!mIsContextCreated)
{
- mContextCreatedWaitCondition.Wait( lock );
+ mContextCreatedWaitCondition.Wait(lock);
}
return mMaxTextureSize;
}
int GetGlesVersion()
{
- ConditionalWait::ScopedLock lock( mContextCreatedWaitCondition );
- if( !mIsContextCreated )
+ ConditionalWait::ScopedLock lock(mContextCreatedWaitCondition);
+ if(!mIsContextCreated)
{
- mContextCreatedWaitCondition.Wait( lock );
+ mContextCreatedWaitCondition.Wait(lock);
}
return mGlesVersion;
}
- void SetShadingLanguageVersion( int shadingLanguageVersion )
+ void SetShadingLanguageVersion(int shadingLanguageVersion)
{
- mShadingLanguageVersion = shadingLanguageVersion;
+ mShadingLanguageVersion = shadingLanguageVersion;
mShadingLanguageVersionCached = true;
}
int GetShadingLanguageVersion()
{
- ConditionalWait::ScopedLock lock( mContextCreatedWaitCondition );
- if( !mIsContextCreated && !mShadingLanguageVersionCached )
+ ConditionalWait::ScopedLock lock(mContextCreatedWaitCondition);
+ if(!mIsContextCreated && !mShadingLanguageVersionCached)
{
- mContextCreatedWaitCondition.Wait( lock );
+ mContextCreatedWaitCondition.Wait(lock);
}
return mShadingLanguageVersion;
}
/* OpenGL ES 2.0 */
- void ActiveTexture( GLenum texture ) override
+ void ActiveTexture(GLenum texture) override
{
- glActiveTexture( texture );
+ glActiveTexture(texture);
}
- void AttachShader( GLuint program, GLuint shader ) override
+ void AttachShader(GLuint program, GLuint shader) override
{
- glAttachShader( program, shader );
+ glAttachShader(program, shader);
}
- void BindAttribLocation( GLuint program, GLuint index, const char* name ) override
+ void BindAttribLocation(GLuint program, GLuint index, const char* name) override
{
- glBindAttribLocation( program, index, name );
+ glBindAttribLocation(program, index, name);
}
- void BindBuffer( GLenum target, GLuint buffer ) override
+ void BindBuffer(GLenum target, GLuint buffer) override
{
- glBindBuffer( target, buffer );
+ glBindBuffer(target, buffer);
}
- void BindFramebuffer( GLenum target, GLuint framebuffer ) override
+ void BindFramebuffer(GLenum target, GLuint framebuffer) override
{
- glBindFramebuffer( target, framebuffer );
+ glBindFramebuffer(target, framebuffer);
}
- void BindRenderbuffer( GLenum target, GLuint renderbuffer ) override
+ void BindRenderbuffer(GLenum target, GLuint renderbuffer) override
{
- glBindRenderbuffer( target, renderbuffer );
+ glBindRenderbuffer(target, renderbuffer);
}
- void BindTexture( GLenum target, GLuint texture ) override
+ void BindTexture(GLenum target, GLuint texture) override
{
- glBindTexture( target, texture );
+ glBindTexture(target, texture);
}
- void BlendColor( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ) override
+ void BlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) override
{
- glBlendColor( red, green, blue, alpha );
+ glBlendColor(red, green, blue, alpha);
}
- void BlendEquation( GLenum mode ) override
+ void BlendEquation(GLenum mode) override
{
- glBlendEquation( mode );
+ glBlendEquation(mode);
}
- void BlendEquationSeparate( GLenum modeRGB, GLenum modeAlpha ) override
+ void BlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha) override
{
- glBlendEquationSeparate( modeRGB, modeAlpha );
+ glBlendEquationSeparate(modeRGB, modeAlpha);
}
- void BlendFunc( GLenum sfactor, GLenum dfactor ) override
+ void BlendFunc(GLenum sfactor, GLenum dfactor) override
{
- glBlendFunc( sfactor, dfactor );
+ glBlendFunc(sfactor, dfactor);
}
- void BlendFuncSeparate( GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha ) override
+ void BlendFuncSeparate(GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha) override
{
- glBlendFuncSeparate( srcRGB, dstRGB, srcAlpha, dstAlpha );
+ glBlendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha);
}
- void BufferData( GLenum target, GLsizeiptr size, const void* data, GLenum usage ) override
+ void BufferData(GLenum target, GLsizeiptr size, const void* data, GLenum usage) override
{
- glBufferData( target, size, data, usage );
+ glBufferData(target, size, data, usage);
}
- void BufferSubData( GLenum target, GLintptr offset, GLsizeiptr size, const void* data ) override
+ void BufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const void* data) override
{
- glBufferSubData( target, offset, size, data );
+ glBufferSubData(target, offset, size, data);
}
- GLenum CheckFramebufferStatus( GLenum target ) override
+ GLenum CheckFramebufferStatus(GLenum target) override
{
- return glCheckFramebufferStatus( target );
+ return glCheckFramebufferStatus(target);
}
- void Clear( GLbitfield mask ) override
+ void Clear(GLbitfield mask) override
{
- glClear( mask );
+ glClear(mask);
}
- void ClearColor( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ) override
+ void ClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) override
{
- glClearColor( red, green, blue, alpha );
+ glClearColor(red, green, blue, alpha);
}
- void ClearDepthf( GLclampf depth ) override
+ void ClearDepthf(GLclampf depth) override
{
- glClearDepthf( depth );
+ glClearDepthf(depth);
}
- void ClearStencil( GLint s ) override
+ void ClearStencil(GLint s) override
{
- glClearStencil( s );
+ glClearStencil(s);
}
- void ColorMask( GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha ) override
+ void ColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) override
{
- glColorMask( red, green, blue, alpha );
+ glColorMask(red, green, blue, alpha);
}
- void CompileShader( GLuint shader ) override
+ void CompileShader(GLuint shader) override
{
- glCompileShader( shader );
+ glCompileShader(shader);
}
- void CompressedTexImage2D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void* data ) override
+ void CompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void* data) override
{
- glCompressedTexImage2D( target, level, internalformat, width, height, border, imageSize, data );
+ glCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
}
- void CompressedTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void* data ) override
+ void CompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void* data) override
{
- glCompressedTexSubImage2D( target, level, xoffset, yoffset, width, height, format, imageSize, data );
+ glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
}
- void CopyTexImage2D( GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border ) override
+ void CopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border) override
{
- glCopyTexImage2D( target, level, internalformat, x, y, width, height, border );
+ glCopyTexImage2D(target, level, internalformat, x, y, width, height, border);
}
- void CopyTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height ) override
+ void CopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height) override
{
- glCopyTexSubImage2D( target, level, xoffset, yoffset, x, y, width, height );
+ glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
}
- GLuint CreateProgram( void ) override
+ GLuint CreateProgram(void) override
{
return glCreateProgram();
}
- GLuint CreateShader( GLenum type ) override
+ GLuint CreateShader(GLenum type) override
{
- return glCreateShader( type );
+ return glCreateShader(type);
}
- void CullFace( GLenum mode ) override
+ void CullFace(GLenum mode) override
{
- glCullFace( mode );
+ glCullFace(mode);
}
- void DeleteBuffers( GLsizei n, const GLuint* buffers ) override
+ void DeleteBuffers(GLsizei n, const GLuint* buffers) override
{
- glDeleteBuffers( n, buffers );
+ glDeleteBuffers(n, buffers);
}
- void DeleteFramebuffers( GLsizei n, const GLuint* framebuffers ) override
+ void DeleteFramebuffers(GLsizei n, const GLuint* framebuffers) override
{
- glDeleteFramebuffers( n, framebuffers );
+ glDeleteFramebuffers(n, framebuffers);
}
- void DeleteProgram( GLuint program ) override
+ void DeleteProgram(GLuint program) override
{
- glDeleteProgram( program );
+ glDeleteProgram(program);
}
- void DeleteRenderbuffers( GLsizei n, const GLuint* renderbuffers ) override
+ void DeleteRenderbuffers(GLsizei n, const GLuint* renderbuffers) override
{
- glDeleteRenderbuffers( n, renderbuffers );
+ glDeleteRenderbuffers(n, renderbuffers);
}
- void DeleteShader( GLuint shader ) override
+ void DeleteShader(GLuint shader) override
{
- glDeleteShader( shader );
+ glDeleteShader(shader);
}
- void DeleteTextures( GLsizei n, const GLuint* textures ) override
+ void DeleteTextures(GLsizei n, const GLuint* textures) override
{
- glDeleteTextures( n, textures );
+ glDeleteTextures(n, textures);
}
- void DepthFunc( GLenum func ) override
+ void DepthFunc(GLenum func) override
{
- glDepthFunc( func );
+ glDepthFunc(func);
}
- void DepthMask( GLboolean flag ) override
+ void DepthMask(GLboolean flag) override
{
- glDepthMask( flag );
+ glDepthMask(flag);
}
- void DepthRangef( GLclampf zNear, GLclampf zFar ) override
+ void DepthRangef(GLclampf zNear, GLclampf zFar) override
{
- glDepthRangef( zNear, zFar );
+ glDepthRangef(zNear, zFar);
}
- void DetachShader( GLuint program, GLuint shader ) override
+ void DetachShader(GLuint program, GLuint shader) override
{
- glDetachShader( program, shader );
+ glDetachShader(program, shader);
}
- void Disable( GLenum cap ) override
+ void Disable(GLenum cap) override
{
- glDisable( cap );
+ glDisable(cap);
}
- void DisableVertexAttribArray( GLuint index ) override
+ void DisableVertexAttribArray(GLuint index) override
{
- glDisableVertexAttribArray( index );
+ glDisableVertexAttribArray(index);
}
- void DrawArrays( GLenum mode, GLint first, GLsizei count ) override
+ void DrawArrays(GLenum mode, GLint first, GLsizei count) override
{
- glDrawArrays( mode, first, count );
+ glDrawArrays(mode, first, count);
}
- void DrawElements( GLenum mode, GLsizei count, GLenum type, const void* indices ) override
+ void DrawElements(GLenum mode, GLsizei count, GLenum type, const void* indices) override
{
- glDrawElements( mode, count, type, indices );
+ glDrawElements(mode, count, type, indices);
}
- void Enable( GLenum cap ) override
+ void Enable(GLenum cap) override
{
- glEnable( cap );
+ glEnable(cap);
}
- void EnableVertexAttribArray( GLuint index ) override
+ void EnableVertexAttribArray(GLuint index) override
{
- glEnableVertexAttribArray( index );
+ glEnableVertexAttribArray(index);
}
- void Finish( void ) override
+ void Finish(void) override
{
glFinish();
}
- void Flush( void ) override
+ void Flush(void) override
{
glFlush();
}
- void FramebufferRenderbuffer( GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer ) override
+ void FramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) override
{
- glFramebufferRenderbuffer( target, attachment, renderbuffertarget, renderbuffer );
+ glFramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
}
- void FramebufferTexture2D( GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level ) override
+ void FramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) override
{
- glFramebufferTexture2D( target, attachment, textarget, texture, level );
+ glFramebufferTexture2D(target, attachment, textarget, texture, level);
}
- void FrontFace( GLenum mode ) override
+ void FrontFace(GLenum mode) override
{
- glFrontFace( mode );
+ glFrontFace(mode);
}
- void GenBuffers( GLsizei n, GLuint* buffers ) override
+ void GenBuffers(GLsizei n, GLuint* buffers) override
{
- glGenBuffers( n, buffers );
+ glGenBuffers(n, buffers);
}
- void GenerateMipmap( GLenum target ) override
+ void GenerateMipmap(GLenum target) override
{
- glGenerateMipmap( target );
+ glGenerateMipmap(target);
}
- void GenFramebuffers( GLsizei n, GLuint* framebuffers ) override
+ void GenFramebuffers(GLsizei n, GLuint* framebuffers) override
{
- glGenFramebuffers( n, framebuffers );
+ glGenFramebuffers(n, framebuffers);
}
- void GenRenderbuffers( GLsizei n, GLuint* renderbuffers ) override
+ void GenRenderbuffers(GLsizei n, GLuint* renderbuffers) override
{
- glGenRenderbuffers( n, renderbuffers );
+ glGenRenderbuffers(n, renderbuffers);
}
- void GenTextures( GLsizei n, GLuint* textures ) override
+ void GenTextures(GLsizei n, GLuint* textures) override
{
- glGenTextures( n, textures );
+ glGenTextures(n, textures);
}
- void GetActiveAttrib( GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, char* name ) override
+ void GetActiveAttrib(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, char* name) override
{
- glGetActiveAttrib( program, index, bufsize, length, size, type, name );
+ glGetActiveAttrib(program, index, bufsize, length, size, type, name);
}
- void GetActiveUniform( GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, char* name ) override
+ void GetActiveUniform(GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, char* name) override
{
- glGetActiveUniform( program, index, bufsize, length, size, type, name );
+ glGetActiveUniform(program, index, bufsize, length, size, type, name);
}
- void GetAttachedShaders( GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders ) override
+ void GetAttachedShaders(GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders) override
{
- glGetAttachedShaders( program, maxcount, count, shaders );
+ glGetAttachedShaders(program, maxcount, count, shaders);
}
- int GetAttribLocation( GLuint program, const char* name ) override
+ int GetAttribLocation(GLuint program, const char* name) override
{
- return glGetAttribLocation( program, name );
+ return glGetAttribLocation(program, name);
}
- void GetBooleanv( GLenum pname, GLboolean* params ) override
+ void GetBooleanv(GLenum pname, GLboolean* params) override
{
- glGetBooleanv( pname, params );
+ glGetBooleanv(pname, params);
}
- void GetBufferParameteriv( GLenum target, GLenum pname, GLint* params ) override
+ void GetBufferParameteriv(GLenum target, GLenum pname, GLint* params) override
{
- glGetBufferParameteriv( target, pname, params );
+ glGetBufferParameteriv(target, pname, params);
}
- GLenum GetError( void ) override
+ GLenum GetError(void) override
{
return glGetError();
}
- void GetFloatv( GLenum pname, GLfloat* params ) override
+ void GetFloatv(GLenum pname, GLfloat* params) override
{
- glGetFloatv( pname, params );
+ glGetFloatv(pname, params);
}
- void GetFramebufferAttachmentParameteriv( GLenum target, GLenum attachment, GLenum pname, GLint* params ) override
+ void GetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint* params) override
{
- glGetFramebufferAttachmentParameteriv( target, attachment, pname, params );
+ glGetFramebufferAttachmentParameteriv(target, attachment, pname, params);
}
- void GetIntegerv( GLenum pname, GLint* params ) override
+ void GetIntegerv(GLenum pname, GLint* params) override
{
- glGetIntegerv( pname, params );
+ glGetIntegerv(pname, params);
}
- void GetProgramiv( GLuint program, GLenum pname, GLint* params ) override
+ void GetProgramiv(GLuint program, GLenum pname, GLint* params) override
{
- glGetProgramiv( program, pname, params );
+ glGetProgramiv(program, pname, params);
}
- void GetProgramInfoLog( GLuint program, GLsizei bufsize, GLsizei* length, char* infolog ) override
+ void GetProgramInfoLog(GLuint program, GLsizei bufsize, GLsizei* length, char* infolog) override
{
- glGetProgramInfoLog( program, bufsize, length, infolog );
+ glGetProgramInfoLog(program, bufsize, length, infolog);
}
- void GetRenderbufferParameteriv( GLenum target, GLenum pname, GLint* params ) override
+ void GetRenderbufferParameteriv(GLenum target, GLenum pname, GLint* params) override
{
- glGetRenderbufferParameteriv( target, pname, params );
+ glGetRenderbufferParameteriv(target, pname, params);
}
- void GetShaderiv( GLuint shader, GLenum pname, GLint* params ) override
+ void GetShaderiv(GLuint shader, GLenum pname, GLint* params) override
{
- glGetShaderiv( shader, pname, params );
+ glGetShaderiv(shader, pname, params);
}
- void GetShaderInfoLog( GLuint shader, GLsizei bufsize, GLsizei* length, char* infolog ) override
+ void GetShaderInfoLog(GLuint shader, GLsizei bufsize, GLsizei* length, char* infolog) override
{
- glGetShaderInfoLog( shader, bufsize, length, infolog );
+ glGetShaderInfoLog(shader, bufsize, length, infolog);
}
- void GetShaderPrecisionFormat( GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision ) override
+ void GetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision) override
{
- glGetShaderPrecisionFormat( shadertype, precisiontype, range, precision );
+ glGetShaderPrecisionFormat(shadertype, precisiontype, range, precision);
}
- void GetShaderSource( GLuint shader, GLsizei bufsize, GLsizei* length, char* source ) override
+ void GetShaderSource(GLuint shader, GLsizei bufsize, GLsizei* length, char* source) override
{
- glGetShaderSource( shader, bufsize, length, source );
+ glGetShaderSource(shader, bufsize, length, source);
}
- const GLubyte* GetString( GLenum name ) override
+ const GLubyte* GetString(GLenum name) override
{
- return glGetString( name );
+ return glGetString(name);
}
- void GetTexParameterfv( GLenum target, GLenum pname, GLfloat* params ) override
+ void GetTexParameterfv(GLenum target, GLenum pname, GLfloat* params) override
{
- glGetTexParameterfv( target, pname, params );
+ glGetTexParameterfv(target, pname, params);
}
- void GetTexParameteriv( GLenum target, GLenum pname, GLint* params ) override
+ void GetTexParameteriv(GLenum target, GLenum pname, GLint* params) override
{
- glGetTexParameteriv( target, pname, params );
+ glGetTexParameteriv(target, pname, params);
}
- void GetUniformfv( GLuint program, GLint location, GLfloat* params ) override
+ void GetUniformfv(GLuint program, GLint location, GLfloat* params) override
{
- glGetUniformfv( program, location, params );
+ glGetUniformfv(program, location, params);
}
- void GetUniformiv( GLuint program, GLint location, GLint* params ) override
+ void GetUniformiv(GLuint program, GLint location, GLint* params) override
{
- glGetUniformiv( program, location, params );
+ glGetUniformiv(program, location, params);
}
- int GetUniformLocation( GLuint program, const char* name ) override
+ int GetUniformLocation(GLuint program, const char* name) override
{
- return glGetUniformLocation( program, name );
+ return glGetUniformLocation(program, name);
}
- void GetVertexAttribfv( GLuint index, GLenum pname, GLfloat* params ) override
+ void GetVertexAttribfv(GLuint index, GLenum pname, GLfloat* params) override
{
- glGetVertexAttribfv( index, pname, params );
+ glGetVertexAttribfv(index, pname, params);
}
- void GetVertexAttribiv( GLuint index, GLenum pname, GLint* params ) override
+ void GetVertexAttribiv(GLuint index, GLenum pname, GLint* params) override
{
- glGetVertexAttribiv( index, pname, params );
+ glGetVertexAttribiv(index, pname, params);
}
- void GetVertexAttribPointerv( GLuint index, GLenum pname, void** pointer ) override
+ void GetVertexAttribPointerv(GLuint index, GLenum pname, void** pointer) override
{
- glGetVertexAttribPointerv( index, pname, pointer );
+ glGetVertexAttribPointerv(index, pname, pointer);
}
- void Hint( GLenum target, GLenum mode ) override
+ void Hint(GLenum target, GLenum mode) override
{
- glHint( target, mode );
+ glHint(target, mode);
}
- GLboolean IsBuffer( GLuint buffer ) override
+ GLboolean IsBuffer(GLuint buffer) override
{
- return glIsBuffer( buffer );
+ return glIsBuffer(buffer);
}
- GLboolean IsEnabled( GLenum cap ) override
+ GLboolean IsEnabled(GLenum cap) override
{
- return glIsEnabled( cap );
+ return glIsEnabled(cap);
}
- GLboolean IsFramebuffer( GLuint framebuffer ) override
+ GLboolean IsFramebuffer(GLuint framebuffer) override
{
- return glIsFramebuffer( framebuffer );
+ return glIsFramebuffer(framebuffer);
}
- GLboolean IsProgram( GLuint program ) override
+ GLboolean IsProgram(GLuint program) override
{
- return glIsProgram( program );
+ return glIsProgram(program);
}
- GLboolean IsRenderbuffer( GLuint renderbuffer ) override
+ GLboolean IsRenderbuffer(GLuint renderbuffer) override
{
- return glIsRenderbuffer( renderbuffer );
+ return glIsRenderbuffer(renderbuffer);
}
- GLboolean IsShader( GLuint shader ) override
+ GLboolean IsShader(GLuint shader) override
{
- return glIsShader( shader );
+ return glIsShader(shader);
}
- GLboolean IsTexture( GLuint texture ) override
+ GLboolean IsTexture(GLuint texture) override
{
- return glIsTexture( texture );
+ return glIsTexture(texture);
}
- void LineWidth( GLfloat width ) override
+ void LineWidth(GLfloat width) override
{
- glLineWidth( width );
+ glLineWidth(width);
}
- void LinkProgram( GLuint program ) override
+ void LinkProgram(GLuint program) override
{
- glLinkProgram( program );
+ glLinkProgram(program);
}
- void PixelStorei( GLenum pname, GLint param ) override
+ void PixelStorei(GLenum pname, GLint param) override
{
- glPixelStorei( pname, param );
+ glPixelStorei(pname, param);
}
- void PolygonOffset( GLfloat factor, GLfloat units ) override
+ void PolygonOffset(GLfloat factor, GLfloat units) override
{
- glPolygonOffset( factor, units );
+ glPolygonOffset(factor, units);
}
- void ReadPixels( GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void* pixels ) override
+ void ReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void* pixels) override
{
- glReadPixels( x, y, width, height, format, type, pixels );
+ glReadPixels(x, y, width, height, format, type, pixels);
}
- void ReleaseShaderCompiler( void ) override
+ void ReleaseShaderCompiler(void) override
{
glReleaseShaderCompiler();
}
- void RenderbufferStorage( GLenum target, GLenum internalformat, GLsizei width, GLsizei height ) override
+ void RenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height) override
{
- glRenderbufferStorage( target, internalformat, width, height );
+ glRenderbufferStorage(target, internalformat, width, height);
}
- void SampleCoverage( GLclampf value, GLboolean invert ) override
+ void SampleCoverage(GLclampf value, GLboolean invert) override
{
- glSampleCoverage( value, invert );
+ glSampleCoverage(value, invert);
}
- void Scissor( GLint x, GLint y, GLsizei width, GLsizei height ) override
+ void Scissor(GLint x, GLint y, GLsizei width, GLsizei height) override
{
- glScissor( x, y, width, height );
+ glScissor(x, y, width, height);
}
- void ShaderBinary( GLsizei n, const GLuint* shaders, GLenum binaryformat, const void* binary, GLsizei length ) override
+ void ShaderBinary(GLsizei n, const GLuint* shaders, GLenum binaryformat, const void* binary, GLsizei length) override
{
- glShaderBinary( n, shaders, binaryformat, binary, length );
+ glShaderBinary(n, shaders, binaryformat, binary, length);
}
- void ShaderSource( GLuint shader, GLsizei count, const char** string, const GLint* length ) override
+ void ShaderSource(GLuint shader, GLsizei count, const char** string, const GLint* length) override
{
- glShaderSource( shader, count, string, length );
+ glShaderSource(shader, count, string, length);
}
- void StencilFunc( GLenum func, GLint ref, GLuint mask ) override
+ void StencilFunc(GLenum func, GLint ref, GLuint mask) override
{
- glStencilFunc( func, ref, mask );
+ glStencilFunc(func, ref, mask);
}
- void StencilFuncSeparate( GLenum face, GLenum func, GLint ref, GLuint mask ) override
+ void StencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask) override
{
- glStencilFuncSeparate( face, func, ref, mask );
+ glStencilFuncSeparate(face, func, ref, mask);
}
- void StencilMask( GLuint mask ) override
+ void StencilMask(GLuint mask) override
{
- glStencilMask( mask );
+ glStencilMask(mask);
}
- void StencilMaskSeparate( GLenum face, GLuint mask ) override
+ void StencilMaskSeparate(GLenum face, GLuint mask) override
{
- glStencilMaskSeparate( face, mask );
+ glStencilMaskSeparate(face, mask);
}
- void StencilOp( GLenum fail, GLenum zfail, GLenum zpass ) override
+ void StencilOp(GLenum fail, GLenum zfail, GLenum zpass) override
{
- glStencilOp( fail, zfail, zpass );
+ glStencilOp(fail, zfail, zpass);
}
- void StencilOpSeparate( GLenum face, GLenum fail, GLenum zfail, GLenum zpass ) override
+ void StencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass) override
{
- glStencilOpSeparate( face, fail, zfail, zpass );
+ glStencilOpSeparate(face, fail, zfail, zpass);
}
- void TexImage2D( GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void* pixels ) override
+ void TexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void* pixels) override
{
- glTexImage2D( target, level, internalformat, width, height, border, format, type, pixels );
+ glTexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
}
- void TexParameterf( GLenum target, GLenum pname, GLfloat param ) override
+ void TexParameterf(GLenum target, GLenum pname, GLfloat param) override
{
- glTexParameterf( target, pname, param );
+ glTexParameterf(target, pname, param);
}
- void TexParameterfv( GLenum target, GLenum pname, const GLfloat* params ) override
+ void TexParameterfv(GLenum target, GLenum pname, const GLfloat* params) override
{
- glTexParameterfv( target, pname, params );
+ glTexParameterfv(target, pname, params);
}
- void TexParameteri( GLenum target, GLenum pname, GLint param ) override
+ void TexParameteri(GLenum target, GLenum pname, GLint param) override
{
- glTexParameteri( target, pname, param );
+ glTexParameteri(target, pname, param);
}
- void TexParameteriv( GLenum target, GLenum pname, const GLint* params ) override
+ void TexParameteriv(GLenum target, GLenum pname, const GLint* params) override
{
- glTexParameteriv( target, pname, params );
+ glTexParameteriv(target, pname, params);
}
- void TexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels ) override
+ void TexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels) override
{
- glTexSubImage2D( target, level, xoffset, yoffset, width, height, format, type, pixels );
+ glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
}
- void Uniform1f( GLint location, GLfloat x ) override
+ void Uniform1f(GLint location, GLfloat x) override
{
- glUniform1f( location, x );
+ glUniform1f(location, x);
}
- void Uniform1fv( GLint location, GLsizei count, const GLfloat* v ) override
+ void Uniform1fv(GLint location, GLsizei count, const GLfloat* v) override
{
- glUniform1fv( location, count, v );
+ glUniform1fv(location, count, v);
}
- void Uniform1i( GLint location, GLint x ) override
+ void Uniform1i(GLint location, GLint x) override
{
- glUniform1i( location, x );
+ glUniform1i(location, x);
}
- void Uniform1iv( GLint location, GLsizei count, const GLint* v ) override
+ void Uniform1iv(GLint location, GLsizei count, const GLint* v) override
{
- glUniform1iv( location, count, v );
+ glUniform1iv(location, count, v);
}
- void Uniform2f( GLint location, GLfloat x, GLfloat y ) override
+ void Uniform2f(GLint location, GLfloat x, GLfloat y) override
{
- glUniform2f( location, x, y );
+ glUniform2f(location, x, y);
}
- void Uniform2fv( GLint location, GLsizei count, const GLfloat* v ) override
+ void Uniform2fv(GLint location, GLsizei count, const GLfloat* v) override
{
- glUniform2fv( location, count, v );
+ glUniform2fv(location, count, v);
}
- void Uniform2i( GLint location, GLint x, GLint y ) override
+ void Uniform2i(GLint location, GLint x, GLint y) override
{
- glUniform2i( location, x, y );
+ glUniform2i(location, x, y);
}
- void Uniform2iv( GLint location, GLsizei count, const GLint* v ) override
+ void Uniform2iv(GLint location, GLsizei count, const GLint* v) override
{
- glUniform2iv( location, count, v );
+ glUniform2iv(location, count, v);
}
- void Uniform3f( GLint location, GLfloat x, GLfloat y, GLfloat z ) override
+ void Uniform3f(GLint location, GLfloat x, GLfloat y, GLfloat z) override
{
- glUniform3f( location, x, y, z );
+ glUniform3f(location, x, y, z);
}
- void Uniform3fv( GLint location, GLsizei count, const GLfloat* v ) override
+ void Uniform3fv(GLint location, GLsizei count, const GLfloat* v) override
{
- glUniform3fv( location, count, v );
+ glUniform3fv(location, count, v);
}
- void Uniform3i( GLint location, GLint x, GLint y, GLint z ) override
+ void Uniform3i(GLint location, GLint x, GLint y, GLint z) override
{
- glUniform3i( location, x, y, z );
+ glUniform3i(location, x, y, z);
}
- void Uniform3iv( GLint location, GLsizei count, const GLint* v ) override
+ void Uniform3iv(GLint location, GLsizei count, const GLint* v) override
{
- glUniform3iv( location, count, v );
+ glUniform3iv(location, count, v);
}
- void Uniform4f( GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) override
+ void Uniform4f(GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w) override
{
- glUniform4f( location, x, y, z, w );
+ glUniform4f(location, x, y, z, w);
}
- void Uniform4fv( GLint location, GLsizei count, const GLfloat* v ) override
+ void Uniform4fv(GLint location, GLsizei count, const GLfloat* v) override
{
- glUniform4fv( location, count, v );
+ glUniform4fv(location, count, v);
}
- void Uniform4i( GLint location, GLint x, GLint y, GLint z, GLint w ) override
+ void Uniform4i(GLint location, GLint x, GLint y, GLint z, GLint w) override
{
- glUniform4i( location, x, y, z, w );
+ glUniform4i(location, x, y, z, w);
}
- void Uniform4iv( GLint location, GLsizei count, const GLint* v ) override
+ void Uniform4iv(GLint location, GLsizei count, const GLint* v) override
{
- glUniform4iv( location, count, v );
+ glUniform4iv(location, count, v);
}
- void UniformMatrix2fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- glUniformMatrix2fv( location, count, transpose, value );
+ glUniformMatrix2fv(location, count, transpose, value);
}
- void UniformMatrix3fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- glUniformMatrix3fv( location, count, transpose, value );
+ glUniformMatrix3fv(location, count, transpose, value);
}
- void UniformMatrix4fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- glUniformMatrix4fv( location, count, transpose, value );
+ glUniformMatrix4fv(location, count, transpose, value);
}
- void UseProgram( GLuint program ) override
+ void UseProgram(GLuint program) override
{
- glUseProgram( program );
+ glUseProgram(program);
}
- void ValidateProgram( GLuint program ) override
+ void ValidateProgram(GLuint program) override
{
- glValidateProgram( program );
+ glValidateProgram(program);
}
- void VertexAttrib1f( GLuint indx, GLfloat x ) override
+ void VertexAttrib1f(GLuint indx, GLfloat x) override
{
- glVertexAttrib1f( indx, x );
+ glVertexAttrib1f(indx, x);
}
- void VertexAttrib1fv( GLuint indx, const GLfloat* values ) override
+ void VertexAttrib1fv(GLuint indx, const GLfloat* values) override
{
- glVertexAttrib1fv( indx, values );
+ glVertexAttrib1fv(indx, values);
}
- void VertexAttrib2f( GLuint indx, GLfloat x, GLfloat y ) override
+ void VertexAttrib2f(GLuint indx, GLfloat x, GLfloat y) override
{
- glVertexAttrib2f( indx, x, y );
+ glVertexAttrib2f(indx, x, y);
}
- void VertexAttrib2fv( GLuint indx, const GLfloat* values ) override
+ void VertexAttrib2fv(GLuint indx, const GLfloat* values) override
{
- glVertexAttrib2fv( indx, values );
+ glVertexAttrib2fv(indx, values);
}
- void VertexAttrib3f( GLuint indx, GLfloat x, GLfloat y, GLfloat z ) override
+ void VertexAttrib3f(GLuint indx, GLfloat x, GLfloat y, GLfloat z) override
{
- glVertexAttrib3f( indx, x, y, z );
+ glVertexAttrib3f(indx, x, y, z);
}
- void VertexAttrib3fv( GLuint indx, const GLfloat* values ) override
+ void VertexAttrib3fv(GLuint indx, const GLfloat* values) override
{
- glVertexAttrib3fv( indx, values );
+ glVertexAttrib3fv(indx, values);
}
- void VertexAttrib4f( GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w ) override
+ void VertexAttrib4f(GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w) override
{
- glVertexAttrib4f( indx, x, y, z, w );
+ glVertexAttrib4f(indx, x, y, z, w);
}
- void VertexAttrib4fv( GLuint indx, const GLfloat* values ) override
+ void VertexAttrib4fv(GLuint indx, const GLfloat* values) override
{
- glVertexAttrib4fv( indx, values );
+ glVertexAttrib4fv(indx, values);
}
- void VertexAttribPointer( GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void* ptr ) override
+ void VertexAttribPointer(GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void* ptr) override
{
- glVertexAttribPointer( indx, size, type, normalized, stride, ptr );
+ glVertexAttribPointer(indx, size, type, normalized, stride, ptr);
}
- void Viewport( GLint x, GLint y, GLsizei width, GLsizei height ) override
+ void Viewport(GLint x, GLint y, GLsizei width, GLsizei height) override
{
- glViewport( x, y, width, height );
+ glViewport(x, y, width, height);
}
/* OpenGL ES 3.0 */
- void ReadBuffer( GLenum mode ) override
+ void ReadBuffer(GLenum mode) override
{
- mImpl->ReadBuffer( mode );
+ mImpl->ReadBuffer(mode);
}
- void DrawRangeElements( GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid* indices ) override
+ void DrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid* indices) override
{
- mImpl->DrawRangeElements( mode, start, end, count, type, indices );
+ mImpl->DrawRangeElements(mode, start, end, count, type, indices);
}
- void TexImage3D( GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels ) override
+ void TexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels) override
{
- mImpl->TexImage3D( target, level, internalformat, width, height, depth, border, format, type, pixels );
+ mImpl->TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
}
- void TexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels ) override
+ void TexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels) override
{
- mImpl->TexSubImage3D( target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels );
+ mImpl->TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
}
- void CopyTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height ) override
+ void CopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height) override
{
- mImpl->CopyTexSubImage3D( target, level, xoffset, yoffset, zoffset, x, y, width, height );
+ mImpl->CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
}
- void CompressedTexImage3D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data ) override
+ void CompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data) override
{
- mImpl->CompressedTexImage3D( target, level, internalformat, width, height, depth, border, imageSize, data );
+ mImpl->CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
}
- void CompressedTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data ) override
+ void CompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data) override
{
- mImpl->CompressedTexSubImage3D( target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data );
+ mImpl->CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
}
- void GenQueries( GLsizei n, GLuint* ids ) override
+ void GenQueries(GLsizei n, GLuint* ids) override
{
- mImpl->GenQueries( n, ids );
+ mImpl->GenQueries(n, ids);
}
- void DeleteQueries( GLsizei n, const GLuint* ids ) override
+ void DeleteQueries(GLsizei n, const GLuint* ids) override
{
- mImpl->DeleteQueries( n, ids );
+ mImpl->DeleteQueries(n, ids);
}
- GLboolean IsQuery( GLuint id ) override
+ GLboolean IsQuery(GLuint id) override
{
- return mImpl->IsQuery( id );
+ return mImpl->IsQuery(id);
}
- void BeginQuery( GLenum target, GLuint id ) override
+ void BeginQuery(GLenum target, GLuint id) override
{
- mImpl->BeginQuery( target, id );
+ mImpl->BeginQuery(target, id);
}
- void EndQuery( GLenum target ) override
+ void EndQuery(GLenum target) override
{
- mImpl->EndQuery( target );
+ mImpl->EndQuery(target);
}
- void GetQueryiv( GLenum target, GLenum pname, GLint* params ) override
+ void GetQueryiv(GLenum target, GLenum pname, GLint* params) override
{
- mImpl->GetQueryiv( target, pname, params );
+ mImpl->GetQueryiv(target, pname, params);
}
- void GetQueryObjectuiv( GLuint id, GLenum pname, GLuint* params ) override
+ void GetQueryObjectuiv(GLuint id, GLenum pname, GLuint* params) override
{
- mImpl->GetQueryObjectuiv( id, pname, params );
+ mImpl->GetQueryObjectuiv(id, pname, params);
}
- GLboolean UnmapBuffer( GLenum target ) override
+ GLboolean UnmapBuffer(GLenum target) override
{
- return mImpl->UnmapBuffer( target );
+ return mImpl->UnmapBuffer(target);
}
- void GetBufferPointerv( GLenum target, GLenum pname, GLvoid** params ) override
+ void GetBufferPointerv(GLenum target, GLenum pname, GLvoid** params) override
{
- mImpl->GetBufferPointerv( target, pname, params );
+ mImpl->GetBufferPointerv(target, pname, params);
}
- void DrawBuffers( GLsizei n, const GLenum* bufs ) override
+ void DrawBuffers(GLsizei n, const GLenum* bufs) override
{
- mImpl->DrawBuffers( n, bufs );
+ mImpl->DrawBuffers(n, bufs);
}
- void UniformMatrix2x3fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- mImpl->UniformMatrix2x3fv( location, count, transpose, value );
+ mImpl->UniformMatrix2x3fv(location, count, transpose, value);
}
- void UniformMatrix3x2fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- mImpl->UniformMatrix3x2fv( location, count, transpose, value );
+ mImpl->UniformMatrix3x2fv(location, count, transpose, value);
}
- void UniformMatrix2x4fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- mImpl->UniformMatrix2x4fv( location, count, transpose, value );
+ mImpl->UniformMatrix2x4fv(location, count, transpose, value);
}
- void UniformMatrix4x2fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- mImpl->UniformMatrix4x2fv( location, count, transpose, value );
+ mImpl->UniformMatrix4x2fv(location, count, transpose, value);
}
- void UniformMatrix3x4fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- mImpl->UniformMatrix3x4fv( location, count, transpose, value );
+ mImpl->UniformMatrix3x4fv(location, count, transpose, value);
}
- void UniformMatrix4x3fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- mImpl->UniformMatrix4x3fv( location, count, transpose, value );
+ mImpl->UniformMatrix4x3fv(location, count, transpose, value);
}
- void BlitFramebuffer( GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter ) override
+ void BlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) override
{
- mImpl->BlitFramebuffer( srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter );
+ mImpl->BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
}
- void RenderbufferStorageMultisample( GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height ) override
+ void RenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height) override
{
- mImpl->RenderbufferStorageMultisample( target, samples, internalformat, width, height );
+ mImpl->RenderbufferStorageMultisample(target, samples, internalformat, width, height);
}
- void FramebufferTextureLayer( GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer ) override
+ void FramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer) override
{
- mImpl->FramebufferTextureLayer( target, attachment, texture, level, layer );
+ mImpl->FramebufferTextureLayer(target, attachment, texture, level, layer);
}
- GLvoid* MapBufferRange( GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access ) override
+ GLvoid* MapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access) override
{
- return mImpl->MapBufferRange( target, offset, length, access );
+ return mImpl->MapBufferRange(target, offset, length, access);
}
- void FlushMappedBufferRange( GLenum target, GLintptr offset, GLsizeiptr length ) override
+ void FlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length) override
{
- mImpl->FlushMappedBufferRange( target, offset, length );
+ mImpl->FlushMappedBufferRange(target, offset, length);
}
- void BindVertexArray( GLuint array ) override
+ void BindVertexArray(GLuint array) override
{
- mImpl->BindVertexArray( array );
+ mImpl->BindVertexArray(array);
}
- void DeleteVertexArrays( GLsizei n, const GLuint* arrays ) override
+ void DeleteVertexArrays(GLsizei n, const GLuint* arrays) override
{
- mImpl->DeleteVertexArrays( n, arrays );
+ mImpl->DeleteVertexArrays(n, arrays);
}
- void GenVertexArrays( GLsizei n, GLuint* arrays ) override
+ void GenVertexArrays(GLsizei n, GLuint* arrays) override
{
- mImpl->GenVertexArrays( n, arrays );
+ mImpl->GenVertexArrays(n, arrays);
}
- GLboolean IsVertexArray( GLuint array ) override
+ GLboolean IsVertexArray(GLuint array) override
{
- return mImpl->IsVertexArray( array );
+ return mImpl->IsVertexArray(array);
}
- void GetIntegeri_v( GLenum target, GLuint index, GLint* data ) override
+ void GetIntegeri_v(GLenum target, GLuint index, GLint* data) override
{
- mImpl->GetIntegeri_v( target, index, data );
+ mImpl->GetIntegeri_v(target, index, data);
}
- void BeginTransformFeedback( GLenum primitiveMode ) override
+ void BeginTransformFeedback(GLenum primitiveMode) override
{
- mImpl->BeginTransformFeedback( primitiveMode );
+ mImpl->BeginTransformFeedback(primitiveMode);
}
- void EndTransformFeedback( void ) override
+ void EndTransformFeedback(void) override
{
mImpl->EndTransformFeedback();
}
- void BindBufferRange( GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size ) override
+ void BindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size) override
{
- mImpl->BindBufferRange( target, index, buffer, offset, size );
+ mImpl->BindBufferRange(target, index, buffer, offset, size);
}
- void BindBufferBase( GLenum target, GLuint index, GLuint buffer ) override
+ void BindBufferBase(GLenum target, GLuint index, GLuint buffer) override
{
- mImpl->BindBufferBase( target, index, buffer );
+ mImpl->BindBufferBase(target, index, buffer);
}
- void TransformFeedbackVaryings( GLuint program, GLsizei count, const GLchar* const* varyings, GLenum bufferMode ) override
+ void TransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const* varyings, GLenum bufferMode) override
{
- mImpl->TransformFeedbackVaryings( program, count, varyings, bufferMode );
+ mImpl->TransformFeedbackVaryings(program, count, varyings, bufferMode);
}
- void GetTransformFeedbackVarying( GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei* size, GLenum* type, GLchar* name ) override
+ void GetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei* size, GLenum* type, GLchar* name) override
{
- mImpl->GetTransformFeedbackVarying( program, index, bufSize, length, size, type, name );
+ mImpl->GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
}
- void VertexAttribIPointer( GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid* pointer ) override
+ void VertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid* pointer) override
{
- mImpl->VertexAttribIPointer( index, size, type, stride, pointer );
+ mImpl->VertexAttribIPointer(index, size, type, stride, pointer);
}
- void GetVertexAttribIiv( GLuint index, GLenum pname, GLint* params ) override
+ void GetVertexAttribIiv(GLuint index, GLenum pname, GLint* params) override
{
- mImpl->GetVertexAttribIiv( index, pname, params );
+ mImpl->GetVertexAttribIiv(index, pname, params);
}
- void GetVertexAttribIuiv( GLuint index, GLenum pname, GLuint* params ) override
+ void GetVertexAttribIuiv(GLuint index, GLenum pname, GLuint* params) override
{
- mImpl->GetVertexAttribIuiv( index, pname, params );
+ mImpl->GetVertexAttribIuiv(index, pname, params);
}
- void VertexAttribI4i( GLuint index, GLint x, GLint y, GLint z, GLint w ) override
+ void VertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w) override
{
- mImpl->VertexAttribI4i( index, x, y, z, w );
+ mImpl->VertexAttribI4i(index, x, y, z, w);
}
- void VertexAttribI4ui( GLuint index, GLuint x, GLuint y, GLuint z, GLuint w ) override
+ void VertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) override
{
- mImpl->VertexAttribI4ui( index, x, y, z, w );
+ mImpl->VertexAttribI4ui(index, x, y, z, w);
}
- void VertexAttribI4iv( GLuint index, const GLint* v ) override
+ void VertexAttribI4iv(GLuint index, const GLint* v) override
{
- mImpl->VertexAttribI4iv( index, v );
+ mImpl->VertexAttribI4iv(index, v);
}
- void VertexAttribI4uiv( GLuint index, const GLuint* v ) override
+ void VertexAttribI4uiv(GLuint index, const GLuint* v) override
{
- mImpl->VertexAttribI4uiv( index, v );
+ mImpl->VertexAttribI4uiv(index, v);
}
- void GetUniformuiv( GLuint program, GLint location, GLuint* params ) override
+ void GetUniformuiv(GLuint program, GLint location, GLuint* params) override
{
- mImpl->GetUniformuiv( program, location, params );
+ mImpl->GetUniformuiv(program, location, params);
}
- GLint GetFragDataLocation( GLuint program, const GLchar *name ) override
+ GLint GetFragDataLocation(GLuint program, const GLchar* name) override
{
- return mImpl->GetFragDataLocation( program, name );
+ return mImpl->GetFragDataLocation(program, name);
}
- void Uniform1ui( GLint location, GLuint v0 ) override
+ void Uniform1ui(GLint location, GLuint v0) override
{
- mImpl->Uniform1ui( location, v0 );
+ mImpl->Uniform1ui(location, v0);
}
- void Uniform2ui( GLint location, GLuint v0, GLuint v1 ) override
+ void Uniform2ui(GLint location, GLuint v0, GLuint v1) override
{
- mImpl->Uniform2ui( location, v0, v1 );
+ mImpl->Uniform2ui(location, v0, v1);
}
- void Uniform3ui( GLint location, GLuint v0, GLuint v1, GLuint v2 ) override
+ void Uniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2) override
{
- mImpl->Uniform3ui( location, v0, v1, v2 );
+ mImpl->Uniform3ui(location, v0, v1, v2);
}
- void Uniform4ui( GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3 ) override
+ void Uniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3) override
{
- mImpl->Uniform4ui( location, v0, v1, v2, v3 );
+ mImpl->Uniform4ui(location, v0, v1, v2, v3);
}
- void Uniform1uiv( GLint location, GLsizei count, const GLuint* value ) override
+ void Uniform1uiv(GLint location, GLsizei count, const GLuint* value) override
{
- mImpl->Uniform1uiv( location, count, value );
+ mImpl->Uniform1uiv(location, count, value);
}
- void Uniform2uiv( GLint location, GLsizei count, const GLuint* value ) override
+ void Uniform2uiv(GLint location, GLsizei count, const GLuint* value) override
{
- mImpl->Uniform2uiv( location, count, value );
+ mImpl->Uniform2uiv(location, count, value);
}
- void Uniform3uiv( GLint location, GLsizei count, const GLuint* value ) override
+ void Uniform3uiv(GLint location, GLsizei count, const GLuint* value) override
{
- mImpl->Uniform3uiv( location, count, value );
+ mImpl->Uniform3uiv(location, count, value);
}
- void Uniform4uiv( GLint location, GLsizei count, const GLuint* value ) override
+ void Uniform4uiv(GLint location, GLsizei count, const GLuint* value) override
{
- mImpl->Uniform4uiv( location, count, value );
+ mImpl->Uniform4uiv(location, count, value);
}
- void ClearBufferiv( GLenum buffer, GLint drawbuffer, const GLint* value ) override
+ void ClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint* value) override
{
- mImpl->ClearBufferiv( buffer, drawbuffer, value );
+ mImpl->ClearBufferiv(buffer, drawbuffer, value);
}
- void ClearBufferuiv( GLenum buffer, GLint drawbuffer, const GLuint* value ) override
+ void ClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint* value) override
{
- mImpl->ClearBufferuiv( buffer, drawbuffer, value );
+ mImpl->ClearBufferuiv(buffer, drawbuffer, value);
}
- void ClearBufferfv( GLenum buffer, GLint drawbuffer, const GLfloat* value ) override
+ void ClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat* value) override
{
- mImpl->ClearBufferfv( buffer, drawbuffer, value );
+ mImpl->ClearBufferfv(buffer, drawbuffer, value);
}
- void ClearBufferfi( GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil ) override
+ void ClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil) override
{
- mImpl->ClearBufferfi( buffer, drawbuffer, depth, stencil );
+ mImpl->ClearBufferfi(buffer, drawbuffer, depth, stencil);
}
- const GLubyte* GetStringi( GLenum name, GLuint index ) override
+ const GLubyte* GetStringi(GLenum name, GLuint index) override
{
- return mImpl->GetStringi( name, index );
+ return mImpl->GetStringi(name, index);
}
- void CopyBufferSubData( GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size ) override
+ void CopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size) override
{
- mImpl->CopyBufferSubData( readTarget, writeTarget, readOffset, writeOffset, size );
+ mImpl->CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
}
- void GetUniformIndices( GLuint program, GLsizei uniformCount, const GLchar* const* uniformNames, GLuint* uniformIndices ) override
+ void GetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const* uniformNames, GLuint* uniformIndices) override
{
- mImpl->GetUniformIndices( program, uniformCount, uniformNames, uniformIndices );
+ mImpl->GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
}
- void GetActiveUniformsiv( GLuint program, GLsizei uniformCount, const GLuint* uniformIndices, GLenum pname, GLint* params ) override
+ void GetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint* uniformIndices, GLenum pname, GLint* params) override
{
- mImpl->GetActiveUniformsiv( program, uniformCount, uniformIndices, pname, params );
+ mImpl->GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
}
- GLuint GetUniformBlockIndex( GLuint program, const GLchar* uniformBlockName ) override
+ GLuint GetUniformBlockIndex(GLuint program, const GLchar* uniformBlockName) override
{
- return mImpl->GetUniformBlockIndex( program, uniformBlockName );
+ return mImpl->GetUniformBlockIndex(program, uniformBlockName);
}
- void GetActiveUniformBlockiv( GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint* params ) override
+ void GetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint* params) override
{
- mImpl->GetActiveUniformBlockiv( program, uniformBlockIndex, pname, params );
+ mImpl->GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
}
- void GetActiveUniformBlockName( GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei* length, GLchar* uniformBlockName ) override
+ void GetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei* length, GLchar* uniformBlockName) override
{
- mImpl->GetActiveUniformBlockName( program, uniformBlockIndex, bufSize, length, uniformBlockName );
+ mImpl->GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
}
- void UniformBlockBinding( GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding ) override
+ void UniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding) override
{
- mImpl->UniformBlockBinding( program, uniformBlockIndex, uniformBlockBinding );
+ mImpl->UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
}
- void DrawArraysInstanced( GLenum mode, GLint first, GLsizei count, GLsizei instanceCount ) override
+ void DrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instanceCount) override
{
- mImpl->DrawArraysInstanced( mode, first, count, instanceCount );
+ mImpl->DrawArraysInstanced(mode, first, count, instanceCount);
}
- void DrawElementsInstanced( GLenum mode, GLsizei count, GLenum type, const GLvoid* indices, GLsizei instanceCount ) override
+ void DrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid* indices, GLsizei instanceCount) override
{
- mImpl->DrawElementsInstanced( mode, count, type, indices, instanceCount );
+ mImpl->DrawElementsInstanced(mode, count, type, indices, instanceCount);
}
- GLsync FenceSync( GLenum condition, GLbitfield flags ) override
+ GLsync FenceSync(GLenum condition, GLbitfield flags) override
{
- return mImpl->FenceSync( condition, flags );
+ return mImpl->FenceSync(condition, flags);
}
- GLboolean IsSync( GLsync sync ) override
+ GLboolean IsSync(GLsync sync) override
{
- return mImpl->IsSync( sync );
+ return mImpl->IsSync(sync);
}
- void DeleteSync( GLsync sync ) override
+ void DeleteSync(GLsync sync) override
{
- mImpl->DeleteSync( sync );
+ mImpl->DeleteSync(sync);
}
- GLenum ClientWaitSync( GLsync sync, GLbitfield flags, GLuint64 timeout ) override
+ GLenum ClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout) override
{
- return mImpl->ClientWaitSync( sync, flags, timeout );
+ return mImpl->ClientWaitSync(sync, flags, timeout);
}
- void WaitSync( GLsync sync, GLbitfield flags, GLuint64 timeout ) override
+ void WaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout) override
{
- mImpl->WaitSync( sync, flags, timeout );
+ mImpl->WaitSync(sync, flags, timeout);
}
- void GetInteger64v( GLenum pname, GLint64* params ) override
+ void GetInteger64v(GLenum pname, GLint64* params) override
{
- mImpl->GetInteger64v( pname, params );
+ mImpl->GetInteger64v(pname, params);
}
- void GetSynciv( GLsync sync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values ) override
+ void GetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values) override
{
- mImpl->GetSynciv( sync, pname, bufSize, length, values );
+ mImpl->GetSynciv(sync, pname, bufSize, length, values);
}
- void GetInteger64i_v( GLenum target, GLuint index, GLint64* data ) override
+ void GetInteger64i_v(GLenum target, GLuint index, GLint64* data) override
{
- mImpl->GetInteger64i_v( target, index, data );
+ mImpl->GetInteger64i_v(target, index, data);
}
- void GetBufferParameteri64v( GLenum target, GLenum pname, GLint64* params ) override
+ void GetBufferParameteri64v(GLenum target, GLenum pname, GLint64* params) override
{
- mImpl->GetBufferParameteri64v( target, pname, params );
+ mImpl->GetBufferParameteri64v(target, pname, params);
}
- void GenSamplers( GLsizei count, GLuint* samplers ) override
+ void GenSamplers(GLsizei count, GLuint* samplers) override
{
- mImpl->GenSamplers( count, samplers );
+ mImpl->GenSamplers(count, samplers);
}
- void DeleteSamplers( GLsizei count, const GLuint* samplers ) override
+ void DeleteSamplers(GLsizei count, const GLuint* samplers) override
{
- mImpl->DeleteSamplers( count, samplers );
+ mImpl->DeleteSamplers(count, samplers);
}
- GLboolean IsSampler( GLuint sampler ) override
+ GLboolean IsSampler(GLuint sampler) override
{
- return mImpl->IsSampler( sampler );
+ return mImpl->IsSampler(sampler);
}
- void BindSampler( GLuint unit, GLuint sampler ) override
+ void BindSampler(GLuint unit, GLuint sampler) override
{
- mImpl->BindSampler( unit, sampler );
+ mImpl->BindSampler(unit, sampler);
}
- void SamplerParameteri( GLuint sampler, GLenum pname, GLint param ) override
+ void SamplerParameteri(GLuint sampler, GLenum pname, GLint param) override
{
- mImpl->SamplerParameteri( sampler, pname, param );
+ mImpl->SamplerParameteri(sampler, pname, param);
}
- void SamplerParameteriv( GLuint sampler, GLenum pname, const GLint* param ) override
+ void SamplerParameteriv(GLuint sampler, GLenum pname, const GLint* param) override
{
- mImpl->SamplerParameteriv( sampler, pname, param );
+ mImpl->SamplerParameteriv(sampler, pname, param);
}
- void SamplerParameterf( GLuint sampler, GLenum pname, GLfloat param ) override
+ void SamplerParameterf(GLuint sampler, GLenum pname, GLfloat param) override
{
- mImpl->SamplerParameterf( sampler, pname, param );
+ mImpl->SamplerParameterf(sampler, pname, param);
}
- void SamplerParameterfv( GLuint sampler, GLenum pname, const GLfloat* param ) override
+ void SamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat* param) override
{
- mImpl->SamplerParameterfv( sampler, pname, param );
+ mImpl->SamplerParameterfv(sampler, pname, param);
}
- void GetSamplerParameteriv( GLuint sampler, GLenum pname, GLint* params ) override
+ void GetSamplerParameteriv(GLuint sampler, GLenum pname, GLint* params) override
{
- mImpl->GetSamplerParameteriv( sampler, pname, params );
+ mImpl->GetSamplerParameteriv(sampler, pname, params);
}
- void GetSamplerParameterfv( GLuint sampler, GLenum pname, GLfloat* params ) override
+ void GetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat* params) override
{
- mImpl->GetSamplerParameterfv( sampler, pname, params );
+ mImpl->GetSamplerParameterfv(sampler, pname, params);
}
- void VertexAttribDivisor( GLuint index, GLuint divisor ) override
+ void VertexAttribDivisor(GLuint index, GLuint divisor) override
{
- mImpl->VertexAttribDivisor( index, divisor );
+ mImpl->VertexAttribDivisor(index, divisor);
}
- void BindTransformFeedback( GLenum target, GLuint id ) override
+ void BindTransformFeedback(GLenum target, GLuint id) override
{
- mImpl->BindTransformFeedback( target, id );
+ mImpl->BindTransformFeedback(target, id);
}
- void DeleteTransformFeedbacks( GLsizei n, const GLuint* ids ) override
+ void DeleteTransformFeedbacks(GLsizei n, const GLuint* ids) override
{
- mImpl->DeleteTransformFeedbacks( n, ids );
+ mImpl->DeleteTransformFeedbacks(n, ids);
}
- void GenTransformFeedbacks( GLsizei n, GLuint* ids ) override
+ void GenTransformFeedbacks(GLsizei n, GLuint* ids) override
{
- mImpl->GenTransformFeedbacks( n, ids );
+ mImpl->GenTransformFeedbacks(n, ids);
}
- GLboolean IsTransformFeedback( GLuint id ) override
+ GLboolean IsTransformFeedback(GLuint id) override
{
- return mImpl->IsTransformFeedback( id );
+ return mImpl->IsTransformFeedback(id);
}
- void PauseTransformFeedback( void ) override
+ void PauseTransformFeedback(void) override
{
mImpl->PauseTransformFeedback();
}
- void ResumeTransformFeedback( void ) override
+ void ResumeTransformFeedback(void) override
{
mImpl->ResumeTransformFeedback();
}
- void GetProgramBinary( GLuint program, GLsizei bufSize, GLsizei* length, GLenum* binaryFormat, GLvoid* binary ) override
+ void GetProgramBinary(GLuint program, GLsizei bufSize, GLsizei* length, GLenum* binaryFormat, GLvoid* binary) override
{
- mImpl->GetProgramBinary( program, bufSize, length, binaryFormat, binary );
+ mImpl->GetProgramBinary(program, bufSize, length, binaryFormat, binary);
}
- void ProgramBinary( GLuint program, GLenum binaryFormat, const GLvoid* binary, GLsizei length ) override
+ void ProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid* binary, GLsizei length) override
{
- mImpl->ProgramBinary( program, binaryFormat, binary, length );
+ mImpl->ProgramBinary(program, binaryFormat, binary, length);
}
- void ProgramParameteri( GLuint program, GLenum pname, GLint value ) override
+ void ProgramParameteri(GLuint program, GLenum pname, GLint value) override
{
- mImpl->ProgramParameteri( program, pname, value );
+ mImpl->ProgramParameteri(program, pname, value);
}
- void InvalidateFramebuffer( GLenum target, GLsizei numAttachments, const GLenum* attachments ) override
+ void InvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum* attachments) override
{
- mImpl->InvalidateFramebuffer( target, numAttachments, attachments );
+ mImpl->InvalidateFramebuffer(target, numAttachments, attachments);
}
- void InvalidateSubFramebuffer( GLenum target, GLsizei numAttachments, const GLenum* attachments, GLint x, GLint y, GLsizei width, GLsizei height ) override
+ void InvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum* attachments, GLint x, GLint y, GLsizei width, GLsizei height) override
{
- mImpl->InvalidateSubFramebuffer( target, numAttachments, attachments, x, y, width, height );
+ mImpl->InvalidateSubFramebuffer(target, numAttachments, attachments, x, y, width, height);
}
- void TexStorage2D( GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height ) override
+ void TexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height) override
{
- mImpl->TexStorage2D( target, levels, internalformat, width, height );
+ mImpl->TexStorage2D(target, levels, internalformat, width, height);
}
- void TexStorage3D( GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth ) override
+ void TexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth) override
{
- mImpl->TexStorage3D( target, levels, internalformat, width, height, depth );
+ mImpl->TexStorage3D(target, levels, internalformat, width, height, depth);
}
- void GetInternalformativ( GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint* params ) override
+ void GetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint* params) override
{
- mImpl->GetInternalformativ( target, internalformat, pname, bufSize, params );
+ mImpl->GetInternalformativ(target, internalformat, pname, bufSize, params);
}
void BlendBarrier(void)
private:
std::unique_ptr<GlesAbstraction> mImpl;
- ConditionalWait mContextCreatedWaitCondition;
- GLint mMaxTextureSize;
- std::string mShaderVersionPrefix;
- std::string mVertexShaderPrefix;
- std::string mFragmentShaderPrefix;
- int32_t mGlesVersion;
- int32_t mShadingLanguageVersion;
- bool mShadingLanguageVersionCached;
- bool mIsSurfacelessContextSupported;
- bool mIsAdvancedBlendEquationSupportedCached;
- bool mIsAdvancedBlendEquationSupported;
- bool mIsContextCreated;
+ ConditionalWait mContextCreatedWaitCondition;
+ GLint mMaxTextureSize;
+ std::string mShaderVersionPrefix;
+ std::string mVertexShaderPrefix;
+ std::string mFragmentShaderPrefix;
+ int32_t mGlesVersion;
+ int32_t mShadingLanguageVersion;
+ bool mShadingLanguageVersionCached;
+ bool mIsSurfacelessContextSupported;
+ bool mIsAdvancedBlendEquationSupportedCached;
+ bool mIsAdvancedBlendEquationSupported;
+ bool mIsContextCreated;
};
} // namespace Adaptor
#define DALI_INTERNAL_GLES_ABSTRACTION_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class GlesAbstraction
{
-
public:
-
/**
* Destructor
*/
- virtual ~GlesAbstraction() {};
+ virtual ~GlesAbstraction(){};
- virtual void ReadBuffer( GLenum mode ) = 0;
+ virtual void ReadBuffer(GLenum mode) = 0;
- virtual void DrawRangeElements( GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid* indices ) = 0;
+ virtual void DrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid* indices) = 0;
- virtual void TexImage3D( GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels ) = 0;
+ virtual void TexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels) = 0;
- virtual void TexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels ) = 0;
+ virtual void TexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels) = 0;
- virtual void CopyTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height ) = 0;
+ virtual void CopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height) = 0;
- virtual void CompressedTexImage3D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data ) = 0;
+ virtual void CompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data) = 0;
- virtual void CompressedTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data ) = 0;
+ virtual void CompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data) = 0;
- virtual void GenQueries( GLsizei n, GLuint* ids ) = 0;
+ virtual void GenQueries(GLsizei n, GLuint* ids) = 0;
- virtual void DeleteQueries( GLsizei n, const GLuint* ids ) = 0;
+ virtual void DeleteQueries(GLsizei n, const GLuint* ids) = 0;
- virtual GLboolean IsQuery( GLuint id ) = 0;
+ virtual GLboolean IsQuery(GLuint id) = 0;
- virtual void BeginQuery( GLenum target, GLuint id ) = 0;
+ virtual void BeginQuery(GLenum target, GLuint id) = 0;
- virtual void EndQuery( GLenum target ) = 0;
+ virtual void EndQuery(GLenum target) = 0;
- virtual void GetQueryiv( GLenum target, GLenum pname, GLint* params ) = 0;
+ virtual void GetQueryiv(GLenum target, GLenum pname, GLint* params) = 0;
- virtual void GetQueryObjectuiv( GLuint id, GLenum pname, GLuint* params ) = 0;
+ virtual void GetQueryObjectuiv(GLuint id, GLenum pname, GLuint* params) = 0;
- virtual GLboolean UnmapBuffer( GLenum target ) = 0;
+ virtual GLboolean UnmapBuffer(GLenum target) = 0;
- virtual void GetBufferPointerv( GLenum target, GLenum pname, GLvoid** params ) = 0;
+ virtual void GetBufferPointerv(GLenum target, GLenum pname, GLvoid** params) = 0;
- virtual void DrawBuffers( GLsizei n, const GLenum* bufs ) = 0;
+ virtual void DrawBuffers(GLsizei n, const GLenum* bufs) = 0;
- virtual void UniformMatrix2x3fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) = 0;
+ virtual void UniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) = 0;
- virtual void UniformMatrix3x2fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) = 0;
+ virtual void UniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) = 0;
- virtual void UniformMatrix2x4fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) = 0;
+ virtual void UniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) = 0;
- virtual void UniformMatrix4x2fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) = 0;
+ virtual void UniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) = 0;
- virtual void UniformMatrix3x4fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) = 0;
+ virtual void UniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) = 0;
- virtual void UniformMatrix4x3fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) = 0;
+ virtual void UniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) = 0;
- virtual void BlitFramebuffer( GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter ) = 0;
+ virtual void BlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) = 0;
- virtual void RenderbufferStorageMultisample( GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height ) = 0;
+ virtual void RenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height) = 0;
- virtual void FramebufferTextureLayer( GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer ) = 0;
+ virtual void FramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer) = 0;
- virtual GLvoid* MapBufferRange( GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access ) = 0;
+ virtual GLvoid* MapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access) = 0;
- virtual void FlushMappedBufferRange( GLenum target, GLintptr offset, GLsizeiptr length ) = 0;
+ virtual void FlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length) = 0;
- virtual void BindVertexArray( GLuint array ) = 0;
+ virtual void BindVertexArray(GLuint array) = 0;
- virtual void DeleteVertexArrays( GLsizei n, const GLuint* arrays ) = 0;
+ virtual void DeleteVertexArrays(GLsizei n, const GLuint* arrays) = 0;
- virtual void GenVertexArrays( GLsizei n, GLuint* arrays ) = 0;
+ virtual void GenVertexArrays(GLsizei n, GLuint* arrays) = 0;
- virtual GLboolean IsVertexArray( GLuint array ) = 0;
+ virtual GLboolean IsVertexArray(GLuint array) = 0;
- virtual void GetIntegeri_v( GLenum target, GLuint index, GLint* data ) = 0;
+ virtual void GetIntegeri_v(GLenum target, GLuint index, GLint* data) = 0;
- virtual void BeginTransformFeedback( GLenum primitiveMode ) = 0;
+ virtual void BeginTransformFeedback(GLenum primitiveMode) = 0;
- virtual void EndTransformFeedback( void ) = 0;
+ virtual void EndTransformFeedback(void) = 0;
- virtual void BindBufferRange( GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size ) = 0;
+ virtual void BindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size) = 0;
- virtual void BindBufferBase( GLenum target, GLuint index, GLuint buffer ) = 0;
+ virtual void BindBufferBase(GLenum target, GLuint index, GLuint buffer) = 0;
- virtual void TransformFeedbackVaryings( GLuint program, GLsizei count, const GLchar* const* varyings, GLenum bufferMode ) = 0;
+ virtual void TransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const* varyings, GLenum bufferMode) = 0;
- virtual void GetTransformFeedbackVarying( GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei* size, GLenum* type, GLchar* name ) = 0;
+ virtual void GetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei* size, GLenum* type, GLchar* name) = 0;
- virtual void VertexAttribIPointer( GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid* pointer ) = 0;
+ virtual void VertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid* pointer) = 0;
- virtual void GetVertexAttribIiv( GLuint index, GLenum pname, GLint* params ) = 0;
+ virtual void GetVertexAttribIiv(GLuint index, GLenum pname, GLint* params) = 0;
- virtual void GetVertexAttribIuiv( GLuint index, GLenum pname, GLuint* params ) = 0;
+ virtual void GetVertexAttribIuiv(GLuint index, GLenum pname, GLuint* params) = 0;
- virtual void VertexAttribI4i( GLuint index, GLint x, GLint y, GLint z, GLint w ) = 0;
+ virtual void VertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w) = 0;
- virtual void VertexAttribI4ui( GLuint index, GLuint x, GLuint y, GLuint z, GLuint w ) = 0;
+ virtual void VertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) = 0;
- virtual void VertexAttribI4iv( GLuint index, const GLint* v ) = 0;
+ virtual void VertexAttribI4iv(GLuint index, const GLint* v) = 0;
- virtual void VertexAttribI4uiv( GLuint index, const GLuint* v ) = 0;
+ virtual void VertexAttribI4uiv(GLuint index, const GLuint* v) = 0;
- virtual void GetUniformuiv( GLuint program, GLint location, GLuint* params ) = 0;
+ virtual void GetUniformuiv(GLuint program, GLint location, GLuint* params) = 0;
- virtual GLint GetFragDataLocation( GLuint program, const GLchar *name ) = 0;
+ virtual GLint GetFragDataLocation(GLuint program, const GLchar* name) = 0;
- virtual void Uniform1ui( GLint location, GLuint v0 ) = 0;
+ virtual void Uniform1ui(GLint location, GLuint v0) = 0;
- virtual void Uniform2ui( GLint location, GLuint v0, GLuint v1 ) = 0;
+ virtual void Uniform2ui(GLint location, GLuint v0, GLuint v1) = 0;
- virtual void Uniform3ui( GLint location, GLuint v0, GLuint v1, GLuint v2 ) = 0;
+ virtual void Uniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2) = 0;
- virtual void Uniform4ui( GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3 ) = 0;
+ virtual void Uniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3) = 0;
- virtual void Uniform1uiv( GLint location, GLsizei count, const GLuint* value ) = 0;
+ virtual void Uniform1uiv(GLint location, GLsizei count, const GLuint* value) = 0;
- virtual void Uniform2uiv( GLint location, GLsizei count, const GLuint* value ) = 0;
+ virtual void Uniform2uiv(GLint location, GLsizei count, const GLuint* value) = 0;
- virtual void Uniform3uiv( GLint location, GLsizei count, const GLuint* value ) = 0;
+ virtual void Uniform3uiv(GLint location, GLsizei count, const GLuint* value) = 0;
- virtual void Uniform4uiv( GLint location, GLsizei count, const GLuint* value ) = 0;
+ virtual void Uniform4uiv(GLint location, GLsizei count, const GLuint* value) = 0;
- virtual void ClearBufferiv( GLenum buffer, GLint drawbuffer, const GLint* value ) = 0;
+ virtual void ClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint* value) = 0;
- virtual void ClearBufferuiv( GLenum buffer, GLint drawbuffer, const GLuint* value ) = 0;
+ virtual void ClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint* value) = 0;
- virtual void ClearBufferfv( GLenum buffer, GLint drawbuffer, const GLfloat* value ) = 0;
+ virtual void ClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat* value) = 0;
- virtual void ClearBufferfi( GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil ) = 0;
+ virtual void ClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil) = 0;
- virtual const GLubyte* GetStringi( GLenum name, GLuint index ) = 0;
+ virtual const GLubyte* GetStringi(GLenum name, GLuint index) = 0;
- virtual void CopyBufferSubData( GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size ) = 0;
+ virtual void CopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size) = 0;
- virtual void GetUniformIndices( GLuint program, GLsizei uniformCount, const GLchar* const* uniformNames, GLuint* uniformIndices ) = 0;
+ virtual void GetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const* uniformNames, GLuint* uniformIndices) = 0;
- virtual void GetActiveUniformsiv( GLuint program, GLsizei uniformCount, const GLuint* uniformIndices, GLenum pname, GLint* params ) = 0;
+ virtual void GetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint* uniformIndices, GLenum pname, GLint* params) = 0;
- virtual GLuint GetUniformBlockIndex( GLuint program, const GLchar* uniformBlockName ) = 0;
+ virtual GLuint GetUniformBlockIndex(GLuint program, const GLchar* uniformBlockName) = 0;
- virtual void GetActiveUniformBlockiv( GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint* params ) = 0;
+ virtual void GetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint* params) = 0;
- virtual void GetActiveUniformBlockName( GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei* length, GLchar* uniformBlockName ) = 0;
+ virtual void GetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei* length, GLchar* uniformBlockName) = 0;
- virtual void UniformBlockBinding( GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding ) = 0;
+ virtual void UniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding) = 0;
- virtual void DrawArraysInstanced( GLenum mode, GLint first, GLsizei count, GLsizei instanceCount ) = 0;
+ virtual void DrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instanceCount) = 0;
- virtual void DrawElementsInstanced( GLenum mode, GLsizei count, GLenum type, const GLvoid* indices, GLsizei instanceCount ) = 0;
+ virtual void DrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid* indices, GLsizei instanceCount) = 0;
- virtual GLsync FenceSync( GLenum condition, GLbitfield flags ) = 0;
+ virtual GLsync FenceSync(GLenum condition, GLbitfield flags) = 0;
- virtual GLboolean IsSync( GLsync sync ) = 0;
+ virtual GLboolean IsSync(GLsync sync) = 0;
- virtual void DeleteSync( GLsync sync ) = 0;
+ virtual void DeleteSync(GLsync sync) = 0;
- virtual GLenum ClientWaitSync( GLsync sync, GLbitfield flags, GLuint64 timeout ) = 0;
+ virtual GLenum ClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout) = 0;
- virtual void WaitSync( GLsync sync, GLbitfield flags, GLuint64 timeout ) = 0;
+ virtual void WaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout) = 0;
- virtual void GetInteger64v( GLenum pname, GLint64* params ) = 0;
+ virtual void GetInteger64v(GLenum pname, GLint64* params) = 0;
- virtual void GetSynciv( GLsync sync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values ) = 0;
+ virtual void GetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values) = 0;
- virtual void GetInteger64i_v( GLenum target, GLuint index, GLint64* data ) = 0;
+ virtual void GetInteger64i_v(GLenum target, GLuint index, GLint64* data) = 0;
- virtual void GetBufferParameteri64v( GLenum target, GLenum pname, GLint64* params ) = 0;
+ virtual void GetBufferParameteri64v(GLenum target, GLenum pname, GLint64* params) = 0;
- virtual void GenSamplers( GLsizei count, GLuint* samplers ) = 0;
+ virtual void GenSamplers(GLsizei count, GLuint* samplers) = 0;
- virtual void DeleteSamplers( GLsizei count, const GLuint* samplers ) = 0;
+ virtual void DeleteSamplers(GLsizei count, const GLuint* samplers) = 0;
- virtual GLboolean IsSampler( GLuint sampler ) = 0;
+ virtual GLboolean IsSampler(GLuint sampler) = 0;
- virtual void BindSampler( GLuint unit, GLuint sampler ) = 0;
+ virtual void BindSampler(GLuint unit, GLuint sampler) = 0;
- virtual void SamplerParameteri( GLuint sampler, GLenum pname, GLint param ) = 0;
+ virtual void SamplerParameteri(GLuint sampler, GLenum pname, GLint param) = 0;
- virtual void SamplerParameteriv( GLuint sampler, GLenum pname, const GLint* param ) = 0;
+ virtual void SamplerParameteriv(GLuint sampler, GLenum pname, const GLint* param) = 0;
- virtual void SamplerParameterf( GLuint sampler, GLenum pname, GLfloat param ) = 0;
+ virtual void SamplerParameterf(GLuint sampler, GLenum pname, GLfloat param) = 0;
- virtual void SamplerParameterfv( GLuint sampler, GLenum pname, const GLfloat* param ) = 0;
+ virtual void SamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat* param) = 0;
- virtual void GetSamplerParameteriv( GLuint sampler, GLenum pname, GLint* params ) = 0;
+ virtual void GetSamplerParameteriv(GLuint sampler, GLenum pname, GLint* params) = 0;
- virtual void GetSamplerParameterfv( GLuint sampler, GLenum pname, GLfloat* params ) = 0;
+ virtual void GetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat* params) = 0;
- virtual void VertexAttribDivisor( GLuint index, GLuint divisor ) = 0;
+ virtual void VertexAttribDivisor(GLuint index, GLuint divisor) = 0;
- virtual void BindTransformFeedback( GLenum target, GLuint id ) = 0;
+ virtual void BindTransformFeedback(GLenum target, GLuint id) = 0;
- virtual void DeleteTransformFeedbacks( GLsizei n, const GLuint* ids ) = 0;
+ virtual void DeleteTransformFeedbacks(GLsizei n, const GLuint* ids) = 0;
- virtual void GenTransformFeedbacks( GLsizei n, GLuint* ids ) = 0;
+ virtual void GenTransformFeedbacks(GLsizei n, GLuint* ids) = 0;
- virtual GLboolean IsTransformFeedback( GLuint id ) = 0;
+ virtual GLboolean IsTransformFeedback(GLuint id) = 0;
- virtual void PauseTransformFeedback( void ) = 0;
+ virtual void PauseTransformFeedback(void) = 0;
- virtual void ResumeTransformFeedback( void ) = 0;
+ virtual void ResumeTransformFeedback(void) = 0;
- virtual void GetProgramBinary( GLuint program, GLsizei bufSize, GLsizei* length, GLenum* binaryFormat, GLvoid* binary ) = 0;
+ virtual void GetProgramBinary(GLuint program, GLsizei bufSize, GLsizei* length, GLenum* binaryFormat, GLvoid* binary) = 0;
- virtual void ProgramBinary( GLuint program, GLenum binaryFormat, const GLvoid* binary, GLsizei length ) = 0;
+ virtual void ProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid* binary, GLsizei length) = 0;
- virtual void ProgramParameteri( GLuint program, GLenum pname, GLint value ) = 0;
+ virtual void ProgramParameteri(GLuint program, GLenum pname, GLint value) = 0;
- virtual void InvalidateFramebuffer( GLenum target, GLsizei numAttachments, const GLenum* attachments ) = 0;
+ virtual void InvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum* attachments) = 0;
- virtual void InvalidateSubFramebuffer( GLenum target, GLsizei numAttachments, const GLenum* attachments, GLint x, GLint y, GLsizei width, GLsizei height ) = 0;
+ virtual void InvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum* attachments, GLint x, GLint y, GLsizei width, GLsizei height) = 0;
- virtual void TexStorage2D( GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height ) = 0;
+ virtual void TexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height) = 0;
- virtual void TexStorage3D( GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth ) = 0;
+ virtual void TexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth) = 0;
- virtual void GetInternalformativ( GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint* params ) = 0;
+ virtual void GetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint* params) = 0;
- virtual void BlendBarrier( void ) = 0;
+ virtual void BlendBarrier(void) = 0;
};
} // namespace Adaptor
#define DALI_INTERNAL_GLES2_IMPLEMENTATION_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*
*/
- // EXTERNAL INCLUDES
+// EXTERNAL INCLUDES
#include <dali/integration-api/debug.h>
// INTERNAL INCLUDES
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class Gles2Implementation : public GlesAbstraction
{
-
public:
- Gles2Implementation() {}
+ Gles2Implementation()
+ {
+ }
- ~Gles2Implementation() override {}
+ ~Gles2Implementation() override
+ {
+ }
- void ReadBuffer( GLenum mode ) override
+ void ReadBuffer(GLenum mode) override
{
- DALI_LOG_ERROR( "glReadBuffer is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glReadBuffer is not supported in OpenGL es 2.0\n");
}
- void DrawRangeElements( GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid* indices ) override
+ void DrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid* indices) override
{
- DALI_LOG_ERROR( "glDrawRangeElements is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glDrawRangeElements is not supported in OpenGL es 2.0\n");
}
- void TexImage3D( GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels ) override
+ void TexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels) override
{
- DALI_LOG_ERROR( "glTexImage3D is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glTexImage3D is not supported in OpenGL es 2.0\n");
}
- void TexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels ) override
+ void TexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels) override
{
- DALI_LOG_ERROR( "glTexSubImage3D is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glTexSubImage3D is not supported in OpenGL es 2.0\n");
}
- void CopyTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height ) override
+ void CopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height) override
{
- DALI_LOG_ERROR( "glCopyTexSubImage3D is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glCopyTexSubImage3D is not supported in OpenGL es 2.0\n");
}
- void CompressedTexImage3D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data ) override
+ void CompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data) override
{
- DALI_LOG_ERROR( "glCompressedTexImage3D is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glCompressedTexImage3D is not supported in OpenGL es 2.0\n");
}
- void CompressedTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data ) override
+ void CompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data) override
{
- DALI_LOG_ERROR( "glCompressedTexSubImage3D is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glCompressedTexSubImage3D is not supported in OpenGL es 2.0\n");
}
- void GenQueries( GLsizei n, GLuint* ids ) override
+ void GenQueries(GLsizei n, GLuint* ids) override
{
- DALI_LOG_ERROR( "glGenQueries is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGenQueries is not supported in OpenGL es 2.0\n");
}
- void DeleteQueries( GLsizei n, const GLuint* ids ) override
+ void DeleteQueries(GLsizei n, const GLuint* ids) override
{
- DALI_LOG_ERROR( "glDeleteQueries is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glDeleteQueries is not supported in OpenGL es 2.0\n");
}
- GLboolean IsQuery( GLuint id ) override
+ GLboolean IsQuery(GLuint id) override
{
- DALI_LOG_ERROR( "glIsQuery is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glIsQuery is not supported in OpenGL es 2.0\n");
return 0;
}
- void BeginQuery( GLenum target, GLuint id ) override
+ void BeginQuery(GLenum target, GLuint id) override
{
- DALI_LOG_ERROR( "glBeginQuery is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glBeginQuery is not supported in OpenGL es 2.0\n");
}
- void EndQuery( GLenum target ) override
+ void EndQuery(GLenum target) override
{
- DALI_LOG_ERROR( "glEndQuery is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glEndQuery is not supported in OpenGL es 2.0\n");
}
- void GetQueryiv( GLenum target, GLenum pname, GLint* params ) override
+ void GetQueryiv(GLenum target, GLenum pname, GLint* params) override
{
- DALI_LOG_ERROR( "glGetQueryiv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetQueryiv is not supported in OpenGL es 2.0\n");
}
- void GetQueryObjectuiv( GLuint id, GLenum pname, GLuint* params ) override
+ void GetQueryObjectuiv(GLuint id, GLenum pname, GLuint* params) override
{
- DALI_LOG_ERROR( "glGetQueryObjectuiv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetQueryObjectuiv is not supported in OpenGL es 2.0\n");
}
- GLboolean UnmapBuffer( GLenum target ) override
+ GLboolean UnmapBuffer(GLenum target) override
{
- DALI_LOG_ERROR( "glUnmapBuffer is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glUnmapBuffer is not supported in OpenGL es 2.0\n");
return 0;
}
- void GetBufferPointerv( GLenum target, GLenum pname, GLvoid** params ) override
+ void GetBufferPointerv(GLenum target, GLenum pname, GLvoid** params) override
{
- DALI_LOG_ERROR( "glGetBufferPointerv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetBufferPointerv is not supported in OpenGL es 2.0\n");
}
- void DrawBuffers( GLsizei n, const GLenum* bufs ) override
+ void DrawBuffers(GLsizei n, const GLenum* bufs) override
{
- DALI_LOG_ERROR( "glDrawBuffers is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glDrawBuffers is not supported in OpenGL es 2.0\n");
}
- void UniformMatrix2x3fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- DALI_LOG_ERROR( "glUniformMatrix2x3fv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glUniformMatrix2x3fv is not supported in OpenGL es 2.0\n");
}
- void UniformMatrix3x2fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- DALI_LOG_ERROR( "glUniformMatrix3x2fv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glUniformMatrix3x2fv is not supported in OpenGL es 2.0\n");
}
- void UniformMatrix2x4fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- DALI_LOG_ERROR( "glUniformMatrix2x4fv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glUniformMatrix2x4fv is not supported in OpenGL es 2.0\n");
}
- void UniformMatrix4x2fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- DALI_LOG_ERROR( "glUniformMatrix4x2fv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glUniformMatrix4x2fv is not supported in OpenGL es 2.0\n");
}
- void UniformMatrix3x4fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- DALI_LOG_ERROR( "glUniformMatrix3x4fv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glUniformMatrix3x4fv is not supported in OpenGL es 2.0\n");
}
- void UniformMatrix4x3fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- DALI_LOG_ERROR( "glUniformMatrix4x3fv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glUniformMatrix4x3fv is not supported in OpenGL es 2.0\n");
}
- void BlitFramebuffer( GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter ) override
+ void BlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) override
{
- DALI_LOG_ERROR( "glBlitFramebuffer is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glBlitFramebuffer is not supported in OpenGL es 2.0\n");
}
- void RenderbufferStorageMultisample( GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height ) override
+ void RenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height) override
{
- DALI_LOG_ERROR( "glRenderbufferStorageMultisample is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glRenderbufferStorageMultisample is not supported in OpenGL es 2.0\n");
}
- void FramebufferTextureLayer( GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer ) override
+ void FramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer) override
{
- DALI_LOG_ERROR( "glFramebufferTextureLayer is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glFramebufferTextureLayer is not supported in OpenGL es 2.0\n");
}
- GLvoid* MapBufferRange( GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access ) override
+ GLvoid* MapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access) override
{
- DALI_LOG_ERROR( "glMapBufferRange is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glMapBufferRange is not supported in OpenGL es 2.0\n");
return NULL;
}
- void FlushMappedBufferRange( GLenum target, GLintptr offset, GLsizeiptr length ) override
+ void FlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length) override
{
- DALI_LOG_ERROR( "glFlushMappedBufferRange is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glFlushMappedBufferRange is not supported in OpenGL es 2.0\n");
}
- void BindVertexArray( GLuint array ) override
+ void BindVertexArray(GLuint array) override
{
- DALI_LOG_ERROR( "glBindVertexArray is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glBindVertexArray is not supported in OpenGL es 2.0\n");
}
- void DeleteVertexArrays( GLsizei n, const GLuint* arrays ) override
+ void DeleteVertexArrays(GLsizei n, const GLuint* arrays) override
{
- DALI_LOG_ERROR( "glDeleteVertexArrays is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glDeleteVertexArrays is not supported in OpenGL es 2.0\n");
}
- void GenVertexArrays( GLsizei n, GLuint* arrays ) override
+ void GenVertexArrays(GLsizei n, GLuint* arrays) override
{
- DALI_LOG_ERROR( "glGenVertexArrays is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGenVertexArrays is not supported in OpenGL es 2.0\n");
}
- GLboolean IsVertexArray( GLuint array ) override
+ GLboolean IsVertexArray(GLuint array) override
{
- DALI_LOG_ERROR( "glIsVertexArray is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glIsVertexArray is not supported in OpenGL es 2.0\n");
return 0;
}
- void GetIntegeri_v( GLenum target, GLuint index, GLint* data ) override
+ void GetIntegeri_v(GLenum target, GLuint index, GLint* data) override
{
- DALI_LOG_ERROR( "glGetIntegeri_v is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetIntegeri_v is not supported in OpenGL es 2.0\n");
}
- void BeginTransformFeedback( GLenum primitiveMode ) override
+ void BeginTransformFeedback(GLenum primitiveMode) override
{
- DALI_LOG_ERROR( "glBeginTransformFeedback is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glBeginTransformFeedback is not supported in OpenGL es 2.0\n");
}
- void EndTransformFeedback( void ) override
+ void EndTransformFeedback(void) override
{
- DALI_LOG_ERROR( "glEndTransformFeedback is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glEndTransformFeedback is not supported in OpenGL es 2.0\n");
}
- void BindBufferRange( GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size ) override
+ void BindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size) override
{
- DALI_LOG_ERROR( "glBindBufferRange is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glBindBufferRange is not supported in OpenGL es 2.0\n");
}
- void BindBufferBase( GLenum target, GLuint index, GLuint buffer ) override
+ void BindBufferBase(GLenum target, GLuint index, GLuint buffer) override
{
- DALI_LOG_ERROR( "glBindBufferBase is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glBindBufferBase is not supported in OpenGL es 2.0\n");
}
- void TransformFeedbackVaryings( GLuint program, GLsizei count, const GLchar* const* varyings, GLenum bufferMode ) override
+ void TransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const* varyings, GLenum bufferMode) override
{
- DALI_LOG_ERROR( "glTransformFeedbackVaryings is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glTransformFeedbackVaryings is not supported in OpenGL es 2.0\n");
}
- void GetTransformFeedbackVarying( GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei* size, GLenum* type, GLchar* name ) override
+ void GetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei* size, GLenum* type, GLchar* name) override
{
- DALI_LOG_ERROR( "glGetTransformFeedbackVarying is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetTransformFeedbackVarying is not supported in OpenGL es 2.0\n");
}
- void VertexAttribIPointer( GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid* pointer ) override
+ void VertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid* pointer) override
{
- DALI_LOG_ERROR( "glVertexAttribIPointer is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glVertexAttribIPointer is not supported in OpenGL es 2.0\n");
}
- void GetVertexAttribIiv( GLuint index, GLenum pname, GLint* params ) override
+ void GetVertexAttribIiv(GLuint index, GLenum pname, GLint* params) override
{
- DALI_LOG_ERROR( "glGetVertexAttribIiv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetVertexAttribIiv is not supported in OpenGL es 2.0\n");
}
- void GetVertexAttribIuiv( GLuint index, GLenum pname, GLuint* params ) override
+ void GetVertexAttribIuiv(GLuint index, GLenum pname, GLuint* params) override
{
- DALI_LOG_ERROR( "glGetVertexAttribIuiv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetVertexAttribIuiv is not supported in OpenGL es 2.0\n");
}
- void VertexAttribI4i( GLuint index, GLint x, GLint y, GLint z, GLint w ) override
+ void VertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w) override
{
- DALI_LOG_ERROR( "glVertexAttribI4i is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glVertexAttribI4i is not supported in OpenGL es 2.0\n");
}
- void VertexAttribI4ui( GLuint index, GLuint x, GLuint y, GLuint z, GLuint w ) override
+ void VertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) override
{
- DALI_LOG_ERROR( "glVertexAttribI4ui is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glVertexAttribI4ui is not supported in OpenGL es 2.0\n");
}
- void VertexAttribI4iv( GLuint index, const GLint* v ) override
+ void VertexAttribI4iv(GLuint index, const GLint* v) override
{
- DALI_LOG_ERROR( "glVertexAttribI4iv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glVertexAttribI4iv is not supported in OpenGL es 2.0\n");
}
- void VertexAttribI4uiv( GLuint index, const GLuint* v ) override
+ void VertexAttribI4uiv(GLuint index, const GLuint* v) override
{
- DALI_LOG_ERROR( "glVertexAttribI4uiv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glVertexAttribI4uiv is not supported in OpenGL es 2.0\n");
}
- void GetUniformuiv( GLuint program, GLint location, GLuint* params ) override
+ void GetUniformuiv(GLuint program, GLint location, GLuint* params) override
{
- DALI_LOG_ERROR( "glGetUniformuiv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetUniformuiv is not supported in OpenGL es 2.0\n");
}
- GLint GetFragDataLocation( GLuint program, const GLchar *name ) override
+ GLint GetFragDataLocation(GLuint program, const GLchar* name) override
{
- DALI_LOG_ERROR( "glGetFragDataLocation is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetFragDataLocation is not supported in OpenGL es 2.0\n");
return -1;
}
- void Uniform1ui( GLint location, GLuint v0 ) override
+ void Uniform1ui(GLint location, GLuint v0) override
{
- DALI_LOG_ERROR( "glUniform1ui is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glUniform1ui is not supported in OpenGL es 2.0\n");
}
- void Uniform2ui( GLint location, GLuint v0, GLuint v1 ) override
+ void Uniform2ui(GLint location, GLuint v0, GLuint v1) override
{
- DALI_LOG_ERROR( "glUniform2ui is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glUniform2ui is not supported in OpenGL es 2.0\n");
}
- void Uniform3ui( GLint location, GLuint v0, GLuint v1, GLuint v2 ) override
+ void Uniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2) override
{
- DALI_LOG_ERROR( "glUniform3ui is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glUniform3ui is not supported in OpenGL es 2.0\n");
}
- void Uniform4ui( GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3 ) override
+ void Uniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3) override
{
- DALI_LOG_ERROR( "glUniform4ui is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glUniform4ui is not supported in OpenGL es 2.0\n");
}
- void Uniform1uiv( GLint location, GLsizei count, const GLuint* value ) override
+ void Uniform1uiv(GLint location, GLsizei count, const GLuint* value) override
{
- DALI_LOG_ERROR( "glUniform1uiv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glUniform1uiv is not supported in OpenGL es 2.0\n");
}
- void Uniform2uiv( GLint location, GLsizei count, const GLuint* value ) override
+ void Uniform2uiv(GLint location, GLsizei count, const GLuint* value) override
{
- DALI_LOG_ERROR( "glUniform2uiv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glUniform2uiv is not supported in OpenGL es 2.0\n");
}
- void Uniform3uiv( GLint location, GLsizei count, const GLuint* value ) override
+ void Uniform3uiv(GLint location, GLsizei count, const GLuint* value) override
{
- DALI_LOG_ERROR( "glUniform3uiv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glUniform3uiv is not supported in OpenGL es 2.0\n");
}
- void Uniform4uiv( GLint location, GLsizei count, const GLuint* value ) override
+ void Uniform4uiv(GLint location, GLsizei count, const GLuint* value) override
{
- DALI_LOG_ERROR( "glUniform4uiv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glUniform4uiv is not supported in OpenGL es 2.0\n");
}
- void ClearBufferiv( GLenum buffer, GLint drawbuffer, const GLint* value ) override
+ void ClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint* value) override
{
- DALI_LOG_ERROR( "glClearBufferiv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glClearBufferiv is not supported in OpenGL es 2.0\n");
}
- void ClearBufferuiv( GLenum buffer, GLint drawbuffer, const GLuint* value ) override
+ void ClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint* value) override
{
- DALI_LOG_ERROR( "glClearBufferuiv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glClearBufferuiv is not supported in OpenGL es 2.0\n");
}
- void ClearBufferfv( GLenum buffer, GLint drawbuffer, const GLfloat* value ) override
+ void ClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat* value) override
{
- DALI_LOG_ERROR( "glClearBufferfv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glClearBufferfv is not supported in OpenGL es 2.0\n");
}
- void ClearBufferfi( GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil ) override
+ void ClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil) override
{
- DALI_LOG_ERROR( "glClearBufferfi is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glClearBufferfi is not supported in OpenGL es 2.0\n");
}
- const GLubyte* GetStringi( GLenum name, GLuint index ) override
+ const GLubyte* GetStringi(GLenum name, GLuint index) override
{
- DALI_LOG_ERROR( "glGetStringi is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetStringi is not supported in OpenGL es 2.0\n");
return NULL;
}
- void CopyBufferSubData( GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size ) override
+ void CopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size) override
{
- DALI_LOG_ERROR( "glCopyBufferSubData is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glCopyBufferSubData is not supported in OpenGL es 2.0\n");
}
- void GetUniformIndices( GLuint program, GLsizei uniformCount, const GLchar* const* uniformNames, GLuint* uniformIndices ) override
+ void GetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const* uniformNames, GLuint* uniformIndices) override
{
- DALI_LOG_ERROR( "glGetUniformIndices is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetUniformIndices is not supported in OpenGL es 2.0\n");
}
- void GetActiveUniformsiv( GLuint program, GLsizei uniformCount, const GLuint* uniformIndices, GLenum pname, GLint* params ) override
+ void GetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint* uniformIndices, GLenum pname, GLint* params) override
{
- DALI_LOG_ERROR( "glGetActiveUniformsiv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetActiveUniformsiv is not supported in OpenGL es 2.0\n");
}
- GLuint GetUniformBlockIndex( GLuint program, const GLchar* uniformBlockName ) override
+ GLuint GetUniformBlockIndex(GLuint program, const GLchar* uniformBlockName) override
{
- DALI_LOG_ERROR( "glGetUniformBlockIndex is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetUniformBlockIndex is not supported in OpenGL es 2.0\n");
return 0;
}
- void GetActiveUniformBlockiv( GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint* params ) override
+ void GetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint* params) override
{
- DALI_LOG_ERROR( "glGetActiveUniformBlockiv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetActiveUniformBlockiv is not supported in OpenGL es 2.0\n");
}
- void GetActiveUniformBlockName( GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei* length, GLchar* uniformBlockName ) override
+ void GetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei* length, GLchar* uniformBlockName) override
{
- DALI_LOG_ERROR( "glGetActiveUniformBlockName is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetActiveUniformBlockName is not supported in OpenGL es 2.0\n");
}
- void UniformBlockBinding( GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding ) override
+ void UniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding) override
{
- DALI_LOG_ERROR( "glUniformBlockBinding is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glUniformBlockBinding is not supported in OpenGL es 2.0\n");
}
- void DrawArraysInstanced( GLenum mode, GLint first, GLsizei count, GLsizei instanceCount ) override
+ void DrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instanceCount) override
{
- DALI_LOG_ERROR( "glDrawArraysInstanced is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glDrawArraysInstanced is not supported in OpenGL es 2.0\n");
}
- void DrawElementsInstanced( GLenum mode, GLsizei count, GLenum type, const GLvoid* indices, GLsizei instanceCount ) override
+ void DrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid* indices, GLsizei instanceCount) override
{
- DALI_LOG_ERROR( "glDrawElementsInstanced is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glDrawElementsInstanced is not supported in OpenGL es 2.0\n");
}
- GLsync FenceSync( GLenum condition, GLbitfield flags ) override
+ GLsync FenceSync(GLenum condition, GLbitfield flags) override
{
- DALI_LOG_ERROR( "glFenceSync is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glFenceSync is not supported in OpenGL es 2.0\n");
return NULL;
}
- GLboolean IsSync( GLsync sync ) override
+ GLboolean IsSync(GLsync sync) override
{
- DALI_LOG_ERROR( "glIsSync is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glIsSync is not supported in OpenGL es 2.0\n");
return 0;
}
- void DeleteSync( GLsync sync ) override
+ void DeleteSync(GLsync sync) override
{
- DALI_LOG_ERROR( "glDeleteSync is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glDeleteSync is not supported in OpenGL es 2.0\n");
}
- GLenum ClientWaitSync( GLsync sync, GLbitfield flags, GLuint64 timeout ) override
+ GLenum ClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout) override
{
- DALI_LOG_ERROR( "glClientWaitSync is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glClientWaitSync is not supported in OpenGL es 2.0\n");
return 0;
}
- void WaitSync( GLsync sync, GLbitfield flags, GLuint64 timeout ) override
+ void WaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout) override
{
- DALI_LOG_ERROR( "glWaitSync is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glWaitSync is not supported in OpenGL es 2.0\n");
}
- void GetInteger64v( GLenum pname, GLint64* params ) override
+ void GetInteger64v(GLenum pname, GLint64* params) override
{
- DALI_LOG_ERROR( "glGetInteger64v is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetInteger64v is not supported in OpenGL es 2.0\n");
}
- void GetSynciv( GLsync sync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values ) override
+ void GetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values) override
{
- DALI_LOG_ERROR( "glGetSynciv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetSynciv is not supported in OpenGL es 2.0\n");
}
- void GetInteger64i_v( GLenum target, GLuint index, GLint64* data ) override
+ void GetInteger64i_v(GLenum target, GLuint index, GLint64* data) override
{
- DALI_LOG_ERROR( "glGetInteger64i_v is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetInteger64i_v is not supported in OpenGL es 2.0\n");
}
- void GetBufferParameteri64v( GLenum target, GLenum pname, GLint64* params ) override
+ void GetBufferParameteri64v(GLenum target, GLenum pname, GLint64* params) override
{
- DALI_LOG_ERROR( "glGetBufferParameteri64v is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetBufferParameteri64v is not supported in OpenGL es 2.0\n");
}
- void GenSamplers( GLsizei count, GLuint* samplers ) override
+ void GenSamplers(GLsizei count, GLuint* samplers) override
{
- DALI_LOG_ERROR( "glGenSamplers is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGenSamplers is not supported in OpenGL es 2.0\n");
}
- void DeleteSamplers( GLsizei count, const GLuint* samplers ) override
+ void DeleteSamplers(GLsizei count, const GLuint* samplers) override
{
- DALI_LOG_ERROR( "glDeleteSamplers is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glDeleteSamplers is not supported in OpenGL es 2.0\n");
}
- GLboolean IsSampler( GLuint sampler ) override
+ GLboolean IsSampler(GLuint sampler) override
{
- DALI_LOG_ERROR( "glIsSampler is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glIsSampler is not supported in OpenGL es 2.0\n");
return 0;
}
- void BindSampler( GLuint unit, GLuint sampler ) override
+ void BindSampler(GLuint unit, GLuint sampler) override
{
- DALI_LOG_ERROR( "glBindSampler is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glBindSampler is not supported in OpenGL es 2.0\n");
}
- void SamplerParameteri( GLuint sampler, GLenum pname, GLint param ) override
+ void SamplerParameteri(GLuint sampler, GLenum pname, GLint param) override
{
- DALI_LOG_ERROR( "glSamplerParameteri is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glSamplerParameteri is not supported in OpenGL es 2.0\n");
}
- void SamplerParameteriv( GLuint sampler, GLenum pname, const GLint* param ) override
+ void SamplerParameteriv(GLuint sampler, GLenum pname, const GLint* param) override
{
- DALI_LOG_ERROR( "glSamplerParameteriv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glSamplerParameteriv is not supported in OpenGL es 2.0\n");
}
- void SamplerParameterf( GLuint sampler, GLenum pname, GLfloat param ) override
+ void SamplerParameterf(GLuint sampler, GLenum pname, GLfloat param) override
{
- DALI_LOG_ERROR( "glSamplerParameterf is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glSamplerParameterf is not supported in OpenGL es 2.0\n");
}
- void SamplerParameterfv( GLuint sampler, GLenum pname, const GLfloat* param ) override
+ void SamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat* param) override
{
- DALI_LOG_ERROR( "glSamplerParameterfv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glSamplerParameterfv is not supported in OpenGL es 2.0\n");
}
- void GetSamplerParameteriv( GLuint sampler, GLenum pname, GLint* params ) override
+ void GetSamplerParameteriv(GLuint sampler, GLenum pname, GLint* params) override
{
- DALI_LOG_ERROR( "glGetSamplerParameteriv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetSamplerParameteriv is not supported in OpenGL es 2.0\n");
}
- void GetSamplerParameterfv( GLuint sampler, GLenum pname, GLfloat* params ) override
+ void GetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat* params) override
{
- DALI_LOG_ERROR( "glGetSamplerParameterfv is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetSamplerParameterfv is not supported in OpenGL es 2.0\n");
}
- void VertexAttribDivisor( GLuint index, GLuint divisor ) override
+ void VertexAttribDivisor(GLuint index, GLuint divisor) override
{
- DALI_LOG_ERROR( "glVertexAttribDivisor is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glVertexAttribDivisor is not supported in OpenGL es 2.0\n");
}
- void BindTransformFeedback( GLenum target, GLuint id ) override
+ void BindTransformFeedback(GLenum target, GLuint id) override
{
- DALI_LOG_ERROR( "glBindTransformFeedback is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glBindTransformFeedback is not supported in OpenGL es 2.0\n");
}
- void DeleteTransformFeedbacks( GLsizei n, const GLuint* ids ) override
+ void DeleteTransformFeedbacks(GLsizei n, const GLuint* ids) override
{
- DALI_LOG_ERROR( "glDeleteTransformFeedbacks is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glDeleteTransformFeedbacks is not supported in OpenGL es 2.0\n");
}
- void GenTransformFeedbacks( GLsizei n, GLuint* ids ) override
+ void GenTransformFeedbacks(GLsizei n, GLuint* ids) override
{
- DALI_LOG_ERROR( "glGenTransformFeedbacks is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGenTransformFeedbacks is not supported in OpenGL es 2.0\n");
}
- GLboolean IsTransformFeedback( GLuint id ) override
+ GLboolean IsTransformFeedback(GLuint id) override
{
- DALI_LOG_ERROR( "glIsTransformFeedback is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glIsTransformFeedback is not supported in OpenGL es 2.0\n");
return 0;
}
- void PauseTransformFeedback( void ) override
+ void PauseTransformFeedback(void) override
{
- DALI_LOG_ERROR( "glPauseTransformFeedback is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glPauseTransformFeedback is not supported in OpenGL es 2.0\n");
}
- void ResumeTransformFeedback( void ) override
+ void ResumeTransformFeedback(void) override
{
- DALI_LOG_ERROR( "glResumeTransformFeedback is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glResumeTransformFeedback is not supported in OpenGL es 2.0\n");
}
- void GetProgramBinary( GLuint program, GLsizei bufSize, GLsizei* length, GLenum* binaryFormat, GLvoid* binary ) override
+ void GetProgramBinary(GLuint program, GLsizei bufSize, GLsizei* length, GLenum* binaryFormat, GLvoid* binary) override
{
- mGlExtensions.GetProgramBinaryOES( program, bufSize, length, binaryFormat, binary );
+ mGlExtensions.GetProgramBinaryOES(program, bufSize, length, binaryFormat, binary);
}
- void ProgramBinary( GLuint program, GLenum binaryFormat, const GLvoid* binary, GLsizei length ) override
+ void ProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid* binary, GLsizei length) override
{
- mGlExtensions.ProgramBinaryOES( program, binaryFormat, binary, length );
+ mGlExtensions.ProgramBinaryOES(program, binaryFormat, binary, length);
}
- void ProgramParameteri( GLuint program, GLenum pname, GLint value ) override
+ void ProgramParameteri(GLuint program, GLenum pname, GLint value) override
{
- DALI_LOG_ERROR( "glProgramParameteri is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glProgramParameteri is not supported in OpenGL es 2.0\n");
}
- void InvalidateFramebuffer( GLenum target, GLsizei numAttachments, const GLenum* attachments ) override
+ void InvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum* attachments) override
{
- mGlExtensions.DiscardFrameBuffer( target, numAttachments, attachments );
+ mGlExtensions.DiscardFrameBuffer(target, numAttachments, attachments);
}
- void InvalidateSubFramebuffer( GLenum target, GLsizei numAttachments, const GLenum* attachments, GLint x, GLint y, GLsizei width, GLsizei height ) override
+ void InvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum* attachments, GLint x, GLint y, GLsizei width, GLsizei height) override
{
- DALI_LOG_ERROR( "glInvalidateSubFramebuffer is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glInvalidateSubFramebuffer is not supported in OpenGL es 2.0\n");
}
- void TexStorage2D( GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height ) override
+ void TexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height) override
{
- DALI_LOG_ERROR( "glTexStorage2D is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glTexStorage2D is not supported in OpenGL es 2.0\n");
}
- void TexStorage3D( GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth ) override
+ void TexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth) override
{
- DALI_LOG_ERROR( "glTexStorage3D is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glTexStorage3D is not supported in OpenGL es 2.0\n");
}
- void GetInternalformativ( GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint* params ) override
+ void GetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint* params) override
{
- DALI_LOG_ERROR( "glGetInternalformativ is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("glGetInternalformativ is not supported in OpenGL es 2.0\n");
}
- void BlendBarrier( void ) override
+ void BlendBarrier(void) override
{
- DALI_LOG_ERROR( "BlendBarrier is not supported in OpenGL es 2.0\n" );
+ DALI_LOG_ERROR("BlendBarrier is not supported in OpenGL es 2.0\n");
}
private:
#define DALI_INTERNAL_GLES3_IMPLEMENTATION_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*
*/
- // EXTERNAL INCLUDES
+// EXTERNAL INCLUDES
#include <GLES3/gl3.h>
#include <GLES3/gl32.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class Gles3Implementation : public GlesAbstraction
{
-
public:
- Gles3Implementation() {}
+ Gles3Implementation()
+ {
+ }
- ~Gles3Implementation() override {}
+ ~Gles3Implementation() override
+ {
+ }
- void ReadBuffer( GLenum mode ) override
+ void ReadBuffer(GLenum mode) override
{
- glReadBuffer( mode );
+ glReadBuffer(mode);
}
- void DrawRangeElements( GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid* indices ) override
+ void DrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid* indices) override
{
- glDrawRangeElements( mode, start, end, count, type, indices );
+ glDrawRangeElements(mode, start, end, count, type, indices);
}
- void TexImage3D( GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels ) override
+ void TexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels) override
{
- glTexImage3D( target, level, internalformat, width, height, depth, border, format, type, pixels );
+ glTexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
}
- void TexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels ) override
+ void TexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels) override
{
- glTexSubImage3D( target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels );
+ glTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
}
- void CopyTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height ) override
+ void CopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height) override
{
- glCopyTexSubImage3D( target, level, xoffset, yoffset, zoffset, x, y, width, height );
+ glCopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
}
- void CompressedTexImage3D( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data ) override
+ void CompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data) override
{
- glCompressedTexImage3D( target, level, internalformat, width, height, depth, border, imageSize, data );
+ glCompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
}
- void CompressedTexSubImage3D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data ) override
+ void CompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data) override
{
- glCompressedTexSubImage3D( target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data );
+ glCompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
}
- void GenQueries( GLsizei n, GLuint* ids ) override
+ void GenQueries(GLsizei n, GLuint* ids) override
{
- glGenQueries( n, ids );
+ glGenQueries(n, ids);
}
- void DeleteQueries( GLsizei n, const GLuint* ids ) override
+ void DeleteQueries(GLsizei n, const GLuint* ids) override
{
- glDeleteQueries( n, ids );
+ glDeleteQueries(n, ids);
}
- GLboolean IsQuery( GLuint id ) override
+ GLboolean IsQuery(GLuint id) override
{
- return glIsQuery( id );
+ return glIsQuery(id);
}
- void BeginQuery( GLenum target, GLuint id ) override
+ void BeginQuery(GLenum target, GLuint id) override
{
- glBeginQuery( target, id );
+ glBeginQuery(target, id);
}
- void EndQuery( GLenum target ) override
+ void EndQuery(GLenum target) override
{
- glEndQuery( target );
+ glEndQuery(target);
}
- void GetQueryiv( GLenum target, GLenum pname, GLint* params ) override
+ void GetQueryiv(GLenum target, GLenum pname, GLint* params) override
{
- glGetQueryiv( target, pname, params );
+ glGetQueryiv(target, pname, params);
}
- void GetQueryObjectuiv( GLuint id, GLenum pname, GLuint* params ) override
+ void GetQueryObjectuiv(GLuint id, GLenum pname, GLuint* params) override
{
- glGetQueryObjectuiv( id, pname, params );
+ glGetQueryObjectuiv(id, pname, params);
}
- GLboolean UnmapBuffer( GLenum target ) override
+ GLboolean UnmapBuffer(GLenum target) override
{
- return glUnmapBuffer( target );
+ return glUnmapBuffer(target);
}
- void GetBufferPointerv( GLenum target, GLenum pname, GLvoid** params ) override
+ void GetBufferPointerv(GLenum target, GLenum pname, GLvoid** params) override
{
- glGetBufferPointerv( target, pname, params );
+ glGetBufferPointerv(target, pname, params);
}
- void DrawBuffers( GLsizei n, const GLenum* bufs ) override
+ void DrawBuffers(GLsizei n, const GLenum* bufs) override
{
- glDrawBuffers( n, bufs );
+ glDrawBuffers(n, bufs);
}
- void UniformMatrix2x3fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix2x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- glUniformMatrix2x3fv( location, count, transpose, value );
+ glUniformMatrix2x3fv(location, count, transpose, value);
}
- void UniformMatrix3x2fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix3x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- glUniformMatrix3x2fv( location, count, transpose, value );
+ glUniformMatrix3x2fv(location, count, transpose, value);
}
- void UniformMatrix2x4fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix2x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- glUniformMatrix2x4fv( location, count, transpose, value );
+ glUniformMatrix2x4fv(location, count, transpose, value);
}
- void UniformMatrix4x2fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix4x2fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- glUniformMatrix4x2fv( location, count, transpose, value );
+ glUniformMatrix4x2fv(location, count, transpose, value);
}
- void UniformMatrix3x4fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix3x4fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- glUniformMatrix3x4fv( location, count, transpose, value );
+ glUniformMatrix3x4fv(location, count, transpose, value);
}
- void UniformMatrix4x3fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ) override
+ void UniformMatrix4x3fv(GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) override
{
- glUniformMatrix4x3fv( location, count, transpose, value );
+ glUniformMatrix4x3fv(location, count, transpose, value);
}
- void BlitFramebuffer( GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter ) override
+ void BlitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter) override
{
- glBlitFramebuffer( srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter );
+ glBlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
}
- void RenderbufferStorageMultisample( GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height ) override
+ void RenderbufferStorageMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height) override
{
- glRenderbufferStorageMultisample( target, samples, internalformat, width, height );
+ glRenderbufferStorageMultisample(target, samples, internalformat, width, height);
}
- void FramebufferTextureLayer( GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer ) override
+ void FramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer) override
{
- glFramebufferTextureLayer( target, attachment, texture, level, layer );
+ glFramebufferTextureLayer(target, attachment, texture, level, layer);
}
- GLvoid* MapBufferRange( GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access ) override
+ GLvoid* MapBufferRange(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access) override
{
- return glMapBufferRange( target, offset, length, access );
+ return glMapBufferRange(target, offset, length, access);
}
- void FlushMappedBufferRange( GLenum target, GLintptr offset, GLsizeiptr length ) override
+ void FlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length) override
{
- glFlushMappedBufferRange( target, offset, length );
+ glFlushMappedBufferRange(target, offset, length);
}
- void BindVertexArray( GLuint array ) override
+ void BindVertexArray(GLuint array) override
{
- glBindVertexArray( array );
+ glBindVertexArray(array);
}
- void DeleteVertexArrays( GLsizei n, const GLuint* arrays ) override
+ void DeleteVertexArrays(GLsizei n, const GLuint* arrays) override
{
- glDeleteVertexArrays( n, arrays );
+ glDeleteVertexArrays(n, arrays);
}
- void GenVertexArrays( GLsizei n, GLuint* arrays ) override
+ void GenVertexArrays(GLsizei n, GLuint* arrays) override
{
- glGenVertexArrays( n, arrays );
+ glGenVertexArrays(n, arrays);
}
- GLboolean IsVertexArray( GLuint array ) override
+ GLboolean IsVertexArray(GLuint array) override
{
- return glIsVertexArray( array );
+ return glIsVertexArray(array);
}
- void GetIntegeri_v( GLenum target, GLuint index, GLint* data ) override
+ void GetIntegeri_v(GLenum target, GLuint index, GLint* data) override
{
- glGetIntegeri_v( target, index, data );
+ glGetIntegeri_v(target, index, data);
}
- void BeginTransformFeedback( GLenum primitiveMode ) override
+ void BeginTransformFeedback(GLenum primitiveMode) override
{
- glBeginTransformFeedback( primitiveMode );
+ glBeginTransformFeedback(primitiveMode);
}
- void EndTransformFeedback( void ) override
+ void EndTransformFeedback(void) override
{
glEndTransformFeedback();
}
- void BindBufferRange( GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size ) override
+ void BindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size) override
{
- glBindBufferRange( target, index, buffer, offset, size );
+ glBindBufferRange(target, index, buffer, offset, size);
}
- void BindBufferBase( GLenum target, GLuint index, GLuint buffer ) override
+ void BindBufferBase(GLenum target, GLuint index, GLuint buffer) override
{
- glBindBufferBase( target, index, buffer );
+ glBindBufferBase(target, index, buffer);
}
- void TransformFeedbackVaryings( GLuint program, GLsizei count, const GLchar* const* varyings, GLenum bufferMode ) override
+ void TransformFeedbackVaryings(GLuint program, GLsizei count, const GLchar* const* varyings, GLenum bufferMode) override
{
- glTransformFeedbackVaryings( program, count, varyings, bufferMode );
+ glTransformFeedbackVaryings(program, count, varyings, bufferMode);
}
- void GetTransformFeedbackVarying( GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei* size, GLenum* type, GLchar* name ) override
+ void GetTransformFeedbackVarying(GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei* size, GLenum* type, GLchar* name) override
{
- glGetTransformFeedbackVarying( program, index, bufSize, length, size, type, name );
+ glGetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
}
- void VertexAttribIPointer( GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid* pointer ) override
+ void VertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid* pointer) override
{
- glVertexAttribIPointer( index, size, type, stride, pointer );
+ glVertexAttribIPointer(index, size, type, stride, pointer);
}
- void GetVertexAttribIiv( GLuint index, GLenum pname, GLint* params ) override
+ void GetVertexAttribIiv(GLuint index, GLenum pname, GLint* params) override
{
- glGetVertexAttribIiv( index, pname, params );
+ glGetVertexAttribIiv(index, pname, params);
}
- void GetVertexAttribIuiv( GLuint index, GLenum pname, GLuint* params ) override
+ void GetVertexAttribIuiv(GLuint index, GLenum pname, GLuint* params) override
{
- glGetVertexAttribIuiv( index, pname, params );
+ glGetVertexAttribIuiv(index, pname, params);
}
- void VertexAttribI4i( GLuint index, GLint x, GLint y, GLint z, GLint w ) override
+ void VertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w) override
{
- glVertexAttribI4i( index, x, y, z, w );
+ glVertexAttribI4i(index, x, y, z, w);
}
- void VertexAttribI4ui( GLuint index, GLuint x, GLuint y, GLuint z, GLuint w ) override
+ void VertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w) override
{
- glVertexAttribI4ui( index, x, y, z, w );
+ glVertexAttribI4ui(index, x, y, z, w);
}
- void VertexAttribI4iv( GLuint index, const GLint* v ) override
+ void VertexAttribI4iv(GLuint index, const GLint* v) override
{
- glVertexAttribI4iv( index, v );
+ glVertexAttribI4iv(index, v);
}
- void VertexAttribI4uiv( GLuint index, const GLuint* v ) override
+ void VertexAttribI4uiv(GLuint index, const GLuint* v) override
{
- glVertexAttribI4uiv( index, v );
+ glVertexAttribI4uiv(index, v);
}
- void GetUniformuiv( GLuint program, GLint location, GLuint* params ) override
+ void GetUniformuiv(GLuint program, GLint location, GLuint* params) override
{
- glGetUniformuiv( program, location, params );
+ glGetUniformuiv(program, location, params);
}
- GLint GetFragDataLocation( GLuint program, const GLchar *name ) override
+ GLint GetFragDataLocation(GLuint program, const GLchar* name) override
{
- return glGetFragDataLocation( program, name );
+ return glGetFragDataLocation(program, name);
}
- void Uniform1ui( GLint location, GLuint v0 ) override
+ void Uniform1ui(GLint location, GLuint v0) override
{
- glUniform1ui( location, v0 );
+ glUniform1ui(location, v0);
}
- void Uniform2ui( GLint location, GLuint v0, GLuint v1 ) override
+ void Uniform2ui(GLint location, GLuint v0, GLuint v1) override
{
- glUniform2ui( location, v0, v1 );
+ glUniform2ui(location, v0, v1);
}
- void Uniform3ui( GLint location, GLuint v0, GLuint v1, GLuint v2 ) override
+ void Uniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2) override
{
- glUniform3ui( location, v0, v1, v2 );
+ glUniform3ui(location, v0, v1, v2);
}
- void Uniform4ui( GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3 ) override
+ void Uniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3) override
{
- glUniform4ui( location, v0, v1, v2, v3 );
+ glUniform4ui(location, v0, v1, v2, v3);
}
- void Uniform1uiv( GLint location, GLsizei count, const GLuint* value ) override
+ void Uniform1uiv(GLint location, GLsizei count, const GLuint* value) override
{
- glUniform1uiv( location, count, value );
+ glUniform1uiv(location, count, value);
}
- void Uniform2uiv( GLint location, GLsizei count, const GLuint* value ) override
+ void Uniform2uiv(GLint location, GLsizei count, const GLuint* value) override
{
- glUniform2uiv( location, count, value );
+ glUniform2uiv(location, count, value);
}
- void Uniform3uiv( GLint location, GLsizei count, const GLuint* value ) override
+ void Uniform3uiv(GLint location, GLsizei count, const GLuint* value) override
{
- glUniform3uiv( location, count, value );
+ glUniform3uiv(location, count, value);
}
- void Uniform4uiv( GLint location, GLsizei count, const GLuint* value ) override
+ void Uniform4uiv(GLint location, GLsizei count, const GLuint* value) override
{
- glUniform4uiv( location, count, value );
+ glUniform4uiv(location, count, value);
}
- void ClearBufferiv( GLenum buffer, GLint drawbuffer, const GLint* value ) override
+ void ClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint* value) override
{
- glClearBufferiv( buffer, drawbuffer, value );
+ glClearBufferiv(buffer, drawbuffer, value);
}
- void ClearBufferuiv( GLenum buffer, GLint drawbuffer, const GLuint* value ) override
+ void ClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint* value) override
{
- glClearBufferuiv( buffer, drawbuffer, value );
+ glClearBufferuiv(buffer, drawbuffer, value);
}
- void ClearBufferfv( GLenum buffer, GLint drawbuffer, const GLfloat* value ) override
+ void ClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat* value) override
{
- glClearBufferfv( buffer, drawbuffer, value );
+ glClearBufferfv(buffer, drawbuffer, value);
}
- void ClearBufferfi( GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil ) override
+ void ClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil) override
{
- glClearBufferfi( buffer, drawbuffer, depth, stencil );
+ glClearBufferfi(buffer, drawbuffer, depth, stencil);
}
- const GLubyte* GetStringi( GLenum name, GLuint index ) override
+ const GLubyte* GetStringi(GLenum name, GLuint index) override
{
- return glGetStringi( name, index );
+ return glGetStringi(name, index);
}
- void CopyBufferSubData( GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size ) override
+ void CopyBufferSubData(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size) override
{
- glCopyBufferSubData( readTarget, writeTarget, readOffset, writeOffset, size );
+ glCopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
}
- void GetUniformIndices( GLuint program, GLsizei uniformCount, const GLchar* const* uniformNames, GLuint* uniformIndices ) override
+ void GetUniformIndices(GLuint program, GLsizei uniformCount, const GLchar* const* uniformNames, GLuint* uniformIndices) override
{
- glGetUniformIndices( program, uniformCount, uniformNames, uniformIndices );
+ glGetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
}
- void GetActiveUniformsiv( GLuint program, GLsizei uniformCount, const GLuint* uniformIndices, GLenum pname, GLint* params ) override
+ void GetActiveUniformsiv(GLuint program, GLsizei uniformCount, const GLuint* uniformIndices, GLenum pname, GLint* params) override
{
- glGetActiveUniformsiv( program, uniformCount, uniformIndices, pname, params );
+ glGetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
}
- GLuint GetUniformBlockIndex( GLuint program, const GLchar* uniformBlockName ) override
+ GLuint GetUniformBlockIndex(GLuint program, const GLchar* uniformBlockName) override
{
- return glGetUniformBlockIndex( program, uniformBlockName );
+ return glGetUniformBlockIndex(program, uniformBlockName);
}
- void GetActiveUniformBlockiv( GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint* params ) override
+ void GetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint* params) override
{
- glGetActiveUniformBlockiv( program, uniformBlockIndex, pname, params );
+ glGetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
}
- void GetActiveUniformBlockName( GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei* length, GLchar* uniformBlockName ) override
+ void GetActiveUniformBlockName(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei* length, GLchar* uniformBlockName) override
{
- glGetActiveUniformBlockName( program, uniformBlockIndex, bufSize, length, uniformBlockName );
+ glGetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
}
- void UniformBlockBinding( GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding ) override
+ void UniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding) override
{
- glUniformBlockBinding( program, uniformBlockIndex, uniformBlockBinding );
+ glUniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
}
- void DrawArraysInstanced( GLenum mode, GLint first, GLsizei count, GLsizei instanceCount ) override
+ void DrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instanceCount) override
{
- glDrawArraysInstanced( mode, first, count, instanceCount );
+ glDrawArraysInstanced(mode, first, count, instanceCount);
}
- void DrawElementsInstanced( GLenum mode, GLsizei count, GLenum type, const GLvoid* indices, GLsizei instanceCount ) override
+ void DrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const GLvoid* indices, GLsizei instanceCount) override
{
- glDrawElementsInstanced( mode, count, type, indices, instanceCount );
+ glDrawElementsInstanced(mode, count, type, indices, instanceCount);
}
- GLsync FenceSync( GLenum condition, GLbitfield flags ) override
+ GLsync FenceSync(GLenum condition, GLbitfield flags) override
{
- return glFenceSync( condition, flags );
+ return glFenceSync(condition, flags);
}
- GLboolean IsSync( GLsync sync ) override
+ GLboolean IsSync(GLsync sync) override
{
- return glIsSync( sync );
+ return glIsSync(sync);
}
- void DeleteSync( GLsync sync ) override
+ void DeleteSync(GLsync sync) override
{
- glDeleteSync( sync );
+ glDeleteSync(sync);
}
- GLenum ClientWaitSync( GLsync sync, GLbitfield flags, GLuint64 timeout ) override
+ GLenum ClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout) override
{
- return glClientWaitSync( sync, flags, timeout );
+ return glClientWaitSync(sync, flags, timeout);
}
- void WaitSync( GLsync sync, GLbitfield flags, GLuint64 timeout ) override
+ void WaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout) override
{
- glWaitSync( sync, flags, timeout );
+ glWaitSync(sync, flags, timeout);
}
- void GetInteger64v( GLenum pname, GLint64* params ) override
+ void GetInteger64v(GLenum pname, GLint64* params) override
{
- glGetInteger64v( pname, params );
+ glGetInteger64v(pname, params);
}
- void GetSynciv( GLsync sync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values ) override
+ void GetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values) override
{
- glGetSynciv( sync, pname, bufSize, length, values );
+ glGetSynciv(sync, pname, bufSize, length, values);
}
- void GetInteger64i_v( GLenum target, GLuint index, GLint64* data ) override
+ void GetInteger64i_v(GLenum target, GLuint index, GLint64* data) override
{
- glGetInteger64i_v( target, index, data );
+ glGetInteger64i_v(target, index, data);
}
- void GetBufferParameteri64v( GLenum target, GLenum pname, GLint64* params ) override
+ void GetBufferParameteri64v(GLenum target, GLenum pname, GLint64* params) override
{
- glGetBufferParameteri64v( target, pname, params );
+ glGetBufferParameteri64v(target, pname, params);
}
- void GenSamplers( GLsizei count, GLuint* samplers ) override
+ void GenSamplers(GLsizei count, GLuint* samplers) override
{
- glGenSamplers( count, samplers );
+ glGenSamplers(count, samplers);
}
- void DeleteSamplers( GLsizei count, const GLuint* samplers ) override
+ void DeleteSamplers(GLsizei count, const GLuint* samplers) override
{
- glDeleteSamplers( count, samplers );
+ glDeleteSamplers(count, samplers);
}
- GLboolean IsSampler( GLuint sampler ) override
+ GLboolean IsSampler(GLuint sampler) override
{
- return glIsSampler( sampler );
+ return glIsSampler(sampler);
}
- void BindSampler( GLuint unit, GLuint sampler ) override
+ void BindSampler(GLuint unit, GLuint sampler) override
{
- glBindSampler( unit, sampler );
+ glBindSampler(unit, sampler);
}
- void SamplerParameteri( GLuint sampler, GLenum pname, GLint param ) override
+ void SamplerParameteri(GLuint sampler, GLenum pname, GLint param) override
{
- glSamplerParameteri( sampler, pname, param );
+ glSamplerParameteri(sampler, pname, param);
}
- void SamplerParameteriv( GLuint sampler, GLenum pname, const GLint* param ) override
+ void SamplerParameteriv(GLuint sampler, GLenum pname, const GLint* param) override
{
- glSamplerParameteriv( sampler, pname, param );
+ glSamplerParameteriv(sampler, pname, param);
}
- void SamplerParameterf( GLuint sampler, GLenum pname, GLfloat param ) override
+ void SamplerParameterf(GLuint sampler, GLenum pname, GLfloat param) override
{
- glSamplerParameterf( sampler, pname, param );
+ glSamplerParameterf(sampler, pname, param);
}
- void SamplerParameterfv( GLuint sampler, GLenum pname, const GLfloat* param ) override
+ void SamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat* param) override
{
- glSamplerParameterfv( sampler, pname, param );
+ glSamplerParameterfv(sampler, pname, param);
}
- void GetSamplerParameteriv( GLuint sampler, GLenum pname, GLint* params ) override
+ void GetSamplerParameteriv(GLuint sampler, GLenum pname, GLint* params) override
{
- glGetSamplerParameteriv( sampler, pname, params );
+ glGetSamplerParameteriv(sampler, pname, params);
}
- void GetSamplerParameterfv( GLuint sampler, GLenum pname, GLfloat* params ) override
+ void GetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat* params) override
{
- glGetSamplerParameterfv( sampler, pname, params );
+ glGetSamplerParameterfv(sampler, pname, params);
}
- void VertexAttribDivisor( GLuint index, GLuint divisor ) override
+ void VertexAttribDivisor(GLuint index, GLuint divisor) override
{
- glVertexAttribDivisor( index, divisor );
+ glVertexAttribDivisor(index, divisor);
}
- void BindTransformFeedback( GLenum target, GLuint id ) override
+ void BindTransformFeedback(GLenum target, GLuint id) override
{
- glBindTransformFeedback( target, id );
+ glBindTransformFeedback(target, id);
}
- void DeleteTransformFeedbacks( GLsizei n, const GLuint* ids ) override
+ void DeleteTransformFeedbacks(GLsizei n, const GLuint* ids) override
{
- glDeleteTransformFeedbacks( n, ids );
+ glDeleteTransformFeedbacks(n, ids);
}
- void GenTransformFeedbacks( GLsizei n, GLuint* ids ) override
+ void GenTransformFeedbacks(GLsizei n, GLuint* ids) override
{
- glGenTransformFeedbacks( n, ids );
+ glGenTransformFeedbacks(n, ids);
}
- GLboolean IsTransformFeedback( GLuint id ) override
+ GLboolean IsTransformFeedback(GLuint id) override
{
- return glIsTransformFeedback( id );
+ return glIsTransformFeedback(id);
}
- void PauseTransformFeedback( void ) override
+ void PauseTransformFeedback(void) override
{
glPauseTransformFeedback();
}
- void ResumeTransformFeedback( void ) override
+ void ResumeTransformFeedback(void) override
{
glResumeTransformFeedback();
}
- void GetProgramBinary( GLuint program, GLsizei bufSize, GLsizei* length, GLenum* binaryFormat, GLvoid* binary ) override
+ void GetProgramBinary(GLuint program, GLsizei bufSize, GLsizei* length, GLenum* binaryFormat, GLvoid* binary) override
{
- glGetProgramBinary( program, bufSize, length, binaryFormat, binary );
+ glGetProgramBinary(program, bufSize, length, binaryFormat, binary);
}
- void ProgramBinary( GLuint program, GLenum binaryFormat, const GLvoid* binary, GLsizei length ) override
+ void ProgramBinary(GLuint program, GLenum binaryFormat, const GLvoid* binary, GLsizei length) override
{
- glProgramBinary( program, binaryFormat, binary, length );
+ glProgramBinary(program, binaryFormat, binary, length);
}
- void ProgramParameteri( GLuint program, GLenum pname, GLint value ) override
+ void ProgramParameteri(GLuint program, GLenum pname, GLint value) override
{
- glProgramParameteri( program, pname, value );
+ glProgramParameteri(program, pname, value);
}
- void InvalidateFramebuffer( GLenum target, GLsizei numAttachments, const GLenum* attachments ) override
+ void InvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum* attachments) override
{
- glInvalidateFramebuffer( target, numAttachments, attachments );
+ glInvalidateFramebuffer(target, numAttachments, attachments);
}
- void InvalidateSubFramebuffer( GLenum target, GLsizei numAttachments, const GLenum* attachments, GLint x, GLint y, GLsizei width, GLsizei height ) override
+ void InvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum* attachments, GLint x, GLint y, GLsizei width, GLsizei height) override
{
- glInvalidateSubFramebuffer( target, numAttachments, attachments, x, y, width, height );
+ glInvalidateSubFramebuffer(target, numAttachments, attachments, x, y, width, height);
}
- void TexStorage2D( GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height ) override
+ void TexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height) override
{
- glTexStorage2D( target, levels, internalformat, width, height );
+ glTexStorage2D(target, levels, internalformat, width, height);
}
- void TexStorage3D( GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth ) override
+ void TexStorage3D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth) override
{
- glTexStorage3D( target, levels, internalformat, width, height, depth );
+ glTexStorage3D(target, levels, internalformat, width, height, depth);
}
- void GetInternalformativ( GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint* params ) override
+ void GetInternalformativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint* params) override
{
- glGetInternalformativ( target, internalformat, pname, bufSize, params );
+ glGetInternalformativ(target, internalformat, pname, bufSize, params);
}
- void BlendBarrier( void ) override
+ void BlendBarrier(void) override
{
if(!mGlExtensions.BlendBarrierKHR())
{
#define DALI_INTERNAL_FEEDBACK_PLAYER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <string>
#include <dali/public-api/object/base-object.h>
+#include <string>
// INTERNAL INCLUDES
#include <dali/devel-api/adaptor-framework/feedback-player.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class FeedbackPluginProxy;
/**
*/
class FeedbackPlayer : public Dali::BaseObject
{
-
public:
-
/**
* Create a FeedbackPlayer.
* This should only be called once by the Adaptor class.
/**
* @copydoc Dali::FeedbackPlayer::PlayFile()
*/
- void PlayFile( const std::string& filePath );
+ void PlayFile(const std::string& filePath);
/**
* @copydoc Dali::FeedbackPlayer::Stop()
/**
* @copydoc Dali::FeedbackPlayer::PlaySound()
*/
- int PlaySound( const std::string& fileName );
+ int PlaySound(const std::string& fileName);
/**
* @copydoc Dali::FeedbackPlayer::StopSound()
*/
- void StopSound( int handle );
+ void StopSound(int handle);
/**
* @copydoc Dali::FeedbackPlayer::PlayFeedbackPattern()
*/
- void PlayFeedbackPattern( int type, int pattern );
+ void PlayFeedbackPattern(int type, int pattern);
/**
* @copydoc Dali::FeedbackPlayer::LoadFile()
bool LoadFile(const std::string& filename, std::string& data);
private:
-
/**
* Private Constructor; see also FeedbackPlayer::New()
*/
FeedbackPlayer& operator=(FeedbackPlayer&);
private:
-
FeedbackPluginProxy mPlugin;
};
inline Internal::Adaptor::FeedbackPlayer& GetImplementation(Dali::FeedbackPlayer& player)
{
- DALI_ASSERT_ALWAYS( player && "FeedbackPlayer handle is empty" );
+ DALI_ASSERT_ALWAYS(player && "FeedbackPlayer handle is empty");
BaseObject& handle = player.GetBaseObject();
inline const Internal::Adaptor::FeedbackPlayer& GetImplementation(const Dali::FeedbackPlayer& player)
{
- DALI_ASSERT_ALWAYS( player && "FeedbackPlayer handle is empty" );
+ DALI_ASSERT_ALWAYS(player && "FeedbackPlayer handle is empty");
const BaseObject& handle = player.GetBaseObject();
#define DALI_INTERNAL_FEEDBACK_PLUGIN_PROXY_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
-typedef Dali::FeedbackPlugin::SoundStopCallBack SoundStopCallBack;
+typedef Dali::FeedbackPlugin::SoundStopCallBack SoundStopCallBack;
typedef Dali::FeedbackPlugin::CreateFeedbackPlugin CreateFeedbackPlugin;
/**
class FeedbackPluginProxy
{
public:
-
/**
* The default feedback plugin proxy.
*/
- static const char * const DEFAULT_OBJECT_NAME;
+ static const char* const DEFAULT_OBJECT_NAME;
public:
-
/**
* Constructor.
*/
- FeedbackPluginProxy( const std::string& sharedObjectName );
+ FeedbackPluginProxy(const std::string& sharedObjectName);
/**
* The destructor
/**
* @copydoc Dali::Integration::FeedbackPlugin::PlayHaptic()
*/
- void PlayHaptic( const std::string& filePath );
+ void PlayHaptic(const std::string& filePath);
/**
* @copydoc Dali::FeedbackPlugin::PlayHapticMonotone()
*/
- void PlayHapticMonotone( unsigned int duration );
+ void PlayHapticMonotone(unsigned int duration);
/**
* @copydoc Dali::FeedbackPlugin::StopHaptic()
/**
* @copydoc Dali::FeedbackPlugin::PlaySound()
*/
- int PlaySound( const std::string& fileName );
+ int PlaySound(const std::string& fileName);
/**
* @copydoc Dali::FeedbackPlugin::StopSound()
*/
- void StopSound( int handle );
+ void StopSound(int handle);
/**
* @copydoc Dali::FeedbackPlugin::PlayFeedbackPattern()
*/
- void PlayFeedbackPattern( int type, int pattern );
+ void PlayFeedbackPattern(int type, int pattern);
private:
-
/**
* Dynamically loads the feedback plugin.
*/
void Initialize();
private:
-
- bool mInitializeAttempted;
- void* mLibHandle;
- std::string mSharedObjectName;
+ bool mInitializeAttempted;
+ void* mLibHandle;
+ std::string mSharedObjectName;
CreateFeedbackPlugin* mCreatePluginFunctionPtr;
Dali::FeedbackPlugin* mFeedbackPlugin;
};
#define DALI_INTERNAL_NATIVE_IMAGE_SOURCE_FACTORY_ANDROID_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
class NativeImageSourceFactoryAndroid : public NativeImageSourceFactory
{
public:
+ std::unique_ptr<NativeImageSource> CreateNativeImageSource(uint32_t width, uint32_t height, Dali::NativeImageSource::ColorDepth depth, Any nativeImageSource) override;
- std::unique_ptr< NativeImageSource > CreateNativeImageSource( uint32_t width, uint32_t height,
- Dali::NativeImageSource::ColorDepth depth, Any nativeImageSource ) override;
-
- std::unique_ptr< NativeImageSourceQueue > CreateNativeImageSourceQueue( uint32_t width, uint32_t height,
- Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue ) override;
-
+ std::unique_ptr<NativeImageSourceQueue> CreateNativeImageSourceQueue(uint32_t width, uint32_t height, Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue) override;
};
-} // Adaptor
-} // Internal
-} // Dali
+} // namespace Adaptor
+} // namespace Internal
+} // namespace Dali
#endif // DALI_INTERNAL_NATIVE_IMAGE_SOURCE_FACTORY_ANDROID_H
#define DALI_INTERNAL_NATIVE_IMAGE_SOURCE_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
class EglImageExtensions;
class NativeImageSourceAndroid : public Internal::Adaptor::NativeImageSource
{
public:
-
/**
* Create a new NativeImageSource internally.
* Depending on hardware the width and height may have to be a power of two.
* @param[in] nativeImageSource contains either: Android hardware buffer or is empty
* @return A smart-pointer to a newly allocated image.
*/
- static NativeImageSourceAndroid* New( uint32_t width,
- uint32_t height,
- Dali::NativeImageSource::ColorDepth depth,
- Any nativeImageSource);
+ static NativeImageSourceAndroid* New(uint32_t width,
+ uint32_t height,
+ Dali::NativeImageSource::ColorDepth depth,
+ Any nativeImageSource);
/**
* @copydoc Dali::NativeImageSource::GetNativeImageSource()
*/
/**
* @copydoc Dali::NativeImageSource::GetPixels()
*/
- bool GetPixels(std::vector<unsigned char> &pixbuf, uint32_t &width, uint32_t &height, Pixel::Format& pixelFormat ) const override;
+ bool GetPixels(std::vector<unsigned char>& pixbuf, uint32_t& width, uint32_t& height, Pixel::Format& pixelFormat) const override;
/**
* @copydoc Dali::NativeImageSource::SetSource( Any source )
*/
- void SetSource( Any source ) override;
+ void SetSource(Any source) override;
/**
* @copydoc Dali::NativeImageSource::IsColorDepthSupported( ColorDepth colorDepth )
*/
- bool IsColorDepthSupported( Dali::NativeImageSource::ColorDepth colorDepth ) override;
+ bool IsColorDepthSupported(Dali::NativeImageSource::ColorDepth colorDepth) override;
/**
* destructor
/**
* @copydoc Dali::Internal::Adaptor::NativeImageSource::AcquireBuffer()
*/
- uint8_t* AcquireBuffer( uint16_t& width, uint16_t& height, uint16_t& stride ) override;
+ uint8_t* AcquireBuffer(uint16_t& width, uint16_t& height, uint16_t& stride) override;
/**
* @copydoc Dali::Internal::Adaptor::NativeImageSource::ReleaseBuffer()
bool ReleaseBuffer() override;
private:
-
/**
* Private constructor; @see NativeImageSource::New()
* @param[in] width The width of the image.
* @param[in] colour depth of the image.
* @param[in] nativeImageSource contains either: pixmap of type X11 Pixmap , a Ecore_X_Pixmap or is empty
*/
- NativeImageSourceAndroid( uint32_t width,
- uint32_t height,
- Dali::NativeImageSource::ColorDepth depth,
- Any nativeImageSource);
+ NativeImageSourceAndroid(uint32_t width,
+ uint32_t height,
+ Dali::NativeImageSource::ColorDepth depth,
+ Any nativeImageSource);
/**
* 2nd phase construction.
void GetPixmapDetails();
private:
-
- uint32_t mWidth; ///< image width
- uint32_t mHeight; ///< image heights
- bool mOwnPixmap; ///< Whether we created pixmap or not
- AHardwareBuffer* mPixmap; ///<
- bool mBlendingRequired; ///< Whether blending is required
- Dali::NativeImageSource::ColorDepth mColorDepth; ///< color depth of image
- void* mEglImageKHR; ///< From EGL extension
- EglImageExtensions* mEglImageExtensions; ///< The EGL Image Extensions
+ uint32_t mWidth; ///< image width
+ uint32_t mHeight; ///< image heights
+ bool mOwnPixmap; ///< Whether we created pixmap or not
+ AHardwareBuffer* mPixmap; ///<
+ bool mBlendingRequired; ///< Whether blending is required
+ Dali::NativeImageSource::ColorDepth mColorDepth; ///< color depth of image
+ void* mEglImageKHR; ///< From EGL extension
+ EglImageExtensions* mEglImageExtensions; ///< The EGL Image Extensions
};
} // namespace Adaptor
#define DALI_INTERNAL_NATIVE_IMAGE_SOURCE_QUEUE_IMPL_ANDROID_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class EglGraphics;
class EglImageExtensions;
/**
* Dali internal NativeImageSourceQueue.
*/
-class NativeImageSourceQueueAndroid: public Internal::Adaptor::NativeImageSourceQueue
+class NativeImageSourceQueueAndroid : public Internal::Adaptor::NativeImageSourceQueue
{
public:
-
/**
* Create a new NativeImageSourceQueueAndroid internally.
* Depending on hardware the width and height may have to be a power of two.
* @param[in] nativeImageSourceQueue contains tbm_surface_queue_h or is empty
* @return A smart-pointer to a newly allocated image.
*/
- static NativeImageSourceQueueAndroid* New( uint32_t width, uint32_t height, Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue );
+ static NativeImageSourceQueueAndroid* New(uint32_t width, uint32_t height, Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue);
/**
* @copydoc Dali::NativeImageSourceQueue::GetNativeImageSourceQueue()
/**
* @copydoc Dali::NativeImageSourceQueue::SetSize
*/
- void SetSize( uint32_t width, uint32_t height ) override;
+ void SetSize(uint32_t width, uint32_t height) override;
/**
* @copydoc Dali::NativeImageSourceQueue::IgnoreSourceImage
bool SourceChanged() const override;
private:
-
/**
* Private constructor; @see NativeImageSourceQueue::New()
* @param[in] width The width of the image.
* @param[in] colour depth of the image.
* @param[in] nativeImageSourceQueue contains tbm_surface_queue_h or is empty
*/
- NativeImageSourceQueueAndroid( uint32_t width, uint32_t height, Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue );
+ NativeImageSourceQueueAndroid(uint32_t width, uint32_t height, Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue);
private:
-
- uint32_t mWidth; ///< image width
- uint32_t mHeight; ///< image height
-
+ uint32_t mWidth; ///< image width
+ uint32_t mHeight; ///< image height
};
} // namespace Adaptor
#define DALI_INTERNAL_ADAPTOR_ALPHA_MASK_H
/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
/**
* Apply the mask to a buffer's alpha channel
* @param[in] buffer The buffer to apply the mask to
* @param[in] mask The mask to apply
*/
-void ApplyMaskToAlphaChannel( PixelBuffer& buffer, const PixelBuffer& mask );
+void ApplyMaskToAlphaChannel(PixelBuffer& buffer, const PixelBuffer& mask);
/**
* Create a new PixelBuffer with an alpha channel large enough to handle the alpha from
* @param[in] mask The mask to apply
* @return A new pixel buffer containing the masked image
*/
-PixelBufferPtr CreateNewMaskedBuffer( const PixelBuffer& buffer, const PixelBuffer& mask );
+PixelBufferPtr CreateNewMaskedBuffer(const PixelBuffer& buffer, const PixelBuffer& mask);
} //namespace Adaptor
} //namespace Internal
#define DALI_INTERNAL_ANIMATED_IMAGE_LOADING_IMPL_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
#include <dali/public-api/common/dali-vector.h>
+#include <dali/public-api/common/intrusive-ptr.h>
#include <dali/public-api/common/vector-wrapper.h>
#include <dali/public-api/math/uint-16-pair.h>
-#include <dali/public-api/common/intrusive-ptr.h>
#include <dali/public-api/object/base-object.h>
// INTERNAL INCLUDES
-#include <dali/public-api/dali-adaptor-common.h>
#include <dali/devel-api/adaptor-framework/animated-image-loading.h>
+#include <dali/public-api/dali-adaptor-common.h>
namespace Dali
{
namespace Internal
{
-
namespace Adaptor
{
-
class AnimatedImageLoading;
typedef IntrusivePtr<AnimatedImageLoading> AnimatedImageLoadingPtr;
class AnimatedImageLoading : public BaseObject
{
public:
-
/**
* @copydoc Dali::AnimatedImageLoading::New()
*/
- static AnimatedImageLoadingPtr New( const std::string& url, bool isLocalResource );
+ static AnimatedImageLoadingPtr New(const std::string& url, bool isLocalResource);
AnimatedImageLoading() = default;
// Moveable but not copyable
- AnimatedImageLoading( const AnimatedImageLoading& );
- AnimatedImageLoading& operator=( const AnimatedImageLoading& );
- AnimatedImageLoading( AnimatedImageLoading&& ) = default;
- AnimatedImageLoading& operator=( AnimatedImageLoading&& ) = default;
+ AnimatedImageLoading(const AnimatedImageLoading&);
+ AnimatedImageLoading& operator =(const AnimatedImageLoading&);
+ AnimatedImageLoading(AnimatedImageLoading&&) = default;
+ AnimatedImageLoading& operator=(AnimatedImageLoading&&) = default;
/**
* @brief Destructor
/**
* @copydoc Dali::AnimatedImageLoading::LoadNextNFrames()
*/
- virtual bool LoadNextNFrames( uint32_t frameStartIndex, int count, std::vector<Dali::PixelData>& pixelData ) = 0;
+ virtual bool LoadNextNFrames(uint32_t frameStartIndex, int count, std::vector<Dali::PixelData>& pixelData) = 0;
/**
* @copydoc Dali::AnimatedImageLoading::LoadFrame()
*/
- virtual Dali::Devel::PixelBuffer LoadFrame( uint32_t frameIndex ) = 0;
+ virtual Dali::Devel::PixelBuffer LoadFrame(uint32_t frameIndex) = 0;
/**
* @copydoc Dali::AnimatedImageLoading::GetImageSize()
/**
* @copydoc Dali::AnimatedImageLoading::LoadFrameDelays()
*/
- virtual uint32_t GetFrameInterval( uint32_t frameIndex ) const = 0;
+ virtual uint32_t GetFrameInterval(uint32_t frameIndex) const = 0;
/**
* @copydoc Dali::AnimatedImageLoading::GetUrl()
// Helpers for api forwarding methods
-inline Internal::Adaptor::AnimatedImageLoading& GetImplementation( Dali::AnimatedImageLoading& handle)
+inline Internal::Adaptor::AnimatedImageLoading& GetImplementation(Dali::AnimatedImageLoading& handle)
{
- DALI_ASSERT_ALWAYS( handle && "AnimatedImageLoading handle is empty" );
+ DALI_ASSERT_ALWAYS(handle && "AnimatedImageLoading handle is empty");
BaseObject& object = handle.GetBaseObject();
- return static_cast< Internal::Adaptor::AnimatedImageLoading& >( object );
+ return static_cast<Internal::Adaptor::AnimatedImageLoading&>(object);
}
-inline const Internal::Adaptor::AnimatedImageLoading& GetImplementation( const Dali::AnimatedImageLoading& handle )
+inline const Internal::Adaptor::AnimatedImageLoading& GetImplementation(const Dali::AnimatedImageLoading& handle)
{
- DALI_ASSERT_ALWAYS( handle && "AnimatedImageLoading handle is empty" );
+ DALI_ASSERT_ALWAYS(handle && "AnimatedImageLoading handle is empty");
const BaseObject& object = handle.GetBaseObject();
- return static_cast< const Internal::Adaptor::AnimatedImageLoading& >( object );
+ return static_cast<const Internal::Adaptor::AnimatedImageLoading&>(object);
}
} // namespace Dali
#define DALI_TIZEN_PLATFORM_NETWORK_FILE_DOWNLOAD_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
// EXTERNAL INCLUDES
#include <dali/public-api/common/dali-vector.h>
-#include <string>
-#include <mutex> //c++11
#include <stdint.h> // uint8
+#include <mutex> //c++11
+#include <string>
namespace Dali
{
-
namespace TizenPlatform
{
-
namespace Network
{
-
/**
* Set up the cURL environment - this will ensure curl_global_init is called on startup
* and curl_global_cleanup is called on shutdown.
// Moveable but not copyable
- CurlEnvironment( const CurlEnvironment& ) = delete;
- CurlEnvironment& operator=( const CurlEnvironment& ) = delete;
- CurlEnvironment( CurlEnvironment&& ) = default;
- CurlEnvironment& operator=( CurlEnvironment&& ) = default;
+ CurlEnvironment(const CurlEnvironment&) = delete;
+ CurlEnvironment& operator=(const CurlEnvironment&) = delete;
+ CurlEnvironment(CurlEnvironment&&) = default;
+ CurlEnvironment& operator=(CurlEnvironment&&) = default;
};
-
/**
* Download a requested file into a memory buffer.
*
* @return true on success, false on failure
*
*/
-bool DownloadRemoteFileIntoMemory( const std::string& url,
- Dali::Vector<uint8_t>& dataBuffer,
- size_t& dataSize,
- size_t maximumAllowedSizeBytes );
+bool DownloadRemoteFileIntoMemory(const std::string& url,
+ Dali::Vector<uint8_t>& dataBuffer,
+ size_t& dataSize,
+ size_t maximumAllowedSizeBytes);
} // namespace Network
#define DALI_INTERNAL_ADAPTOR_GAUSSIAN_BLUR_H
/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Perform a one dimension Gaussian blur convolution and write its output buffer transposed.
*
* @param[in] bufferHeight The height of the buffer
* @param[in] blurRadius The radius for Gaussian blur
*/
-void ConvoluteAndTranspose( unsigned char* inBuffer, unsigned char* outBuffer, const unsigned int bufferWidth, const unsigned int bufferHeight, const float blurRadius );
+void ConvoluteAndTranspose(unsigned char* inBuffer, unsigned char* outBuffer, const unsigned int bufferWidth, const unsigned int bufferHeight, const float blurRadius);
/**
* Perform Gaussian blur on a buffer.
* @param[in] buffer The buffer to apply the Gaussian blur to
* @param[in] blurRadius The radius for Gaussian blur
*/
-void PerformGaussianBlurRGBA( PixelBuffer& buffer, const float blurRadius );
+void PerformGaussianBlurRGBA(PixelBuffer& buffer, const float blurRadius);
} //namespace Adaptor
#define DALI_INTERNAL_GIF_LOADING_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*
*/
// EXTERNAL INCLUDES
-#include <cstdint>
-#include <memory>
-#include <dali/public-api/math/rect.h>
#include <dali/public-api/common/dali-vector.h>
#include <dali/public-api/common/vector-wrapper.h>
+#include <dali/public-api/math/rect.h>
#include <dali/public-api/math/uint-16-pair.h>
+#include <cstdint>
+#include <memory>
// INTERNAL INCLUDES
-#include <dali/public-api/dali-adaptor-common.h>
#include <dali/internal/imaging/common/animated-image-loading-impl.h>
+#include <dali/public-api/dali-adaptor-common.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Class to manage loading frames of an animated gif in small chunks. Lazy initializes only when
* data is actually needed.
* is released. (This is to speed up frame loads, which would otherwise have to re-acquire the
* data from disk)
*/
-class GifLoading: public Internal::Adaptor::AnimatedImageLoading
+class GifLoading : public Internal::Adaptor::AnimatedImageLoading
{
public:
-
/**
* Create a GifLoading with the given url and resourceType.
* @param[in] url The url of the gif image to load
* @param[in] isLocalResource The true or false whether this is a local resource.
* @return A newly created GifLoading.
*/
- static AnimatedImageLoadingPtr New( const std::string& url, bool isLocalResource );
+ static AnimatedImageLoadingPtr New(const std::string& url, bool isLocalResource);
/**
* @brief Constructor
* @param[in] url The url of the gif image to load
* @param[in] isLocalResource The true or false whether this is a local resource.
*/
- GifLoading( const std::string& url, bool isLocalResource );
+ GifLoading(const std::string& url, bool isLocalResource);
/**
* @brief Destructor
* @param[out] pixelData The vector in which to return the frame data
* @return True if the frame data was successfully loaded
*/
- bool LoadNextNFrames( uint32_t frameStartIndex, int count, std::vector<Dali::PixelData>& pixelData ) override;
+ bool LoadNextNFrames(uint32_t frameStartIndex, int count, std::vector<Dali::PixelData>& pixelData) override;
- /**
+ /**
* @brief Load the next Frame of the animated image.
*
* @note This function will load the entire animated image into memory if not already loaded.
* @return Dali::Devel::PixelBuffer The loaded PixelBuffer. If loading is fail, return empty handle.
*/
- Dali::Devel::PixelBuffer LoadFrame( uint32_t frameIndex ) override;
+ Dali::Devel::PixelBuffer LoadFrame(uint32_t frameIndex) override;
/**
* @brief Get the size of a gif image.
*
* @return The time interval of the frame(microsecond).
*/
- uint32_t GetFrameInterval( uint32_t frameIndex ) const override;
+ uint32_t GetFrameInterval(uint32_t frameIndex) const override;
/**
* @brief Get the animated image file URL
#define DALI_TIZEN_PLATFORM_NETWORK_UTILS_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace TizenPlatform
{
-
namespace Network
{
-
/**
* @brief Tests if a string starts with either http:// or https://
* @param[in] path string
* @return true if the path is a http url
*/
-bool IsHttpUrl( const std::string& path );
+bool IsHttpUrl(const std::string& path);
-} // Network
+} // namespace Network
} // namespace TizenPlatform
#define DALI_INTERNAL_IMAGE_LOADING_PLUGIN_PROXY_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
namespace ImageLoaderPluginProxy
{
+using CreateImageLoaderPlugin = Dali::ImageLoaderPlugin::CreateImageLoaderPlugin;
+using DestroyImageLoaderPlugin = Dali::ImageLoaderPlugin::DestroyImageLoaderPlugin;
- using CreateImageLoaderPlugin = Dali::ImageLoaderPlugin::CreateImageLoaderPlugin;
- using DestroyImageLoaderPlugin = Dali::ImageLoaderPlugin::DestroyImageLoaderPlugin;
-
-
- /**
+/**
* @brief Initialize
*/
- void Initialize();
-
+void Initialize();
- /**
+/**
* @brief Destroy
*/
- void Destroy();
+void Destroy();
- /**
+/**
* @brief BitmapLoaderLookup
*/
- const ImageLoader::BitmapLoader* BitmapLoaderLookup( const std::string& filename );
-
+const ImageLoader::BitmapLoader* BitmapLoaderLookup(const std::string& filename);
} // namespace ImageLoaderPluginProxy
#define DALI_TIZEN_PLATFORM_IMAGE_LOADER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <dali/public-api/images/image-operations.h>
-#include <dali/integration-api/resource-types.h>
+#include <dali/devel-api/adaptor-framework/pixel-buffer.h>
#include <dali/integration-api/bitmap.h>
+#include <dali/integration-api/resource-types.h>
+#include <dali/public-api/images/image-operations.h>
#include <dali/public-api/images/pixel-data.h>
-#include <dali/devel-api/adaptor-framework/pixel-buffer.h>
#include <string>
namespace Dali
namespace Integration
{
typedef IntrusivePtr<Dali::RefObject> ResourcePointer;
-} // Integration
+} // namespace Integration
namespace TizenPlatform
{
* @param[out] bitmap Pointer to write bitmap to
* @return true on success, false on failure
*/
-bool ConvertStreamToBitmap( const Integration::BitmapResourceType& resource, std::string path, FILE * const fp, Dali::Devel::PixelBuffer& pixelBuffer );
+bool ConvertStreamToBitmap(const Integration::BitmapResourceType& resource, std::string path, FILE* const fp, Dali::Devel::PixelBuffer& pixelBuffer);
/**
* Convert a bitmap and write to a file stream.
* @param[out] pixelData Reference to PixelData object.
* @return true on success, false on failure
*/
-bool ConvertBitmapToStream( std::string path, FILE * const fp, Dali::Devel::PixelBuffer& pixelBuffer );
+bool ConvertBitmapToStream(std::string path, FILE* const fp, Dali::Devel::PixelBuffer& pixelBuffer);
/**
* Loads an image synchronously
* @param path to the image
* @return bitmap
*/
-Integration::ResourcePointer LoadImageSynchronously( const Integration::BitmapResourceType& resource, const std::string& path );
+Integration::ResourcePointer LoadImageSynchronously(const Integration::BitmapResourceType& resource, const std::string& path);
/**
* @returns the closest image size
*/
-ImageDimensions GetClosestImageSize( const std::string& filename,
- ImageDimensions size,
- FittingMode::Type fittingMode,
- SamplingMode::Type samplingMode,
- bool orientationCorrection );
+ImageDimensions GetClosestImageSize(const std::string& filename,
+ ImageDimensions size,
+ FittingMode::Type fittingMode,
+ SamplingMode::Type samplingMode,
+ bool orientationCorrection);
/**
* @returns the closest image size
*/
-ImageDimensions GetClosestImageSize( Integration::ResourcePointer resourceBuffer,
- ImageDimensions size,
- FittingMode::Type fittingMode,
- SamplingMode::Type samplingMode,
- bool orientationCorrection );
+ImageDimensions GetClosestImageSize(Integration::ResourcePointer resourceBuffer,
+ ImageDimensions size,
+ FittingMode::Type fittingMode,
+ SamplingMode::Type samplingMode,
+ bool orientationCorrection);
/**
* @brief Set the maximum texture size. Then size can be kwown by GL_MAX_TEXTURE_SIZE.
*
* @param [in] size The maximum texture size to set
*/
-void SetMaxTextureSize( unsigned int size );
+void SetMaxTextureSize(unsigned int size);
/**
* @brief Get the maximum texture size.
*/
bool MaxTextureSizeUpdated();
-} // ImageLoader
-} // TizenPlatform
-} // Dali
+} // namespace ImageLoader
+} // namespace TizenPlatform
+} // namespace Dali
#endif // DALI_TIZEN_PLATFORM_IMAGE_LOADER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <stdint.h>
// INTERNAL INCLUDES
+#include <dali/devel-api/adaptor-framework/pixel-buffer.h>
#include <dali/integration-api/bitmap.h>
#include <dali/public-api/images/image-operations.h>
#include <third-party/resampler/resampler.h>
-#include <dali/devel-api/adaptor-framework/pixel-buffer.h>
namespace Dali
{
{
namespace Platform
{
-
/**
* @brief Identify which combination of x and y dimensions matter in terminating iterative box filtering.
*/
* @param[in] requestedDimensions Width and height of area to scale image into. Can be zero.
* @return Dimensions of area to scale image into after special rules are applied.
*/
-ImageDimensions CalculateDesiredDimensions( ImageDimensions rawDimensions, ImageDimensions requestedDimensions );
+ImageDimensions CalculateDesiredDimensions(ImageDimensions rawDimensions, ImageDimensions requestedDimensions);
/**
* @defgroup BitmapOperations Bitmap-to-Bitmap Image operations.
* bitmap passed-in, or the original bitmap passed in if the attributes
* have no effect.
*/
-Dali::Devel::PixelBuffer ApplyAttributesToBitmap( Dali::Devel::PixelBuffer bitmap, ImageDimensions dimensions, FittingMode::Type fittingMode = FittingMode::DEFAULT, SamplingMode::Type samplingMode = SamplingMode::DEFAULT );
+Dali::Devel::PixelBuffer ApplyAttributesToBitmap(Dali::Devel::PixelBuffer bitmap, ImageDimensions dimensions, FittingMode::Type fittingMode = FittingMode::DEFAULT, SamplingMode::Type samplingMode = SamplingMode::DEFAULT);
/**
* @brief Apply downscaling to a bitmap according to requested attributes.
* @note The input bitmap pixel buffer may be modified and used as scratch working space for efficiency, so it must be discarded.
**/
-Dali::Devel::PixelBuffer DownscaleBitmap( Dali::Devel::PixelBuffer bitmap,
- ImageDimensions desired,
- FittingMode::Type fittingMode,
- SamplingMode::Type samplingMode );
+Dali::Devel::PixelBuffer DownscaleBitmap(Dali::Devel::PixelBuffer bitmap,
+ ImageDimensions desired,
+ FittingMode::Type fittingMode,
+ SamplingMode::Type samplingMode);
/**@}*/
/**
* @param[out] outWidth The resulting width after downscaling.
* @param[out] outHeight The resulting height after downscaling.
*/
-void DownscaleInPlacePow2( unsigned char * const pixels,
- Pixel::Format pixelFormat,
- unsigned int inputWidth,
- unsigned int inputHeight,
- unsigned int desiredWidth,
- unsigned int desiredHeight,
- FittingMode::Type fittingMode,
- SamplingMode::Type samplingMode,
- unsigned& outWidth,
- unsigned& outHeight );
+void DownscaleInPlacePow2(unsigned char* const pixels,
+ Pixel::Format pixelFormat,
+ unsigned int inputWidth,
+ unsigned int inputHeight,
+ unsigned int desiredWidth,
+ unsigned int desiredHeight,
+ FittingMode::Type fittingMode,
+ SamplingMode::Type samplingMode,
+ unsigned& outWidth,
+ unsigned& outHeight);
/**
* @brief Destructive in-place downscaling by a power of 2 factor.
* @param[out] outWidth The resulting width after downscaling.
* @param[out] outHeight The resulting height after downscaling.
*/
-void DownscaleInPlacePow2RGB888( unsigned char * pixels,
- unsigned int inputWidth,
- unsigned int inputHeight,
- unsigned int desiredWidth,
- unsigned int desiredHeight,
- BoxDimensionTest dimensionTest,
- unsigned int& outWidth,
- unsigned int& outHeight );
+void DownscaleInPlacePow2RGB888(unsigned char* pixels,
+ unsigned int inputWidth,
+ unsigned int inputHeight,
+ unsigned int desiredWidth,
+ unsigned int desiredHeight,
+ BoxDimensionTest dimensionTest,
+ unsigned int& outWidth,
+ unsigned int& outHeight);
/**
* @copydoc DownscaleInPlacePow2RGB888
*/
-void DownscaleInPlacePow2RGBA8888( unsigned char * pixels,
- unsigned int inputWidth,
- unsigned int inputHeight,
- unsigned int desiredWidth,
- unsigned int desiredHeight,
- BoxDimensionTest dimensionTest,
- unsigned int& outWidth,
- unsigned int& outHeight );
+void DownscaleInPlacePow2RGBA8888(unsigned char* pixels,
+ unsigned int inputWidth,
+ unsigned int inputHeight,
+ unsigned int desiredWidth,
+ unsigned int desiredHeight,
+ BoxDimensionTest dimensionTest,
+ unsigned int& outWidth,
+ unsigned int& outHeight);
/**
* @copydoc DownscaleInPlacePow2RGB888
*
* For the 2-byte packed 16 bit format RGB565.
*/
-void DownscaleInPlacePow2RGB565( unsigned char * pixels,
- unsigned int inputWidth,
- unsigned int inputHeight,
- unsigned int desiredWidth,
- unsigned int desiredHeight,
- BoxDimensionTest dimensionTest,
- unsigned int& outWidth,
- unsigned int& outHeight );
+void DownscaleInPlacePow2RGB565(unsigned char* pixels,
+ unsigned int inputWidth,
+ unsigned int inputHeight,
+ unsigned int desiredWidth,
+ unsigned int desiredHeight,
+ BoxDimensionTest dimensionTest,
+ unsigned int& outWidth,
+ unsigned int& outHeight);
/**
* @copydoc DownscaleInPlacePow2RGB888
*
* For 2-byte formats such as lum8alpha8, but not packed 16 bit formats like RGB565.
*/
-void DownscaleInPlacePow2ComponentPair( unsigned char * pixels,
- unsigned int inputWidth,
- unsigned int inputHeight,
- unsigned int desiredWidth,
- unsigned int desiredHeight,
- BoxDimensionTest dimensionTest,
- unsigned int& outWidth,
- unsigned int& outHeight );
+void DownscaleInPlacePow2ComponentPair(unsigned char* pixels,
+ unsigned int inputWidth,
+ unsigned int inputHeight,
+ unsigned int desiredWidth,
+ unsigned int desiredHeight,
+ BoxDimensionTest dimensionTest,
+ unsigned int& outWidth,
+ unsigned int& outHeight);
/**
* @copydoc DownscaleInPlacePow2RGB888
*
* For single-byte formats such as lum8 or alpha8.
*/
-void DownscaleInPlacePow2SingleBytePerPixel( unsigned char * pixels,
- unsigned int inputWidth,
- unsigned int inputHeight,
- unsigned int desiredWidth,
- unsigned int desiredHeight,
- BoxDimensionTest dimensionTest,
- unsigned int& outWidth,
- unsigned int& outHeight );
+void DownscaleInPlacePow2SingleBytePerPixel(unsigned char* pixels,
+ unsigned int inputWidth,
+ unsigned int inputHeight,
+ unsigned int desiredWidth,
+ unsigned int desiredHeight,
+ BoxDimensionTest dimensionTest,
+ unsigned int& outWidth,
+ unsigned int& outHeight);
/**
* @brief Rescales an input image into the exact output dimensions passed-in.
* @note inPixels is allowed to alias outPixels if this is a downscaling,
* but not for upscaling.
*/
-void PointSample( const unsigned char * inPixels,
- unsigned int inputWidth,
- unsigned int inputHeight,
- Pixel::Format pixelFormat,
- unsigned char * outPixels,
- unsigned int desiredWidth,
- unsigned int desiredHeight );
+void PointSample(const unsigned char* inPixels,
+ unsigned int inputWidth,
+ unsigned int inputHeight,
+ Pixel::Format pixelFormat,
+ unsigned char* outPixels,
+ unsigned int desiredWidth,
+ unsigned int desiredHeight);
/**
* @copydoc PointSample
*
* Specialised for 4-byte formats like RGBA8888 and BGRA8888.
*/
-void PointSample4BPP( const unsigned char * inPixels,
- unsigned int inputWidth,
- unsigned int inputHeight,
- unsigned char * outPixels,
- unsigned int desiredWidth,
- unsigned int desiredHeight );
+void PointSample4BPP(const unsigned char* inPixels,
+ unsigned int inputWidth,
+ unsigned int inputHeight,
+ unsigned char* outPixels,
+ unsigned int desiredWidth,
+ unsigned int desiredHeight);
/**
* @copydoc PointSample
*
* Specialised for 3-byte formats like RGB888 and BGR888.
*/
-void PointSample3BPP( const unsigned char * inPixels,
- unsigned int inputWidth,
- unsigned int inputHeight,
- unsigned char * outPixels,
- unsigned int desiredWidth,
- unsigned int desiredHeight );
+void PointSample3BPP(const unsigned char* inPixels,
+ unsigned int inputWidth,
+ unsigned int inputHeight,
+ unsigned char* outPixels,
+ unsigned int desiredWidth,
+ unsigned int desiredHeight);
/**
* @copydoc PointSample
*
* Specialised for 2-byte formats like LA88.
*/
-void PointSample2BPP( const unsigned char * inPixels,
- unsigned int inputWidth,
- unsigned int inputHeight,
- unsigned char * outPixels,
- unsigned int desiredWidth,
- unsigned int desiredHeight );
+void PointSample2BPP(const unsigned char* inPixels,
+ unsigned int inputWidth,
+ unsigned int inputHeight,
+ unsigned char* outPixels,
+ unsigned int desiredWidth,
+ unsigned int desiredHeight);
/**
* @copydoc PointSample
*
* Specialised for 1-byte formats like L8 and A8.
*/
-void PointSample1BPP( const unsigned char * inPixels,
- unsigned int inputWidth,
- unsigned int inputHeight,
- unsigned char * outPixels,
- unsigned int desiredWidth,
- unsigned int desiredHeight );
+void PointSample1BPP(const unsigned char* inPixels,
+ unsigned int inputWidth,
+ unsigned int inputHeight,
+ unsigned char* outPixels,
+ unsigned int desiredWidth,
+ unsigned int desiredHeight);
/**
* @brief Resample input image to output image using a bilinear filter.
* @pre inPixels must not alias outPixels. The input image should be a totally
* separate buffer from the input one.
*/
-void LinearSample( const unsigned char * __restrict__ inPixels,
- ImageDimensions inDimensions,
- Pixel::Format pixelFormat,
- unsigned char * __restrict__ outPixels,
- ImageDimensions outDimensions );
+void LinearSample(const unsigned char* __restrict__ inPixels,
+ ImageDimensions inDimensions,
+ Pixel::Format pixelFormat,
+ unsigned char* __restrict__ outPixels,
+ ImageDimensions outDimensions);
/**
* @copydoc LinearSample
*
* Specialised for one byte per pixel formats.
*/
-void LinearSample1BPP( const unsigned char * __restrict__ inPixels,
- ImageDimensions inputDimensions,
- unsigned char * __restrict__ outPixels,
- ImageDimensions desiredDimensions );
+void LinearSample1BPP(const unsigned char* __restrict__ inPixels,
+ ImageDimensions inputDimensions,
+ unsigned char* __restrict__ outPixels,
+ ImageDimensions desiredDimensions);
/**
* @copydoc LinearSample
*
* Specialised for two byte per pixel formats.
*/
-void LinearSample2BPP( const unsigned char * __restrict__ inPixels,
- ImageDimensions inputDimensions,
- unsigned char * __restrict__ outPixels,
- ImageDimensions desiredDimensions );
+void LinearSample2BPP(const unsigned char* __restrict__ inPixels,
+ ImageDimensions inputDimensions,
+ unsigned char* __restrict__ outPixels,
+ ImageDimensions desiredDimensions);
/**
* @copydoc LinearSample
*
* Specialised for RGB565 16 bit pixel format.
*/
-void LinearSampleRGB565( const unsigned char * __restrict__ inPixels,
- ImageDimensions inputDimensions,
- unsigned char * __restrict__ outPixels,
- ImageDimensions desiredDimensions );
+void LinearSampleRGB565(const unsigned char* __restrict__ inPixels,
+ ImageDimensions inputDimensions,
+ unsigned char* __restrict__ outPixels,
+ ImageDimensions desiredDimensions);
/**
* @copydoc LinearSample
*
* Specialised for three byte per pixel formats like RGB888.
*/
-void LinearSample3BPP( const unsigned char * __restrict__ inPixels,
- ImageDimensions inputDimensions,
- unsigned char * __restrict__ outPixels,
- ImageDimensions desiredDimensions );
+void LinearSample3BPP(const unsigned char* __restrict__ inPixels,
+ ImageDimensions inputDimensions,
+ unsigned char* __restrict__ outPixels,
+ ImageDimensions desiredDimensions);
/**
* @copydoc LinearSample
* Specialised for four byte per pixel formats like RGBA8888.
* @note, If used on RGBA8888, the A component will be blended independently.
*/
-void LinearSample4BPP( const unsigned char * __restrict__ inPixels,
- ImageDimensions inputDimensions,
- unsigned char * __restrict__ outPixels,
- ImageDimensions desiredDimensions );
+void LinearSample4BPP(const unsigned char* __restrict__ inPixels,
+ ImageDimensions inputDimensions,
+ unsigned char* __restrict__ outPixels,
+ ImageDimensions desiredDimensions);
/**
* @brief Resamples the input image with the Lanczos algorithm.
* @param[out] outPixels Pointer to the output image buffer.
* @param[in] desiredDimensions The output dimensions of the image.
*/
-void LanczosSample4BPP( const unsigned char * __restrict__ inPixels,
- ImageDimensions inputDimensions,
- unsigned char * __restrict__ outPixels,
- ImageDimensions desiredDimensions );
+void LanczosSample4BPP(const unsigned char* __restrict__ inPixels,
+ ImageDimensions inputDimensions,
+ unsigned char* __restrict__ outPixels,
+ ImageDimensions desiredDimensions);
/**
* @brief Resamples the input image with the Lanczos algorithm.
* @param[out] outPixels Pointer to the output image buffer.
* @param[in] desiredDimensions The output dimensions of the image.
*/
-void LanczosSample1BPP( const unsigned char * __restrict__ inPixels,
- ImageDimensions inputDimensions,
- unsigned char * __restrict__ outPixels,
- ImageDimensions desiredDimensions );
+void LanczosSample1BPP(const unsigned char* __restrict__ inPixels,
+ ImageDimensions inputDimensions,
+ unsigned char* __restrict__ outPixels,
+ ImageDimensions desiredDimensions);
/**
* @brief Resamples the input image with the Lanczos algorithm.
* @param[out] outPixels Pointer to the output image buffer.
* @param[in] desiredDimensions The output dimensions of the image.
*/
-void Resample( const unsigned char * __restrict__ inPixels,
- ImageDimensions inputDimensions,
- unsigned char * __restrict__ outPixels,
- ImageDimensions desiredDimensions,
- Resampler::Filter filterType,
- int numChannels, bool hasAlpha );
-
+void Resample(const unsigned char* __restrict__ inPixels,
+ ImageDimensions inputDimensions,
+ unsigned char* __restrict__ outPixels,
+ ImageDimensions desiredDimensions,
+ Resampler::Filter filterType,
+ int numChannels,
+ bool hasAlpha);
/**
* @brief Rotates the input image with an implementation of the 'Rotate by Shear' algorithm.
* @param[out] widthOut The width of the output buffer.
* @param[out] heightOut The height of the output buffer.
*/
-void RotateByShear( const uint8_t* const pixelsIn,
- unsigned int widthIn,
- unsigned int heightIn,
- unsigned int pixelSize,
- float radians,
- uint8_t*& pixelsOut,
- unsigned int& widthOut,
- unsigned int& heightOut );
+void RotateByShear(const uint8_t* const pixelsIn,
+ unsigned int widthIn,
+ unsigned int heightIn,
+ unsigned int pixelSize,
+ float radians,
+ uint8_t*& pixelsOut,
+ unsigned int& widthOut,
+ unsigned int& heightOut);
/**
* @brief Applies to the input image a horizontal shear transformation.
* @param[out] widthOut The width of the output buffer.
* @param[out] heightOut The height of the output buffer.
*/
-void HorizontalShear( const uint8_t* const pixelsIn,
- unsigned int widthIn,
- unsigned int heightIn,
- unsigned int pixelSize,
- float radians,
- uint8_t*& pixelsOut,
- unsigned int& widthOut,
- unsigned int& heightOut );
+void HorizontalShear(const uint8_t* const pixelsIn,
+ unsigned int widthIn,
+ unsigned int heightIn,
+ unsigned int pixelSize,
+ float radians,
+ uint8_t*& pixelsOut,
+ unsigned int& widthOut,
+ unsigned int& heightOut);
/**@}*/
* @param[in,out] pixels The array of pixels to work on.
* @param[i] width The number of pixels in the array passed-in.
*/
-void HalveScanlineInPlaceRGB888( unsigned char * pixels, unsigned int width );
+void HalveScanlineInPlaceRGB888(unsigned char* pixels, unsigned int width);
/**
* @copydoc HalveScanlineInPlaceRGB888
*/
-void HalveScanlineInPlaceRGBA8888( unsigned char * pixels, unsigned int width );
+void HalveScanlineInPlaceRGBA8888(unsigned char* pixels, unsigned int width);
/**
* @copydoc HalveScanlineInPlaceRGB888
*/
-void HalveScanlineInPlaceRGB565( unsigned char * pixels, unsigned int width );
+void HalveScanlineInPlaceRGB565(unsigned char* pixels, unsigned int width);
/**
* @copydoc HalveScanlineInPlaceRGB888
*/
-void HalveScanlineInPlace2Bytes( unsigned char * pixels, unsigned int width );
+void HalveScanlineInPlace2Bytes(unsigned char* pixels, unsigned int width);
/**
* @copydoc HalveScanlineInPlaceRGB888
*/
-void HalveScanlineInPlace1Byte( unsigned char * pixels, unsigned int width );
+void HalveScanlineInPlace1Byte(unsigned char* pixels, unsigned int width);
/**
* @brief Average pixels at corresponding offsets in two scanlines.
* @param[out] outputScanline Destination for the averaged pixels.
* @param[in] width The widths of all the scanlines passed-in.
*/
-void AverageScanlines1( const unsigned char * scanline1,
- const unsigned char * scanline2,
- unsigned char* outputScanline,
- /** Image width in pixels (1 byte == 1 pixel: e.g. lum8 or alpha8).*/
- unsigned int width );
+void AverageScanlines1(const unsigned char* scanline1,
+ const unsigned char* scanline2,
+ unsigned char* outputScanline,
+ /** Image width in pixels (1 byte == 1 pixel: e.g. lum8 or alpha8).*/
+ unsigned int width);
/**
* @copydoc AverageScanlines1
*/
-void AverageScanlines2( const unsigned char * scanline1,
- const unsigned char * scanline2,
- unsigned char* outputScanline,
- /** Image width in pixels (2 bytes == 1 pixel: e.g. lum8alpha8).*/
- unsigned int width );
+void AverageScanlines2(const unsigned char* scanline1,
+ const unsigned char* scanline2,
+ unsigned char* outputScanline,
+ /** Image width in pixels (2 bytes == 1 pixel: e.g. lum8alpha8).*/
+ unsigned int width);
/**
* @copydoc AverageScanlines1
*/
-void AverageScanlines3( const unsigned char * scanline1,
- const unsigned char * scanline2,
- unsigned char* outputScanline,
- /** Image width in pixels (3 bytes == 1 pixel: e.g. RGB888).*/
- unsigned int width );
+void AverageScanlines3(const unsigned char* scanline1,
+ const unsigned char* scanline2,
+ unsigned char* outputScanline,
+ /** Image width in pixels (3 bytes == 1 pixel: e.g. RGB888).*/
+ unsigned int width);
/**
* @copydoc AverageScanlines1
*/
-void AverageScanlinesRGBA8888( const unsigned char * scanline1,
- const unsigned char * scanline2,
- unsigned char * outputScanline,
- unsigned int width );
+void AverageScanlinesRGBA8888(const unsigned char* scanline1,
+ const unsigned char* scanline2,
+ unsigned char* outputScanline,
+ unsigned int width);
/**
* @copydoc AverageScanlines1
*/
-void AverageScanlinesRGB565( const unsigned char * scanline1,
- const unsigned char * scanline2,
- unsigned char* outputScanline,
- unsigned int width );
+void AverageScanlinesRGB565(const unsigned char* scanline1,
+ const unsigned char* scanline2,
+ unsigned char* outputScanline,
+ unsigned int width);
/**@}*/
/**
* @param[in] a First component to average.
* @param[in] b Second component to average.
**/
-inline unsigned int AverageComponent( unsigned int a, unsigned int b )
+inline unsigned int AverageComponent(unsigned int a, unsigned int b)
{
unsigned int avg = (a + b) >> 1u;
return avg;
* @param[in] a First pixel to average.
* @param[in] b Second pixel to average
**/
-inline uint32_t AveragePixelRGBA8888( uint32_t a, uint32_t b )
+inline uint32_t AveragePixelRGBA8888(uint32_t a, uint32_t b)
{
const unsigned int avg =
- ((AverageComponent( (a & 0xff000000) >> 1u, (b & 0xff000000) >> 1u ) << 1u) & 0xff000000 ) +
- (AverageComponent( a & 0x00ff0000, b & 0x00ff0000 ) & 0x00ff0000 ) +
- (AverageComponent( a & 0x0000ff00, b & 0x0000ff00 ) & 0x0000ff00 ) +
- (AverageComponent( a & 0x000000ff, b & 0x000000ff ) );
+ ((AverageComponent((a & 0xff000000) >> 1u, (b & 0xff000000) >> 1u) << 1u) & 0xff000000) +
+ (AverageComponent(a & 0x00ff0000, b & 0x00ff0000) & 0x00ff0000) +
+ (AverageComponent(a & 0x0000ff00, b & 0x0000ff00) & 0x0000ff00) +
+ (AverageComponent(a & 0x000000ff, b & 0x000000ff));
return avg;
///@ToDo: Optimise by trying return (((a ^ b) & 0xfefefefeUL) >> 1) + (a & b);
///@ToDo: Optimise for ARM using the single ARMV6 instruction: UHADD8 R4, R0, R5. This is not Neon. It runs in the normal integer pipeline so there is no downside like a stall moving between integer and copro.
* @param b[in] Low 16 bits hold a color value as RGB565 to average with parameter a.
* @return The average color of the two RGB565 pixels passed in, in the low 16 bits of the returned value.
**/
-inline uint32_t AveragePixelRGB565( uint32_t a, uint32_t b )
+inline uint32_t AveragePixelRGB565(uint32_t a, uint32_t b)
{
const unsigned int avg =
- (AverageComponent( a & 0xf800, b & 0xf800 ) & 0xf800 ) +
- (AverageComponent( a & 0x7e0, b & 0x7e0 ) & 0x7e0 ) +
- (AverageComponent( a & 0x1f, b & 0x1f ) );
+ (AverageComponent(a & 0xf800, b & 0xf800) & 0xf800) +
+ (AverageComponent(a & 0x7e0, b & 0x7e0) & 0x7e0) +
+ (AverageComponent(a & 0x1f, b & 0x1f));
return avg;
}
/** @return The weighted blend of two integers as a 16.16 fixed-point number, given a 0.16 fixed-point blending factor. */
-inline unsigned int WeightedBlendIntToFixed1616(unsigned int a, unsigned int b, unsigned int fractBlend )
+inline unsigned int WeightedBlendIntToFixed1616(unsigned int a, unsigned int b, unsigned int fractBlend)
{
- DALI_ASSERT_DEBUG( fractBlend <= 65535u && "Factor should be in 0.16 fixed-point." );
+ DALI_ASSERT_DEBUG(fractBlend <= 65535u && "Factor should be in 0.16 fixed-point.");
const unsigned int weightedAFixed = a * (65535u - fractBlend);
const unsigned int weightedBFixed = b * fractBlend;
- const unsigned blended = (weightedAFixed + weightedBFixed);
+ const unsigned blended = (weightedAFixed + weightedBFixed);
return blended;
}
/** @brief Blend two 16.16 inputs to give a 16.32 output. */
-inline uint64_t WeightedBlendFixed1616ToFixed1632(unsigned int a, unsigned int b, unsigned int fractBlend )
+inline uint64_t WeightedBlendFixed1616ToFixed1632(unsigned int a, unsigned int b, unsigned int fractBlend)
{
- DALI_ASSERT_DEBUG( fractBlend <= 65535u && "Factor should be in 0.16 fixed-point." );
+ DALI_ASSERT_DEBUG(fractBlend <= 65535u && "Factor should be in 0.16 fixed-point.");
// Blend while promoting intermediates to 16.32 fixed point:
const uint64_t weightedAFixed = uint64_t(a) * (65535u - fractBlend);
const uint64_t weightedBFixed = uint64_t(b) * fractBlend;
- const uint64_t blended = (weightedAFixed + weightedBFixed);
+ const uint64_t blended = (weightedAFixed + weightedBFixed);
return blended;
}
/**
* @brief Blend 4 taps into one value using horizontal and vertical weights.
*/
-inline unsigned int BilinearFilter1Component(unsigned int tl, unsigned int tr, unsigned int bl, unsigned int br, unsigned int fractBlendHorizontal, unsigned int fractBlendVertical )
+inline unsigned int BilinearFilter1Component(unsigned int tl, unsigned int tr, unsigned int bl, unsigned int br, unsigned int fractBlendHorizontal, unsigned int fractBlendVertical)
{
- DALI_ASSERT_DEBUG( fractBlendHorizontal <= 65535u && "Factor should be in 0.16 fixed-point." );
- DALI_ASSERT_DEBUG( fractBlendVertical <= 65535u && "Factor should be in 0.16 fixed-point." );
+ DALI_ASSERT_DEBUG(fractBlendHorizontal <= 65535u && "Factor should be in 0.16 fixed-point.");
+ DALI_ASSERT_DEBUG(fractBlendVertical <= 65535u && "Factor should be in 0.16 fixed-point.");
- const unsigned int topBlend = WeightedBlendIntToFixed1616( tl, tr, fractBlendHorizontal );
- const unsigned int botBlend = WeightedBlendIntToFixed1616( bl, br, fractBlendHorizontal );
- const uint64_t blended2x2 = WeightedBlendFixed1616ToFixed1632( topBlend, botBlend, fractBlendVertical );
- const unsigned int rounded = (blended2x2 + (1u << 31u) ) >> 32u;
+ const unsigned int topBlend = WeightedBlendIntToFixed1616(tl, tr, fractBlendHorizontal);
+ const unsigned int botBlend = WeightedBlendIntToFixed1616(bl, br, fractBlendHorizontal);
+ const uint64_t blended2x2 = WeightedBlendFixed1616ToFixed1632(topBlend, botBlend, fractBlendVertical);
+ const unsigned int rounded = (blended2x2 + (1u << 31u)) >> 32u;
return rounded;
}
#define DALI_TIZEN_PLATFORM_LOADER_ASTC_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <cstdio>
#include <dali/devel-api/adaptor-framework/image-loader-input.h>
+#include <cstdio>
namespace Dali
{
class PixelBuffer;
}
-
namespace TizenPlatform
{
-
class ResourceLoadingClient;
namespace Astc
const unsigned char MAGIC_BYTE_2 = 0xAB;
} // namespace Astc
-
/**
* Loads a compressed bitmap image from a ASTC file without decoding it.
* This function checks the header first
* @param[out] bitmap The bitmap class where the decoded image will be stored
* @return True if file loaded successfully, false otherwise
*/
-bool LoadBitmapFromAstc( const Dali::ImageLoader::Input& input, Dali::Devel::PixelBuffer& bitmap );
+bool LoadBitmapFromAstc(const Dali::ImageLoader::Input& input, Dali::Devel::PixelBuffer& bitmap);
/**
* Loads the header of a ASTC file and fills in the width and height appropriately.
* @param[out] height Is set with the height of the image
* @return True if the header was read successfully, false otherwise
*/
-bool LoadAstcHeader( const Dali::ImageLoader::Input& input, unsigned int& width, unsigned int& height );
-
+bool LoadAstcHeader(const Dali::ImageLoader::Input& input, unsigned int& width, unsigned int& height);
} // namespace TizenPlatform
#define DALI_TIZEN_PLATFORM_LOADER_BMP_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <cstdio>
#include <dali/devel-api/adaptor-framework/image-loader-input.h>
+#include <cstdio>
namespace Dali
{
class PixelBuffer;
}
-
namespace TizenPlatform
{
-
class ResourceLoadingClient;
namespace Bmp
* @param[out] bitmap The bitmap class where the decoded image will be stored
* @return true if file decoded successfully, false otherwise
*/
-bool LoadBitmapFromBmp( const Dali::ImageLoader::Input& input, Dali::Devel::PixelBuffer& bitmap );
+bool LoadBitmapFromBmp(const Dali::ImageLoader::Input& input, Dali::Devel::PixelBuffer& bitmap);
/**
* Loads the header of a BMP file and fills in the width and height appropriately.
* @param[out] height Is set with the height of the image
* @return true if the file's header was read successully, false otherwise
*/
-bool LoadBmpHeader( const Dali::ImageLoader::Input& input, unsigned int& width, unsigned int& height );
+bool LoadBmpHeader(const Dali::ImageLoader::Input& input, unsigned int& width, unsigned int& height);
} // namespace TizenPlatform
#define DALI_TIZEN_PLATFORM_LOADER_GIF_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <cstdio>
#include <dali/devel-api/adaptor-framework/image-loader-input.h>
+#include <cstdio>
namespace Dali
{
class PixelBuffer;
}
-
namespace TizenPlatform
{
-
class ResourceLoadingClient;
namespace Gif
* @param[out] bitmap The bitmap class where the decoded image will be stored
* @return true if file decoded successfully, false otherwise
*/
-bool LoadBitmapFromGif( const Dali::ImageLoader::Input& input, Dali::Devel::PixelBuffer& bitmap );
+bool LoadBitmapFromGif(const Dali::ImageLoader::Input& input, Dali::Devel::PixelBuffer& bitmap);
/**
* Loads the header of a GIF file and fills in the width and height appropriately.
* @param[in/out] height Is set with the height of the image
* @return true if the file's header was read successully, false otherwise
*/
-bool LoadGifHeader( const Dali::ImageLoader::Input& input, unsigned int& width, unsigned int& height );
+bool LoadGifHeader(const Dali::ImageLoader::Input& input, unsigned int& width, unsigned int& height);
} // namespace TizenPlatform
#define DALI_TIZEN_PLATFORM_LOADER_ICO_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <cstdio>
#include <dali/devel-api/adaptor-framework/image-loader-input.h>
+#include <cstdio>
namespace Dali
{
namespace TizenPlatform
{
-
class ResourceLoadingClient;
namespace Ico
//00 00 01 00 01 00 20 20
const unsigned char MAGIC_BYTE_1 = 0x00;
const unsigned char MAGIC_BYTE_2 = 0x00;
-}
+} // namespace Ico
/**
* @param[in] input Information about the input image (including file pointer)
* @param[out] bitmap The bitmap class where the decoded image will be stored
* @return true if file decoded successfully, false otherwise
*/
-bool LoadBitmapFromIco( const Dali::ImageLoader::Input& input, Dali::Devel::PixelBuffer& bitmap );
+bool LoadBitmapFromIco(const Dali::ImageLoader::Input& input, Dali::Devel::PixelBuffer& bitmap);
/**
* @param[in] input Information about the input image (including file pointer)
* @param[out] height of image
* @return true if header loaded successfully, false otherwise
*/
-bool LoadIcoHeader( const Dali::ImageLoader::Input& input, unsigned int& width, unsigned int& height );
+bool LoadIcoHeader(const Dali::ImageLoader::Input& input, unsigned int& width, unsigned int& height);
} // namespace TizenPlatform
#define DALI_TIZEN_PLATFORM_LOADER_JPEG_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <stdio.h>
+#include <dali/devel-api/adaptor-framework/image-loader-input.h>
+#include <dali/internal/legacy/tizen/image-encoder.h>
#include <dali/public-api/common/dali-vector.h>
#include <dali/public-api/images/pixel.h>
-#include <dali/internal/legacy/tizen/image-encoder.h>
-#include <dali/devel-api/adaptor-framework/image-loader-input.h>
+#include <stdio.h>
namespace Dali
{
class PixelBuffer;
}
-
namespace TizenPlatform
{
-
class ResourceLoadingClient;
namespace Jpeg
* @param[out] bitmap The bitmap class where the decoded image will be stored
* @return true if file decoded successfully, false otherwise
*/
-bool LoadBitmapFromJpeg( const Dali::ImageLoader::Input& input, Dali::Devel::PixelBuffer& bitmap );
+bool LoadBitmapFromJpeg(const Dali::ImageLoader::Input& input, Dali::Devel::PixelBuffer& bitmap);
/**
* Loads the header of a JPEG file and fills in the width and height appropriately.
* @param[in/out] height Is set with the height of the image
* @return true if the file's header was read successully, false otherwise
*/
-bool LoadJpegHeader( const Dali::ImageLoader::Input& input, unsigned int& width, unsigned int& height );
+bool LoadJpegHeader(const Dali::ImageLoader::Input& input, unsigned int& width, unsigned int& height);
/**
* Encode raw pixel data to JPEG format.
* @param[in] pixelFormat Input pixel format (must be Pixel::RGB888)
* @param[in] quality JPEG quality on usual 1 to 100 scale.
*/
-bool EncodeToJpeg(const unsigned char* pixelBuffer, Vector< unsigned char >& encodedPixels, std::size_t width, std::size_t height, Pixel::Format pixelFormat, unsigned quality = 80);
+bool EncodeToJpeg(const unsigned char* pixelBuffer, Vector<unsigned char>& encodedPixels, std::size_t width, std::size_t height, Pixel::Format pixelFormat, unsigned quality = 80);
} // namespace TizenPlatform
#define DALI_TIZEN_PLATFORM_LOADER_KTX_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <cstdio>
#include <dali/devel-api/adaptor-framework/image-loader-input.h>
+#include <cstdio>
namespace Dali
{
namespace TizenPlatform
{
-
class ResourceLoadingClient;
namespace Ktx
* @param[out] bitmap The bitmap class where the decoded image will be stored
* @return true if file loaded successfully, false otherwise
*/
-bool LoadBitmapFromKtx( const Dali::ImageLoader::Input& input, Dali::Devel::PixelBuffer& bitmap );
+bool LoadBitmapFromKtx(const Dali::ImageLoader::Input& input, Dali::Devel::PixelBuffer& bitmap);
/**
* Loads the header of a KTX file and fills in the width and height appropriately.
* @param[out] height Is set with the height of the image
* @return true if the file's header was read successully, false otherwise
*/
-bool LoadKtxHeader( const Dali::ImageLoader::Input& input, unsigned int& width, unsigned int& height );
+bool LoadKtxHeader(const Dali::ImageLoader::Input& input, unsigned int& width, unsigned int& height);
} // namespace TizenPlatform
#define DALI_TIZEN_PLATFORM_LOADER_PNG_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <cstdio>
+#include <dali/devel-api/adaptor-framework/image-loader-input.h>
+#include <dali/internal/legacy/tizen/image-encoder.h>
#include <dali/public-api/common/dali-vector.h>
#include <dali/public-api/images/pixel.h>
-#include <dali/internal/legacy/tizen/image-encoder.h>
-#include <dali/devel-api/adaptor-framework/image-loader-input.h>
+#include <cstdio>
namespace Dali
{
namespace TizenPlatform
{
-
class ResourceLoadingClient;
namespace Png
* @param[out] bitmap The bitmap class where the decoded image will be stored
* @return true if file decoded successfully, false otherwise
*/
-bool LoadBitmapFromPng( const Dali::ImageLoader::Input& input, Dali::Devel::PixelBuffer& bitmap );
+bool LoadBitmapFromPng(const Dali::ImageLoader::Input& input, Dali::Devel::PixelBuffer& bitmap);
/**
* Loads the header of a PNG file and fills in the width and height appropriately.
* @param[out] height Is set with the height of the image
* @return true if the file's header was read successully, false otherwise
*/
-bool LoadPngHeader( const Dali::ImageLoader::Input& input, unsigned int& width, unsigned int& height );
+bool LoadPngHeader(const Dali::ImageLoader::Input& input, unsigned int& width, unsigned int& height);
/**
* Encode raw pixel data to PNG format.
* @param[in] height Image height
* @param[in] pixelFormat Input pixel format (must be Pixel::RGB888)
*/
-bool EncodeToPng( const unsigned char* pixelBuffer, Vector<unsigned char>& encodedPixels, std::size_t width, std::size_t height, Pixel::Format pixelFormat );
+bool EncodeToPng(const unsigned char* pixelBuffer, Vector<unsigned char>& encodedPixels, std::size_t width, std::size_t height, Pixel::Format pixelFormat);
} // namespace TizenPlatform
#define DALI_TIZEN_PLATFORM_LOADER_WBMP_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <cstdio>
#include <dali/devel-api/adaptor-framework/image-loader-input.h>
+#include <cstdio>
namespace Dali
{
-
namespace Devel
{
class PixelBuffer;
namespace TizenPlatform
{
-
class ResourceLoadingClient;
/**
* @param[out] bitmap The bitmap class where the decoded image will be stored
* @return true if file decoded successfully, false otherwise
*/
-bool LoadBitmapFromWbmp( const Dali::ImageLoader::Input& input, Dali::Devel::PixelBuffer& bitmap );
+bool LoadBitmapFromWbmp(const Dali::ImageLoader::Input& input, Dali::Devel::PixelBuffer& bitmap);
/**
* @param[in] input Information about the input image (including file pointer)
* @param[out] height of image
* @return true if header loaded successfully, false otherwise
*/
-bool LoadWbmpHeader( const Dali::ImageLoader::Input& input, unsigned int& width, unsigned int& height );
+bool LoadWbmpHeader(const Dali::ImageLoader::Input& input, unsigned int& width, unsigned int& height);
} // namespace TizenPlatform
#define DALI_NATIVE_BITMAP_BUFFER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL HEADERS
-#include <dali/public-api/images/native-image-interface.h>
-#include <dali/public-api/images/pixel.h>
#include <dali/integration-api/gl-abstraction.h>
#include <dali/integration-api/lockless-buffer.h>
#include <dali/public-api/common/dali-vector.h>
+#include <dali/public-api/images/native-image-interface.h>
+#include <dali/public-api/images/pixel.h>
// INTERNAL HEADERS
#include <dali/internal/adaptor/common/adaptor-impl.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class NativeBitmapBuffer;
typedef IntrusivePtr<NativeBitmapBuffer> NativeBitmapBufferPtr;
*/
class NativeBitmapBuffer : public NativeImageInterface
{
-
public:
/**
* Constructor.
* @param height height of image
* @param pixelFormat pixel format for image
*/
- NativeBitmapBuffer( Adaptor* adaptor, unsigned int width, unsigned int height, Pixel::Format pixelFormat );
+ NativeBitmapBuffer(Adaptor* adaptor, unsigned int width, unsigned int height, Pixel::Format pixelFormat);
/**
* virtual destructor
* @param[in] size size of data in bytes
* @return true if successful, false if currently reading from buffer in render thread
*/
- void Write( const unsigned char* src, size_t size );
+ void Write(const unsigned char* src, size_t size);
public:
/**
*/
bool SourceChanged() const override;
-
private:
- NativeBitmapBuffer( const NativeBitmapBuffer& ); ///< not defined
- NativeBitmapBuffer& operator =( const NativeBitmapBuffer& ); ///< not defined
- NativeBitmapBuffer(); ///< not defined
+ NativeBitmapBuffer(const NativeBitmapBuffer&); ///< not defined
+ NativeBitmapBuffer& operator=(const NativeBitmapBuffer&); ///< not defined
+ NativeBitmapBuffer(); ///< not defined
private:
- Integration::GlAbstraction* mGlAbstraction; ///< GlAbstraction used
+ Integration::GlAbstraction* mGlAbstraction; ///< GlAbstraction used
- Integration::LocklessBuffer* mBuffer; ///< bitmap data double buffered
- unsigned int mWidth; ///< Image width
- unsigned int mHeight; ///< Image height
- Pixel::Format mPixelFormat; ///< Image pixelformat
+ Integration::LocklessBuffer* mBuffer; ///< bitmap data double buffered
+ unsigned int mWidth; ///< Image width
+ unsigned int mHeight; ///< Image height
+ Pixel::Format mPixelFormat; ///< Image pixelformat
const unsigned char* mLastReadBuffer; ///< last buffer that was read
};
#define DALI_INTERNAL_NATIVE_IMAGE_SOURCE_FACTORY_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <memory>
// INTERNAL INCLUDES
-#include <dali/public-api/adaptor-framework/native-image-source.h>
#include <dali/devel-api/adaptor-framework/native-image-source-queue.h>
+#include <dali/public-api/adaptor-framework/native-image-source.h>
namespace Dali
{
{
namespace Adaptor
{
-
class NativeImageSource;
class NativeImageSourceQueue;
class NativeImageSourceFactory
{
public:
-
- NativeImageSourceFactory() = default;
+ NativeImageSourceFactory() = default;
virtual ~NativeImageSourceFactory() = default;
- virtual std::unique_ptr< NativeImageSource > CreateNativeImageSource( uint32_t width, uint32_t height,
- Dali::NativeImageSource::ColorDepth depth, Any nativeImageSource ) = 0;
-
- virtual std::unique_ptr< NativeImageSourceQueue > CreateNativeImageSourceQueue( uint32_t width, uint32_t height,
- Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue ) = 0;
+ virtual std::unique_ptr<NativeImageSource> CreateNativeImageSource(uint32_t width, uint32_t height, Dali::NativeImageSource::ColorDepth depth, Any nativeImageSource) = 0;
+ virtual std::unique_ptr<NativeImageSourceQueue> CreateNativeImageSourceQueue(uint32_t width, uint32_t height, Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue) = 0;
};
-extern std::unique_ptr< NativeImageSourceFactory > GetNativeImageSourceFactory();
+extern std::unique_ptr<NativeImageSourceFactory> GetNativeImageSourceFactory();
-} // Adaptor
-} // Internal
-} // Dali
+} // namespace Adaptor
+} // namespace Internal
+} // namespace Dali
#endif // DALI_INTERNAL_NATIVE_IMAGE_SOURCE_FACTORY_H
#define DALI_INTERNAL_NATIVE_IMAGE_SOURCE_IMPL_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// INTERNAL INCLUDES
-#include <dali/public-api/adaptor-framework/native-image-source.h>
#include <dali/devel-api/adaptor-framework/bitmap-saver.h>
+#include <dali/public-api/adaptor-framework/native-image-source.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Dali internal NativeImageSource.
*/
class NativeImageSource
{
public:
-
static constexpr uint32_t DEFAULT_QUALITY = 100;
/**
* @param[in] nativeImageSource contains either: pixmap of type X11 Pixmap , a Ecore_X_Pixmap or is empty
* @return A smart-pointer to a newly allocated image.
*/
- static NativeImageSource* New(uint32_t width,
- uint32_t height,
+ static NativeImageSource* New(uint32_t width,
+ uint32_t height,
Dali::NativeImageSource::ColorDepth depth,
- Any nativeImageSource);
+ Any nativeImageSource);
/**
* @copydoc Dali::NativeImageSource::GetNativeImageSource()
*/
/**
* @copydoc Dali::NativeImageSource::GetPixels()
*/
- virtual bool GetPixels(std::vector<unsigned char> &pixbuf, uint32_t &width, uint32_t &height, Pixel::Format& pixelFormat ) const = 0;
+ virtual bool GetPixels(std::vector<unsigned char>& pixbuf, uint32_t& width, uint32_t& height, Pixel::Format& pixelFormat) const = 0;
/**
* @copydoc Dali::NativeImageSource::SetSource( Any source )
*/
- virtual void SetSource( Any source ) = 0;
+ virtual void SetSource(Any source) = 0;
/**
* @copydoc Dali::NativeImageSource::IsColorDepthSupported( ColorDepth colorDepth )
*/
- virtual bool IsColorDepthSupported( Dali::NativeImageSource::ColorDepth colorDepth ) = 0;
+ virtual bool IsColorDepthSupported(Dali::NativeImageSource::ColorDepth colorDepth) = 0;
/**
* destructor
/**
* @brief Dali::DevelNativeImageSource::AcquireBuffer()
*/
- virtual uint8_t* AcquireBuffer( uint16_t& width, uint16_t& height, uint16_t& stride ) = 0;
+ virtual uint8_t* AcquireBuffer(uint16_t& width, uint16_t& height, uint16_t& stride) = 0;
/**
* @brief Dali::DevelNativeImageSource::ReleaseBuffer()
/**
* @copydoc Dali::NativeImageSource::EncodeToFile(const std::string& )
*/
- inline bool EncodeToFile( const std::string& filename ) const
+ inline bool EncodeToFile(const std::string& filename) const
{
- return EncodeToFile( filename, DEFAULT_QUALITY );
+ return EncodeToFile(filename, DEFAULT_QUALITY);
}
/**
* @param[in] quality The quality of encoded jpeg image
* @return @c true if the pixels were written, and @c false otherwise
*/
- inline bool EncodeToFile( const std::string& filename, const uint32_t quality ) const
+ inline bool EncodeToFile(const std::string& filename, const uint32_t quality) const
{
- std::vector< uint8_t > pixbuf;
- uint32_t width( 0 ), height( 0 );
- Pixel::Format pixelFormat;
+ std::vector<uint8_t> pixbuf;
+ uint32_t width(0), height(0);
+ Pixel::Format pixelFormat;
- if( GetPixels( pixbuf, width, height, pixelFormat ) )
+ if(GetPixels(pixbuf, width, height, pixelFormat))
{
- return Dali::EncodeToFile( &pixbuf[0], filename, pixelFormat, width, height, quality );
+ return Dali::EncodeToFile(&pixbuf[0], filename, pixelFormat, width, height, quality);
}
return false;
}
public:
- inline static Internal::Adaptor::NativeImageSource& GetImplementation( Dali::NativeImageSource& image ) { return *image.mImpl; }
+ inline static Internal::Adaptor::NativeImageSource& GetImplementation(Dali::NativeImageSource& image)
+ {
+ return *image.mImpl;
+ }
};
} // namespace Adaptor
#define DALI_INTERNAL_NATIVE_IMAGE_SOURCE_QUEUE_IMPL_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Dali internal NativeImageSourceQueue.
*/
class NativeImageSourceQueue
{
public:
-
/**
* @copydoc Dali::NativeImageSourceQueue::New()
*/
- static NativeImageSourceQueue* New( uint32_t width, uint32_t height, Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue );
+ static NativeImageSourceQueue* New(uint32_t width, uint32_t height, Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue);
/**
* @copydoc Dali::NativeImageSourceQueue::GetNativeImageSourceQueue()
/**
* @copydoc Dali::NativeImageSourceQueue::SetSize
*/
- virtual void SetSize( uint32_t width, uint32_t height ) = 0;
+ virtual void SetSize(uint32_t width, uint32_t height) = 0;
/**
* @copydoc Dali::NativeImageSourceQueue::IgnoreSourceImage
#define DALI_INTERNAL_ADAPTOR_PIXEL_BUFFER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class PixelBuffer;
typedef IntrusivePtr<PixelBuffer> PixelBufferPtr;
class PixelBuffer : public BaseObject
{
public:
-
/**
* @brief Create a PixelBuffer object with a pre-allocated buffer.
* The PixelBuffer object owns this buffer, which may be retrieved
* @param [in] height Buffer height in pixels
* @param [in] pixelFormat The pixel format
*/
- static PixelBufferPtr New( unsigned int width,
- unsigned int height,
- Pixel::Format pixelFormat );
+ static PixelBufferPtr New(unsigned int width,
+ unsigned int height,
+ Pixel::Format pixelFormat);
/**
* @brief Create a PixelBuffer object. For internal use only.
* @param [in] pixelFormat The pixel format
* @param [in] releaseFunction The function used to release the memory.
*/
- static PixelBufferPtr New( unsigned char* buffer,
- unsigned int bufferSize,
- unsigned int width,
- unsigned int height,
- Pixel::Format pixelFormat );
+ static PixelBufferPtr New(unsigned char* buffer,
+ unsigned int bufferSize,
+ unsigned int width,
+ unsigned int height,
+ Pixel::Format pixelFormat);
/**
* Convert a pixelBuffer object into a PixelData object.
* @param[in] pixelBuffer The buffer to convert
* @return the pixelData
*/
- static Dali::PixelData Convert( PixelBuffer& pixelBuffer );
+ static Dali::PixelData Convert(PixelBuffer& pixelBuffer);
/**
* @brief Constructor.
* @param [in] height Buffer height in pixels
* @param [in] pixelFormat The pixel format
*/
- PixelBuffer( unsigned char* buffer,
- unsigned int bufferSize,
- unsigned int width,
- unsigned int height,
- Pixel::Format pixelFormat );
+ PixelBuffer(unsigned char* buffer,
+ unsigned int bufferSize,
+ unsigned int width,
+ unsigned int height,
+ Pixel::Format pixelFormat);
protected:
-
/**
* @brief Destructor.
*
~PixelBuffer() override;
public:
-
/**
* Get the width of the buffer in pixels.
* @return The width of the buffer in pixels
* @param[in] cropToMask Whether to crop the output to the mask size (true) or scale the
* mask to the content size (false)
*/
- void ApplyMask( const PixelBuffer& mask, float contentScale, bool cropToMask );
+ void ApplyMask(const PixelBuffer& mask, float contentScale, bool cropToMask);
/**
* @brief Apply a Gaussian blur to the current buffer with the given radius.
*
* @param[in] blurRadius The radius for Gaussian blur
*/
- void ApplyGaussianBlur( const float blurRadius );
+ void ApplyGaussianBlur(const float blurRadius);
/**
* Crops this buffer to the given crop rectangle. Assumes the crop rectangle
* @param[in] y The top left corner's y
* @param[in] cropDimensions The dimensions of the crop
*/
- void Crop( uint16_t x, uint16_t y, ImageDimensions cropDimensions );
+ void Crop(uint16_t x, uint16_t y, ImageDimensions cropDimensions);
/**
* Resizes the buffer to the given dimensions. Uses either Lanczos4 for downscaling
* or Mitchell for upscaling
* @param[in] outDimensions The new dimensions
*/
- void Resize( ImageDimensions outDimensions );
+ void Resize(ImageDimensions outDimensions);
/**
* Multiplies the image's color values by the alpha value. This provides better
*
* @param map Property map containing Exif fields
*/
- void SetMetadata( const Property::Map& map );
+ void SetMetadata(const Property::Map& map);
/**
* @brief Returns image metadata as a property map
* Allocates fixed amount of memory for the pixel data. Used by compressed formats.
* @param[in] size Size of memory to be allocated
*/
- void AllocateFixedSize( uint32_t size );
+ void AllocateFixedSize(uint32_t size);
/**
* @copydoc Devel::PixelBuffer::Rotate()
*/
- bool Rotate( Degree angle );
+ bool Rotate(Degree angle);
/**
* @copydoc Devel::PixelBuffer::IsAlphaPreMultiplied()
/*
* Undefined assignment operator.
*/
- PixelBuffer& operator= (const PixelBuffer& other);
+ PixelBuffer& operator=(const PixelBuffer& other);
/**
* Internal method to apply the mask to this buffer. Expects that they are the same size.
*/
- void ApplyMaskInternal( const PixelBuffer& mask );
+ void ApplyMaskInternal(const PixelBuffer& mask);
/**
* Takes ownership of the other object's pixel buffer.
*/
- void TakeOwnershipOfBuffer( PixelBuffer& pixelBuffer );
+ void TakeOwnershipOfBuffer(PixelBuffer& pixelBuffer);
/**
* Release the buffer
* Scales this buffer buffer by the given factor, and crops at the center to the
* given dimensions.
*/
- void ScaleAndCrop( float scaleFactor, ImageDimensions cropDimensions );
+ void ScaleAndCrop(float scaleFactor, ImageDimensions cropDimensions);
/**
* Creates a new buffer which is a crop of the passed in buffer,
* @param[in] cropDimensions The dimensions of the crop
* @return the new pixel buffer
*/
- static PixelBufferPtr NewCrop( const PixelBuffer& inBuffer, uint16_t x, uint16_t y, ImageDimensions cropDimensions );
+ static PixelBufferPtr NewCrop(const PixelBuffer& inBuffer, uint16_t x, uint16_t y, ImageDimensions cropDimensions);
/**
* Creates a new buffer which is a resized version of the passed in buffer.
* @param[in] outDimensions The new dimensions
* @return a new buffer of the given size.
*/
- static PixelBufferPtr NewResize( const PixelBuffer& inBuffer, ImageDimensions outDimensions );
+ static PixelBufferPtr NewResize(const PixelBuffer& inBuffer, ImageDimensions outDimensions);
private:
-
- std::unique_ptr<Property::Map> mMetadata; ///< Metadata fields
- unsigned char* mBuffer; ///< The raw pixel data
- unsigned int mBufferSize; ///< Buffer sized in bytes
- unsigned int mWidth; ///< Buffer width in pixels
- unsigned int mHeight; ///< Buffer height in pixels
- Pixel::Format mPixelFormat; ///< Pixel format
- bool mPreMultiplied; ///< PreMultiplied
+ std::unique_ptr<Property::Map> mMetadata; ///< Metadata fields
+ unsigned char* mBuffer; ///< The raw pixel data
+ unsigned int mBufferSize; ///< Buffer sized in bytes
+ unsigned int mWidth; ///< Buffer width in pixels
+ unsigned int mHeight; ///< Buffer height in pixels
+ Pixel::Format mPixelFormat; ///< Pixel format
+ bool mPreMultiplied; ///< PreMultiplied
};
} // namespace Adaptor
/**
* Helper methods for public API
*/
-inline Internal::Adaptor::PixelBuffer& GetImplementation( Devel::PixelBuffer& handle )
+inline Internal::Adaptor::PixelBuffer& GetImplementation(Devel::PixelBuffer& handle)
{
- DALI_ASSERT_ALWAYS( handle && "handle is empty" );
+ DALI_ASSERT_ALWAYS(handle && "handle is empty");
BaseObject& object = handle.GetBaseObject();
- return static_cast<Internal::Adaptor::PixelBuffer&>( object );
+ return static_cast<Internal::Adaptor::PixelBuffer&>(object);
}
-inline const Internal::Adaptor::PixelBuffer& GetImplementation( const Devel::PixelBuffer& handle )
+inline const Internal::Adaptor::PixelBuffer& GetImplementation(const Devel::PixelBuffer& handle)
{
- DALI_ASSERT_ALWAYS( handle && "handle is empty" );
+ DALI_ASSERT_ALWAYS(handle && "handle is empty");
const BaseObject& object = handle.GetBaseObject();
- return static_cast<const Internal::Adaptor::PixelBuffer&>( object );
+ return static_cast<const Internal::Adaptor::PixelBuffer&>(object);
}
} // namespace Dali
#define DALI_INTERNAL_ADAPTOR_PIXEL_MANIPULATION_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
enum Channel
{
LUMINANCE,
* @param[in] channel The channel to test for
* @return true if the channel exists
*/
-bool HasChannel( Dali::Pixel::Format pixelFormat, Channel channel );
-
+bool HasChannel(Dali::Pixel::Format pixelFormat, Channel channel);
/**
* Read a colour channel from the pixel with the given pixel format.
* @param[in] channel The channel to read
* @return the channel value
*/
-unsigned int ReadChannel( unsigned char* pixelData,
- Dali::Pixel::Format pixelFormat,
- Channel channel );
+unsigned int ReadChannel(unsigned char* pixelData,
+ Dali::Pixel::Format pixelFormat,
+ Channel channel);
/**
* Write a colour channel to the pixel with the given pixel format.
* @param[in] channel The channel to write
* @param[in] channelValue the value to write to the channel
*/
-void WriteChannel( unsigned char* pixelData,
- Dali::Pixel::Format pixelFormat,
- Channel channel,
- unsigned int channelValue );
+void WriteChannel(unsigned char* pixelData,
+ Dali::Pixel::Format pixelFormat,
+ Channel channel,
+ unsigned int channelValue);
/**
* Convert the colors in the source pixel from their natural format to RGBA8888.
* @param[in] destOffset The offset of the pixel to write
*/
void ConvertColorChannelsToRGBA8888(
- unsigned char* srcBuffer, int srcOffset, Dali::Pixel::Format srcFormat,
- unsigned char* destBuffer, int destOffset );
+ unsigned char* srcBuffer, int srcOffset, Dali::Pixel::Format srcFormat, unsigned char* destBuffer, int destOffset);
/**
* Convert the alpha in the source pixel to A8.
* @param[in] srcFormat The pixel format of the source pixel
* @return the alpha value in the range 0-255
*/
-int ConvertAlphaChannelToA8( unsigned char* srcPixel, int srcOffset, Dali::Pixel::Format srcFormat );
-
-
-} // Adaptor
-} // Internal
-} // Dali
+int ConvertAlphaChannelToA8(unsigned char* srcPixel, int srcOffset, Dali::Pixel::Format srcFormat);
+} // namespace Adaptor
+} // namespace Internal
+} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_PIXEL_MANIPULATION_H
#define DALI_INTERNAL_WEBP_LOADING_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*
*/
// EXTERNAL INCLUDES
-#include <cstdint>
-#include <memory>
-#include <dali/public-api/math/rect.h>
#include <dali/public-api/common/dali-vector.h>
#include <dali/public-api/common/vector-wrapper.h>
+#include <dali/public-api/math/rect.h>
#include <dali/public-api/math/uint-16-pair.h>
+#include <cstdint>
+#include <memory>
// INTERNAL INCLUDES
-#include <dali/public-api/dali-adaptor-common.h>
#include <dali/internal/imaging/common/animated-image-loading-impl.h>
+#include <dali/public-api/dali-adaptor-common.h>
namespace Dali
{
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Class to manage loading frames of an animated webp in small chunks. Lazy initializes only when
* data is actually needed.
* is released. (This is to speed up frame loads, which would otherwise have to re-acquire the
* data from disk)
*/
-class WebPLoading: public Internal::Adaptor::AnimatedImageLoading
+class WebPLoading : public Internal::Adaptor::AnimatedImageLoading
{
public:
-
/**
* Create a WebPLoading with the given url and resourceType.
* @param[in] url The url of the webp image to load
* @param[in] isLocalResource The true or false whether this is a local resource.
* @return A newly created WebPLoading.
*/
- static AnimatedImageLoadingPtr New( const std::string& url, bool isLocalResource );
+ static AnimatedImageLoadingPtr New(const std::string& url, bool isLocalResource);
/**
* @brief Constructor
* @param[in] url The url of the webp image to load
* @param[in] isLocalResource The true or false whether this is a local resource.
*/
- WebPLoading( const std::string& url, bool isLocalResource );
-
+ WebPLoading(const std::string& url, bool isLocalResource);
/**
* @brief Destructor
* @param[out] pixelData The vector in which to return the frame data
* @return True if the frame data was successfully loaded
*/
- bool LoadNextNFrames( uint32_t frameStartIndex, int count, std::vector<Dali::PixelData>& pixelData ) override;
+ bool LoadNextNFrames(uint32_t frameStartIndex, int count, std::vector<Dali::PixelData>& pixelData) override;
- /**
+ /**
* @brief Load the next Frame of the animated image.
*
* @note This function will load the entire animated image into memory if not already loaded.
* @return Dali::Devel::PixelBuffer The loaded PixelBuffer. If loading is fail, return empty handle.
*/
- Dali::Devel::PixelBuffer LoadFrame( uint32_t frameIndex ) override;
+ Dali::Devel::PixelBuffer LoadFrame(uint32_t frameIndex) override;
/**
* @brief Get the size of a webp image.
*
* @return The time interval of the frame(microsecond).
*/
- uint32_t GetFrameInterval( uint32_t frameIndex ) const override;
+ uint32_t GetFrameInterval(uint32_t frameIndex) const override;
std::string GetUrl() const override;
#pragma once
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali::Internal::Adaptor
{
-
class NativeImageSourceFactoryCocoa : public NativeImageSourceFactory
{
public:
- std::unique_ptr< NativeImageSource > CreateNativeImageSource(
- unsigned int width,
- unsigned int height,
+ std::unique_ptr<NativeImageSource> CreateNativeImageSource(
+ unsigned int width,
+ unsigned int height,
Dali::NativeImageSource::ColorDepth depth,
- Any nativeImageSource
- ) override;
+ Any nativeImageSource) override;
- std::unique_ptr< NativeImageSourceQueue > CreateNativeImageSourceQueue(
- unsigned int width,
- unsigned int height,
+ std::unique_ptr<NativeImageSourceQueue> CreateNativeImageSourceQueue(
+ unsigned int width,
+ unsigned int height,
Dali::NativeImageSourceQueue::ColorDepth depth,
- Any nativeImageSourceQueue
- ) override;
+ Any nativeImageSourceQueue) override;
};
-} // Dali::Internal::Adaptor
+} // namespace Dali::Internal::Adaptor
#pragma once
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
// INTERNAL INCLUDES
#include <dali/public-api/adaptor-framework/native-image-source.h>
+#include <CoreGraphics/CoreGraphics.h>
#include <dali/internal/imaging/common/native-image-source-impl.h>
#include <extern-definitions.h>
-#include <CoreGraphics/CoreGraphics.h>
namespace Dali::Internal::Adaptor
{
-
class EglImageExtensions;
/**
class NativeImageSourceCocoa : public Internal::Adaptor::NativeImageSource
{
public:
-
/**
* Create a new NativeImageSource internally.
* Depending on hardware the width and height may have to be a power of two.
* @return A smart-pointer to a newly allocated image.
*/
static NativeImageSourceCocoa* New(
- unsigned int width,
- unsigned int height,
+ unsigned int width,
+ unsigned int height,
Dali::NativeImageSource::ColorDepth depth,
- Any nativeImageSource
- );
+ Any nativeImageSource);
/**
* @copydoc Dali::NativeImageSource::GetNativeImageSource()
* @copydoc Dali::NativeImageSource::GetPixels()
*/
bool GetPixels(
- std::vector<unsigned char> &pixbuf,
- unsigned int &width,
- unsigned int &height,
- Pixel::Format& pixelFormat
- ) const override;
+ std::vector<unsigned char>& pixbuf,
+ unsigned int& width,
+ unsigned int& height,
+ Pixel::Format& pixelFormat) const override;
/**
* @copydoc Dali::NativeImageSource::SetSource( Any source )
*/
- void SetSource( Any source ) override;
+ void SetSource(Any source) override;
/**
* @copydoc Dali::NativeImageSource::IsColorDepthSupported( ColorDepth colorDepth )
*/
- bool IsColorDepthSupported( Dali::NativeImageSource::ColorDepth colorDepth ) override;
+ bool IsColorDepthSupported(Dali::NativeImageSource::ColorDepth colorDepth) override;
/**
* destructor
/**
* @copydoc Dali::Internal::Adaptor::NativeImageSource::AcquireBuffer()
*/
- uint8_t* AcquireBuffer( uint16_t& width, uint16_t& height, uint16_t& stride ) override;
+ uint8_t* AcquireBuffer(uint16_t& width, uint16_t& height, uint16_t& stride) override;
/**
* @copydoc Dali::Internal::Adaptor::NativeImageSource::ReleaseBuffer()
bool ReleaseBuffer() override;
private:
-
/**
* Private constructor; @see NativeImageSource::New()
* @param[in] width The width of the image.
* @param[in] nativeImageSource contains either: pixmap of type Win32 Pixmap , a WinPixmap or is empty
*/
NativeImageSourceCocoa(
- unsigned int width,
- unsigned int height,
+ unsigned int width,
+ unsigned int height,
Dali::NativeImageSource::ColorDepth depth,
- Any nativeImageSource
- );
+ Any nativeImageSource);
private:
CFRef<CGImageRef> mImage;
#define DALI_INTERNAL_NATIVE_IMAGE_SOURCE_FACTORY_TIZEN_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
class NativeImageSourceFactoryTizen : public NativeImageSourceFactory
{
public:
+ std::unique_ptr<NativeImageSource> CreateNativeImageSource(uint32_t width, uint32_t height, Dali::NativeImageSource::ColorDepth depth, Any nativeImageSource) override;
- std::unique_ptr< NativeImageSource > CreateNativeImageSource( uint32_t width, uint32_t height,
- Dali::NativeImageSource::ColorDepth depth, Any nativeImageSource ) override;
-
- std::unique_ptr< NativeImageSourceQueue > CreateNativeImageSourceQueue( uint32_t width, uint32_t height,
- Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue ) override;
-
+ std::unique_ptr<NativeImageSourceQueue> CreateNativeImageSourceQueue(uint32_t width, uint32_t height, Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue) override;
};
-} // Adaptor
-} // Internal
-} // Dali
+} // namespace Adaptor
+} // namespace Internal
+} // namespace Dali
#endif // DALI_INTERNAL_NATIVE_IMAGE_SOURCE_FACTORY_TIZEN_H
#define DALI_INTERNAL_NATIVE_IMAGE_SOURCE_IMPL_TIZEN_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <tbm_surface.h>
#include <dali/devel-api/threading/mutex.h>
#include <dali/public-api/common/dali-vector.h>
+#include <tbm_surface.h>
// INTERNAL INCLUDES
-#include <dali/public-api/adaptor-framework/native-image-source.h>
#include <dali/internal/imaging/common/native-image-source-impl.h>
+#include <dali/public-api/adaptor-framework/native-image-source.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class EglGraphics;
class EglImageExtensions;
/**
* Dali internal NativeImageSource.
*/
-class NativeImageSourceTizen: public Internal::Adaptor::NativeImageSource
+class NativeImageSourceTizen : public Internal::Adaptor::NativeImageSource
{
public:
-
/**
* Create a new NativeImageSource internally.
* Depending on hardware the width and height may have to be a power of two.
* @param[in] nativeImageSource contains tbm_surface_h or is empty
* @return A smart-pointer to a newly allocated image.
*/
- static NativeImageSourceTizen* New(uint32_t width,
- uint32_t height,
- Dali::NativeImageSource::ColorDepth depth,
- Any nativeImageSource);
+ static NativeImageSourceTizen* New(uint32_t width,
+ uint32_t height,
+ Dali::NativeImageSource::ColorDepth depth,
+ Any nativeImageSource);
/**
* @copydoc Dali::NativeImageSource::GetNativeImageSource()
/**
* @copydoc Dali::NativeImageSource::GetPixels()
*/
- bool GetPixels(std::vector<unsigned char> &pixbuf, uint32_t &width, uint32_t &height, Pixel::Format& pixelFormat ) const override;
+ bool GetPixels(std::vector<unsigned char>& pixbuf, uint32_t& width, uint32_t& height, Pixel::Format& pixelFormat) const override;
/**
* @copydoc Dali::NativeImageSource::SetSource( Any source )
*/
- void SetSource( Any source ) override;
+ void SetSource(Any source) override;
/**
* @copydoc Dali::NativeImageSource::IsColorDepthSupported( ColorDepth colorDepth )
*/
- bool IsColorDepthSupported( Dali::NativeImageSource::ColorDepth colorDepth ) override;
+ bool IsColorDepthSupported(Dali::NativeImageSource::ColorDepth colorDepth) override;
/**
* destructor
/**
* @copydoc Dali::Internal::Adaptor::NativeImageSource::AcquireBuffer()
*/
- uint8_t* AcquireBuffer( uint16_t& width, uint16_t& height, uint16_t& stride ) override;
+ uint8_t* AcquireBuffer(uint16_t& width, uint16_t& height, uint16_t& stride) override;
/**
* @copydoc Dali::Internal::Adaptor::NativeImageSource::ReleaseBuffer()
bool ReleaseBuffer() override;
private:
-
/**
* Private constructor; @see NativeImageSource::New()
* @param[in] width The width of the image.
* @param[in] colour depth of the image.
* @param[in] nativeImageSource contains either: pixmap of type X11 Pixmap , a Ecore_X_Pixmap or is empty
*/
- NativeImageSourceTizen(uint32_t width,
- unsigned int height,
- Dali::NativeImageSource::ColorDepth depth,
- Any nativeImageSource);
+ NativeImageSourceTizen(uint32_t width,
+ unsigned int height,
+ Dali::NativeImageSource::ColorDepth depth,
+ Any nativeImageSource);
void Initialize();
- tbm_surface_h GetSurfaceFromAny( Any source ) const;
+ tbm_surface_h GetSurfaceFromAny(Any source) const;
- bool CheckBlending( tbm_format format );
+ bool CheckBlending(tbm_format format);
void DestroySurface();
private:
-
- uint32_t mWidth; ///< image width
- uint32_t mHeight; ///< image height
- bool mOwnTbmSurface; ///< Whether we created pixmap or not
- tbm_surface_h mTbmSurface;
- tbm_format mTbmFormat;
- bool mBlendingRequired; ///< Whether blending is required
- Dali::NativeImageSource::ColorDepth mColorDepth; ///< color depth of image
- void* mEglImageKHR; ///< From EGL extension
- EglGraphics* mEglGraphics; ///< EGL Graphics
- EglImageExtensions* mEglImageExtensions; ///< The EGL Image Extensions
- bool mSetSource;
- mutable Dali::Mutex mMutex;
- bool mIsBufferAcquired; ///< Whether AcquireBuffer is called
+ uint32_t mWidth; ///< image width
+ uint32_t mHeight; ///< image height
+ bool mOwnTbmSurface; ///< Whether we created pixmap or not
+ tbm_surface_h mTbmSurface;
+ tbm_format mTbmFormat;
+ bool mBlendingRequired; ///< Whether blending is required
+ Dali::NativeImageSource::ColorDepth mColorDepth; ///< color depth of image
+ void* mEglImageKHR; ///< From EGL extension
+ EglGraphics* mEglGraphics; ///< EGL Graphics
+ EglImageExtensions* mEglImageExtensions; ///< The EGL Image Extensions
+ bool mSetSource;
+ mutable Dali::Mutex mMutex;
+ bool mIsBufferAcquired; ///< Whether AcquireBuffer is called
};
} // namespace Adaptor
#define DALI_INTERNAL_NATIVE_IMAGE_SOURCE_QUEUE_IMPL_TIZEN_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class EglGraphics;
class EglImageExtensions;
/**
* Dali internal NativeImageSource.
*/
-class NativeImageSourceQueueTizen: public Internal::Adaptor::NativeImageSourceQueue
+class NativeImageSourceQueueTizen : public Internal::Adaptor::NativeImageSourceQueue
{
public:
-
/**
* Create a new NativeImageSourceQueueTizen internally.
* Depending on hardware the width and height may have to be a power of two.
* @param[in] nativeImageSourceQueue contains tbm_surface_queue_h or is empty
* @return A smart-pointer to a newly allocated image.
*/
- static NativeImageSourceQueueTizen* New( uint32_t width, uint32_t height, Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue );
+ static NativeImageSourceQueueTizen* New(uint32_t width, uint32_t height, Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue);
/**
* @copydoc Dali::NativeImageSourceQueue::GetNativeImageSourceQueue()
/**
* @copydoc Dali::NativeImageSourceQueue::SetSize
*/
- void SetSize( uint32_t width, uint32_t height ) override;
+ void SetSize(uint32_t width, uint32_t height) override;
/**
* @copydoc Dali::NativeImageSourceQueue::IgnoreSourceImage
}
private:
-
/**
* Private constructor; @see NativeImageSourceQueue::New()
* @param[in] width The width of the image.
* @param[in] colour depth of the image.
* @param[in] nativeImageSourceQueue contains tbm_surface_queue_h or is empty
*/
- NativeImageSourceQueueTizen( uint32_t width, uint32_t height, Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue );
+ NativeImageSourceQueueTizen(uint32_t width, uint32_t height, Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue);
- void Initialize( Dali::NativeImageSourceQueue::ColorDepth depth );
+ void Initialize(Dali::NativeImageSourceQueue::ColorDepth depth);
void ResetEglImageList();
- tbm_surface_queue_h GetSurfaceFromAny( Any source ) const;
+ tbm_surface_queue_h GetSurfaceFromAny(Any source) const;
- bool CheckBlending( int format );
+ bool CheckBlending(int format);
private:
-
- typedef std::pair< tbm_surface_h, void* > EglImagePair;
-
- Dali::Mutex mMutex; ///< Mutex
- uint32_t mWidth; ///< image width
- uint32_t mHeight; ///< image height
- tbm_surface_queue_h mTbmQueue; ///< Tbm surface queue handle
- tbm_surface_h mConsumeSurface; ///< The current tbm surface
- std::vector< EglImagePair > mEglImages; ///< EGL Image vector
- EglGraphics* mEglGraphics; ///< EGL Graphics
- EglImageExtensions* mEglImageExtensions; ///< The EGL Image Extensions
- bool mOwnTbmQueue; ///< Whether we created tbm queue
- bool mBlendingRequired; ///< Whether blending is required
+ typedef std::pair<tbm_surface_h, void*> EglImagePair;
+
+ Dali::Mutex mMutex; ///< Mutex
+ uint32_t mWidth; ///< image width
+ uint32_t mHeight; ///< image height
+ tbm_surface_queue_h mTbmQueue; ///< Tbm surface queue handle
+ tbm_surface_h mConsumeSurface; ///< The current tbm surface
+ std::vector<EglImagePair> mEglImages; ///< EGL Image vector
+ EglGraphics* mEglGraphics; ///< EGL Graphics
+ EglImageExtensions* mEglImageExtensions; ///< The EGL Image Extensions
+ bool mOwnTbmQueue; ///< Whether we created tbm queue
+ bool mBlendingRequired; ///< Whether blending is required
};
} // namespace Adaptor
#define DALI_INTERNAL_NATIVE_IMAGE_SOURCE_FACTORY_X_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
class NativeImageSourceFactoryX : public NativeImageSourceFactory
{
public:
+ std::unique_ptr<NativeImageSource> CreateNativeImageSource(uint32_t width, uint32_t height, Dali::NativeImageSource::ColorDepth depth, Any nativeImageSource) override;
- std::unique_ptr< NativeImageSource > CreateNativeImageSource( uint32_t width, uint32_t height,
- Dali::NativeImageSource::ColorDepth depth, Any nativeImageSource ) override;
-
- std::unique_ptr< NativeImageSourceQueue > CreateNativeImageSourceQueue( uint32_t width, uint32_t height,
- Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue ) override;
-
+ std::unique_ptr<NativeImageSourceQueue> CreateNativeImageSourceQueue(uint32_t width, uint32_t height, Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue) override;
};
-} // Adaptor
-} // Internal
-} // Dali
+} // namespace Adaptor
+} // namespace Internal
+} // namespace Dali
#endif // DALI_INTERNAL_NATIVE_IMAGE_SOURCE_FACTORY_X_H
#define DALI_INTERNAL_NATIVE_IMAGE_SOURCE_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
class EglImageExtensions;
class NativeImageSourceX : public Internal::Adaptor::NativeImageSource
{
public:
-
/**
* Create a new NativeImageSource internally.
* Depending on hardware the width and height may have to be a power of two.
* @param[in] nativeImageSource contains either: pixmap of type X11 Pixmap , a Ecore_X_Pixmap or is empty
* @return A smart-pointer to a newly allocated image.
*/
- static NativeImageSourceX* New( uint32_t width,
- uint32_t height,
- Dali::NativeImageSource::ColorDepth depth,
- Any nativeImageSource);
+ static NativeImageSourceX* New(uint32_t width,
+ uint32_t height,
+ Dali::NativeImageSource::ColorDepth depth,
+ Any nativeImageSource);
/**
* @copydoc Dali::NativeImageSource::GetNativeImageSource()
*/
/**
* @copydoc Dali::NativeImageSource::GetPixels()
*/
- bool GetPixels(std::vector<unsigned char> &pixbuf, uint32_t &width, uint32_t &height, Pixel::Format& pixelFormat ) const override;
+ bool GetPixels(std::vector<unsigned char>& pixbuf, uint32_t& width, uint32_t& height, Pixel::Format& pixelFormat) const override;
/**
* @copydoc Dali::NativeImageSource::SetSource( Any source )
*/
- void SetSource( Any source ) override;
+ void SetSource(Any source) override;
/**
* @copydoc Dali::NativeImageSource::IsColorDepthSupported( ColorDepth colorDepth )
*/
- bool IsColorDepthSupported( Dali::NativeImageSource::ColorDepth colorDepth ) override;
+ bool IsColorDepthSupported(Dali::NativeImageSource::ColorDepth colorDepth) override;
/**
* destructor
*/
bool SourceChanged() const override;
-
/**
* @copydoc Dali::NativeImageInterface::GetExtension()
*/
/**
* @copydoc Dali::Internal::Adaptor::NativeImageSource::AcquireBuffer()
*/
- uint8_t* AcquireBuffer( uint16_t& width, uint16_t& height, uint16_t& stride ) override;
+ uint8_t* AcquireBuffer(uint16_t& width, uint16_t& height, uint16_t& stride) override;
/**
* @copydoc Dali::Internal::Adaptor::NativeImageSource::ReleaseBuffer()
bool ReleaseBuffer() override;
private:
-
/**
* Private constructor; @see NativeImageSource::New()
* @param[in] width The width of the image.
* @param[in] colour depth of the image.
* @param[in] nativeImageSource contains either: pixmap of type X11 Pixmap , a Ecore_X_Pixmap or is empty
*/
- NativeImageSourceX( uint32_t width,
- uint32_t height,
- Dali::NativeImageSource::ColorDepth depth,
- Any nativeImageSource);
+ NativeImageSourceX(uint32_t width,
+ uint32_t height,
+ Dali::NativeImageSource::ColorDepth depth,
+ Any nativeImageSource);
/**
* 2nd phase construction.
void GetPixmapDetails();
private:
-
- uint32_t mWidth; ///< image width
- uint32_t mHeight; ///< image heights
- bool mOwnPixmap; ///< Whether we created pixmap or not
- Ecore_X_Pixmap mPixmap; ///< From Xlib
- bool mBlendingRequired; ///< Whether blending is required
- Dali::NativeImageSource::ColorDepth mColorDepth; ///< color depth of image
- void* mEglImageKHR; ///< From EGL extension
- EglImageExtensions* mEglImageExtensions; ///< The EGL Image Extensions
+ uint32_t mWidth; ///< image width
+ uint32_t mHeight; ///< image heights
+ bool mOwnPixmap; ///< Whether we created pixmap or not
+ Ecore_X_Pixmap mPixmap; ///< From Xlib
+ bool mBlendingRequired; ///< Whether blending is required
+ Dali::NativeImageSource::ColorDepth mColorDepth; ///< color depth of image
+ void* mEglImageKHR; ///< From EGL extension
+ EglImageExtensions* mEglImageExtensions; ///< The EGL Image Extensions
};
} // namespace Adaptor
#define DALI_INTERNAL_NATIVE_IMAGE_SOURCE_QUEUE_IMPL_X_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class EglGraphics;
class EglImageExtensions;
/**
* Dali internal NativeImageSourceQueue.
*/
-class NativeImageSourceQueueX: public Internal::Adaptor::NativeImageSourceQueue
+class NativeImageSourceQueueX : public Internal::Adaptor::NativeImageSourceQueue
{
public:
-
/**
* Create a new NativeImageSourceQueueX internally.
* Depending on hardware the width and height may have to be a power of two.
* @param[in] nativeImageSourceQueue contains tbm_surface_queue_h or is empty
* @return A smart-pointer to a newly allocated image.
*/
- static NativeImageSourceQueueX* New( uint32_t width, uint32_t height, Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue );
+ static NativeImageSourceQueueX* New(uint32_t width, uint32_t height, Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue);
/**
* @copydoc Dali::NativeImageSourceQueue::GetNativeImageSourceQueue()
/**
* @copydoc Dali::NativeImageSourceQueue::SetSize
*/
- void SetSize( uint32_t width, uint32_t height ) override;
+ void SetSize(uint32_t width, uint32_t height) override;
/**
* @copydoc Dali::NativeImageSourceQueue::IgnoreSourceImage
}
private:
-
/**
* Private constructor; @see NativeImageSourceQueue::New()
* @param[in] width The width of the image.
* @param[in] colour depth of the image.
* @param[in] nativeImageSourceQueue contains tbm_surface_queue_h or is empty
*/
- NativeImageSourceQueueX( uint32_t width, uint32_t height, Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue );
+ NativeImageSourceQueueX(uint32_t width, uint32_t height, Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue);
private:
-
- uint32_t mWidth; ///< image width
- uint32_t mHeight; ///< image height
-
+ uint32_t mWidth; ///< image width
+ uint32_t mHeight; ///< image height
};
} // namespace Adaptor
#define DALI_INTERNAL_NATIVE_IMAGE_SOURCE_FACTORY_X_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
class NativeImageSourceFactoryWin : public NativeImageSourceFactory
{
public:
+ std::unique_ptr<NativeImageSource> CreateNativeImageSource(unsigned int width, unsigned int height, Dali::NativeImageSource::ColorDepth depth, Any nativeImageSource) override;
- std::unique_ptr< NativeImageSource > CreateNativeImageSource( unsigned int width, unsigned int height,
- Dali::NativeImageSource::ColorDepth depth, Any nativeImageSource ) override;
-
- std::unique_ptr< NativeImageSourceQueue > CreateNativeImageSourceQueue( unsigned int width, unsigned int height,
- Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue ) override;
-
+ std::unique_ptr<NativeImageSourceQueue> CreateNativeImageSourceQueue(unsigned int width, unsigned int height, Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue) override;
};
-} // Adaptor
-} // Internal
-} // Dali
+} // namespace Adaptor
+} // namespace Internal
+} // namespace Dali
#endif // DALI_INTERNAL_NATIVE_IMAGE_SOURCE_FACTORY_X_H
#define DALI_INTERNAL_NATIVE_IMAGE_SOURCE_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
class EglImageExtensions;
class NativeImageSourceWin : public Internal::Adaptor::NativeImageSource
{
public:
-
/**
* Create a new NativeImageSource internally.
* Depending on hardware the width and height may have to be a power of two.
* @param[in] nativeImageSource contains either: pixmap of type Win32 Pixmap , a WinPixmap or is empty
* @return A smart-pointer to a newly allocated image.
*/
- static NativeImageSourceWin* New(unsigned int width,
- unsigned int height,
- Dali::NativeImageSource::ColorDepth depth,
- Any nativeImageSource);
+ static NativeImageSourceWin* New(unsigned int width,
+ unsigned int height,
+ Dali::NativeImageSource::ColorDepth depth,
+ Any nativeImageSource);
/**
* @copydoc Dali::NativeImageSource::GetNativeImageSource()
*/
/**
* @copydoc Dali::NativeImageSource::GetPixels()
*/
- bool GetPixels(std::vector<unsigned char> &pixbuf, unsigned int &width, unsigned int &height, Pixel::Format& pixelFormat ) const override;
+ bool GetPixels(std::vector<unsigned char>& pixbuf, unsigned int& width, unsigned int& height, Pixel::Format& pixelFormat) const override;
/**
* @copydoc Dali::NativeImageSource::SetSource( Any source )
*/
- void SetSource( Any source ) override;
+ void SetSource(Any source) override;
/**
* @copydoc Dali::NativeImageSource::IsColorDepthSupported( ColorDepth colorDepth )
*/
- bool IsColorDepthSupported( Dali::NativeImageSource::ColorDepth colorDepth ) override;
+ bool IsColorDepthSupported(Dali::NativeImageSource::ColorDepth colorDepth) override;
/**
* destructor
/**
* @copydoc Dali::Internal::Adaptor::NativeImageSource::AcquireBuffer()
*/
- uint8_t* AcquireBuffer( uint16_t& width, uint16_t& height, uint16_t& stride ) override;
+ uint8_t* AcquireBuffer(uint16_t& width, uint16_t& height, uint16_t& stride) override;
/**
* @copydoc Dali::Internal::Adaptor::NativeImageSource::ReleaseBuffer()
bool ReleaseBuffer() override;
private:
-
/**
* Private constructor; @see NativeImageSource::New()
* @param[in] width The width of the image.
* @param[in] colour depth of the image.
* @param[in] nativeImageSource contains either: pixmap of type Win32 Pixmap , a WinPixmap or is empty
*/
- NativeImageSourceWin(unsigned int width,
- unsigned int height,
- Dali::NativeImageSource::ColorDepth depth,
- Any nativeImageSource);
+ NativeImageSourceWin(unsigned int width,
+ unsigned int height,
+ Dali::NativeImageSource::ColorDepth depth,
+ Any nativeImageSource);
/**
* 2nd phase construction.
void GetPixmapDetails();
private:
-
- unsigned int mWidth; ///< image width
- unsigned int mHeight; ///< image heights
- bool mOwnPixmap; ///< Whether we created pixmap or not
- unsigned int mPixmap; ///< From Windows
- bool mBlendingRequired; ///< Whether blending is required
- Dali::NativeImageSource::ColorDepth mColorDepth; ///< color depth of image
- void* mEglImageKHR; ///< From EGL extension
- EglImageExtensions* mEglImageExtensions; ///< The EGL Image Extensions
+ unsigned int mWidth; ///< image width
+ unsigned int mHeight; ///< image heights
+ bool mOwnPixmap; ///< Whether we created pixmap or not
+ unsigned int mPixmap; ///< From Windows
+ bool mBlendingRequired; ///< Whether blending is required
+ Dali::NativeImageSource::ColorDepth mColorDepth; ///< color depth of image
+ void* mEglImageKHR; ///< From EGL extension
+ EglImageExtensions* mEglImageExtensions; ///< The EGL Image Extensions
};
} // namespace Adaptor
#define DALI_INTERNAL_INPUT_COMMON_INPUT_METHOD_CONTEXT_FACTORY_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
namespace InputMethodContextFactory
{
-
// Factory function creating new InputMethodContext
// Symbol exists but may be overriden during linking
-InputMethodContextPtr CreateInputMethodContext( Dali::Actor actor );
+InputMethodContextPtr CreateInputMethodContext(Dali::Actor actor);
-}
-}
-}
+} // namespace InputMethodContextFactory
+} // namespace Adaptor
+} // namespace Internal
-}
+} // namespace Dali
#endif //DALI_INTERNAL_INPUT_COMMON_INPUT_METHOD_CONTEXT_FACTORY_H
#define DALI_INTERNAL_INPUT_COMMON_INPUT_METHOD_CONTEXT_IMPL_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <functional>
-#include <memory>
+#include <dali/integration-api/events/key-event-integ.h>
#include <dali/public-api/actors/actor.h>
#include <dali/public-api/common/vector-wrapper.h>
#include <dali/public-api/object/base-object.h>
-#include <dali/integration-api/events/key-event-integ.h>
+#include <functional>
+#include <memory>
// INTERNAL INCLUDES
#include <dali/devel-api/adaptor-framework/input-method-context.h>
namespace Dali
{
-
class RenderSurface;
namespace Internal
{
-
namespace Adaptor
{
class InputMethodContext;
-typedef IntrusivePtr< InputMethodContext > InputMethodContextPtr;
+typedef IntrusivePtr<InputMethodContext> InputMethodContextPtr;
using ImfContext = void;
class InputMethodContext : public Dali::BaseObject
{
-
public:
-
- using ActivatedSignalType = Dali::InputMethodContext::ActivatedSignalType;
- using KeyboardEventSignalType = Dali::InputMethodContext::KeyboardEventSignalType;
- using StatusSignalType = Dali::InputMethodContext::StatusSignalType;
- using VoidSignalType = Dali::InputMethodContext::VoidSignalType;
- using KeyboardTypeSignalType = Dali::InputMethodContext::KeyboardTypeSignalType;
+ using ActivatedSignalType = Dali::InputMethodContext::ActivatedSignalType;
+ using KeyboardEventSignalType = Dali::InputMethodContext::KeyboardEventSignalType;
+ using StatusSignalType = Dali::InputMethodContext::StatusSignalType;
+ using VoidSignalType = Dali::InputMethodContext::VoidSignalType;
+ using KeyboardTypeSignalType = Dali::InputMethodContext::KeyboardTypeSignalType;
using LanguageChangedSignalType = Dali::InputMethodContext::LanguageChangedSignalType;
using KeyboardResizedSignalType = Dali::InputMethodContext::KeyboardResizedSignalType;
using ContentReceivedSignalType = Dali::InputMethodContext::ContentReceivedSignalType;
public:
-
/**
* Create a new input method context instance.
*/
- static InputMethodContextPtr New( Dali::Actor actor );
+ static InputMethodContextPtr New(Dali::Actor actor);
/**
* Initialize the object.
*/
- virtual void Initialize() {}
+ virtual void Initialize()
+ {
+ }
/**
* Connect Callbacks required for InputMethodContext.
* If you don't connect InputMethodContext callbacks, you can't get the key events.
* The events are PreeditChanged, Commit, DeleteSurrounding and PrivateCommand.
*/
- virtual void ConnectCallbacks() {}
+ virtual void ConnectCallbacks()
+ {
+ }
/**
* Disconnect Callbacks attached to input method context.
*/
- virtual void DisconnectCallbacks() {}
+ virtual void DisconnectCallbacks()
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::Finalize()
*/
- virtual void Finalize() {}
+ virtual void Finalize()
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::Activate()
*/
- virtual void Activate() {}
+ virtual void Activate()
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::Deactivate()
*/
- virtual void Deactivate() {}
+ virtual void Deactivate()
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::Reset()
*/
- virtual void Reset() {}
+ virtual void Reset()
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::GetContext()
*/
- virtual ImfContext* GetContext() { return nullptr; }
+ virtual ImfContext* GetContext()
+ {
+ return nullptr;
+ }
/**
* @copydoc Dali::InputMethodContext::RestoreAfterFocusLost()
*/
- virtual bool RestoreAfterFocusLost() const { return false; }
+ virtual bool RestoreAfterFocusLost() const
+ {
+ return false;
+ }
/**
* @copydoc Dali::InputMethodContext::SetRestoreAfterFocusLost()
*/
- virtual void SetRestoreAfterFocusLost( bool toggle ) {}
+ virtual void SetRestoreAfterFocusLost(bool toggle)
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::PreEditChanged()
*/
- virtual void PreEditChanged( void *data, ImfContext* imfContext, void *eventInfo ) {}
+ virtual void PreEditChanged(void* data, ImfContext* imfContext, void* eventInfo)
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::CommitReceived()
*/
- virtual void CommitReceived( void *data, ImfContext* imfContext, void *eventInfo ) {}
+ virtual void CommitReceived(void* data, ImfContext* imfContext, void* eventInfo)
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::RetrieveSurrounding()
*/
/*Eina_Bool*/
- virtual bool RetrieveSurrounding( void *data, ImfContext* imfContext, char** text, int* cursorPosition ) { return false; }
+ virtual bool RetrieveSurrounding(void* data, ImfContext* imfContext, char** text, int* cursorPosition)
+ {
+ return false;
+ }
/**
* @copydoc Dali::InputMethodContext::DeleteSurrounding()
*/
- virtual void DeleteSurrounding( void *data, ImfContext* imfContext, void *eventInfo ) {}
+ virtual void DeleteSurrounding(void* data, ImfContext* imfContext, void* eventInfo)
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::SendPrivateCommand()
*/
- virtual void SendPrivateCommand( void* data, ImfContext* imfContext, void* eventInfo ) {}
+ virtual void SendPrivateCommand(void* data, ImfContext* imfContext, void* eventInfo)
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::SendCommitContent()
*/
- virtual void SendCommitContent( void* data, ImfContext* imfContext, void* eventInfo ) {}
+ virtual void SendCommitContent(void* data, ImfContext* imfContext, void* eventInfo)
+ {
+ }
// Cursor related
/**
* @copydoc Dali::InputMethodContext::NotifyCursorPosition()
*/
- virtual void NotifyCursorPosition() {}
+ virtual void NotifyCursorPosition()
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::SetCursorPosition()
*/
- virtual void SetCursorPosition( unsigned int cursorPosition ) {}
+ virtual void SetCursorPosition(unsigned int cursorPosition)
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::GetCursorPosition()
*/
- virtual unsigned int GetCursorPosition() const { return 0; }
+ virtual unsigned int GetCursorPosition() const
+ {
+ return 0;
+ }
/**
* @copydoc Dali::InputMethodContext::SetSurroundingText()
*/
- virtual void SetSurroundingText( const std::string& text ) {}
+ virtual void SetSurroundingText(const std::string& text)
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::GetSurroundingText()
/**
* @copydoc Dali::InputMethodContext::NotifyTextInputMultiLine()
*/
- virtual void NotifyTextInputMultiLine( bool multiLine ) {}
+ virtual void NotifyTextInputMultiLine(bool multiLine)
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::GetTextDirection()
*/
- virtual Dali::InputMethodContext::TextDirection GetTextDirection() { return Dali::InputMethodContext::TextDirection(); }
+ virtual Dali::InputMethodContext::TextDirection GetTextDirection()
+ {
+ return Dali::InputMethodContext::TextDirection();
+ }
/**
* @copydoc Dali::InputMethodContext::GetInputMethodArea()
*/
- virtual Dali::Rect<int> GetInputMethodArea() { return Dali::Rect<int>(); }
+ virtual Dali::Rect<int> GetInputMethodArea()
+ {
+ return Dali::Rect<int>();
+ }
/**
* @copydoc Dali::InputMethodContext::ApplyOptions()
*/
- virtual void ApplyOptions( const InputMethodOptions& options ) {}
+ virtual void ApplyOptions(const InputMethodOptions& options)
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::SetInputPanelData()
*/
- virtual void SetInputPanelData( const std::string& data ) {}
+ virtual void SetInputPanelData(const std::string& data)
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::GetInputPanelData()
*/
- virtual void GetInputPanelData( std::string& data ) {}
+ virtual void GetInputPanelData(std::string& data)
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::GetInputPanelState()
*/
- virtual Dali::InputMethodContext::State GetInputPanelState() { return Dali::InputMethodContext::State(); }
+ virtual Dali::InputMethodContext::State GetInputPanelState()
+ {
+ return Dali::InputMethodContext::State();
+ }
/**
* @copydoc Dali::InputMethodContext::SetReturnKeyState()
*/
- virtual void SetReturnKeyState( bool visible ) {}
+ virtual void SetReturnKeyState(bool visible)
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::AutoEnableInputPanel()
*/
- virtual void AutoEnableInputPanel( bool enabled ) {}
+ virtual void AutoEnableInputPanel(bool enabled)
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::ShowInputPanel()
*/
- virtual void ShowInputPanel() {}
+ virtual void ShowInputPanel()
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::HideInputPanel()
*/
- virtual void HideInputPanel() {}
+ virtual void HideInputPanel()
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::GetKeyboardType()
*/
- virtual Dali::InputMethodContext::KeyboardType GetKeyboardType() { return Dali::InputMethodContext::KeyboardType(); }
+ virtual Dali::InputMethodContext::KeyboardType GetKeyboardType()
+ {
+ return Dali::InputMethodContext::KeyboardType();
+ }
/**
* @copydoc Dali::InputMethodContext::GetInputPanelLocale()
*/
- virtual std::string GetInputPanelLocale() { return std::string(); }
+ virtual std::string GetInputPanelLocale()
+ {
+ return std::string();
+ }
/**
* @copydoc Dali::InputMethodContext::SetContentMIMETypes()
*/
- virtual void SetContentMIMETypes( const std::string& mimeTypes ) {}
+ virtual void SetContentMIMETypes(const std::string& mimeTypes)
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::FilterEventKey()
*/
- virtual bool FilterEventKey( const Dali::KeyEvent& keyEvent ) { return false; }
+ virtual bool FilterEventKey(const Dali::KeyEvent& keyEvent)
+ {
+ return false;
+ }
/**
* @copydoc Dali::InputMethodContext::AllowTextPrediction()
*/
- virtual void AllowTextPrediction( bool prediction ) {}
+ virtual void AllowTextPrediction(bool prediction)
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::IsTextPredictionAllowed()
*/
- virtual bool IsTextPredictionAllowed() const { return false; }
+ virtual bool IsTextPredictionAllowed() const
+ {
+ return false;
+ }
/**
* @copydoc Dali::InputMethodContext::SetInputPanelLanguage()
*/
- virtual void SetInputPanelLanguage( Dali::InputMethodContext::InputPanelLanguage language ) {}
+ virtual void SetInputPanelLanguage(Dali::InputMethodContext::InputPanelLanguage language)
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::GetInputPanelLanguage()
*/
- virtual Dali::InputMethodContext::InputPanelLanguage GetInputPanelLanguage() const { return Dali::InputMethodContext::InputPanelLanguage(); }
+ virtual Dali::InputMethodContext::InputPanelLanguage GetInputPanelLanguage() const
+ {
+ return Dali::InputMethodContext::InputPanelLanguage();
+ }
/**
* @copydoc Dali::InputMethodContext::SetInputPanelPosition()
*/
- virtual void SetInputPanelPosition( unsigned int x, unsigned int y ) {}
+ virtual void SetInputPanelPosition(unsigned int x, unsigned int y)
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::GetPreeditStyle()
*/
- virtual void GetPreeditStyle( Dali::InputMethodContext::PreEditAttributeDataContainer& attrs ) const {}
-
-public: // Signals
+ virtual void GetPreeditStyle(Dali::InputMethodContext::PreEditAttributeDataContainer& attrs) const
+ {
+ }
+public: // Signals
/**
* @copydoc Dali::InputMethodContext::ActivatedSignal()
*/
- ActivatedSignalType& ActivatedSignal() { return mActivatedSignal; }
+ ActivatedSignalType& ActivatedSignal()
+ {
+ return mActivatedSignal;
+ }
/**
* @copydoc Dali::InputMethodContext::EventReceivedSignal()
*/
- KeyboardEventSignalType& EventReceivedSignal() { return mEventSignal; }
+ KeyboardEventSignalType& EventReceivedSignal()
+ {
+ return mEventSignal;
+ }
/**
* @copydoc Dali::InputMethodContext::StatusChangedSignal()
*/
- StatusSignalType& StatusChangedSignal() { return mKeyboardStatusSignal; }
+ StatusSignalType& StatusChangedSignal()
+ {
+ return mKeyboardStatusSignal;
+ }
/**
* @copydoc Dali::InputMethodContext::ResizedSignal()
*/
- KeyboardResizedSignalType& ResizedSignal() { return mKeyboardResizeSignal; }
+ KeyboardResizedSignalType& ResizedSignal()
+ {
+ return mKeyboardResizeSignal;
+ }
/**
* @copydoc Dali::InputMethodContext::LanguageChangedSignal()
*/
- LanguageChangedSignalType& LanguageChangedSignal() { return mKeyboardLanguageChangedSignal; }
+ LanguageChangedSignalType& LanguageChangedSignal()
+ {
+ return mKeyboardLanguageChangedSignal;
+ }
/**
* @copydoc Dali::InputMethodContext::KeyboardTypeChangedSignal()
*/
- KeyboardTypeSignalType& KeyboardTypeChangedSignal() { return mKeyboardTypeChangedSignal; }
+ KeyboardTypeSignalType& KeyboardTypeChangedSignal()
+ {
+ return mKeyboardTypeChangedSignal;
+ }
/**
* @copydoc Dali::InputMethodContext::ContentReceivedSignal()
*/
- ContentReceivedSignalType& ContentReceivedSignal() { return mContentReceivedSignal; }
+ ContentReceivedSignalType& ContentReceivedSignal()
+ {
+ return mContentReceivedSignal;
+ }
public:
-
/**
* Constructor
*/
~InputMethodContext() override = default;
private:
-
- InputMethodContext( const InputMethodContext& ) = delete;
- InputMethodContext& operator=( InputMethodContext& ) = delete;
+ InputMethodContext(const InputMethodContext&) = delete;
+ InputMethodContext& operator=(InputMethodContext&) = delete;
protected:
/**
};
};
- using OperationList = std::vector< std::function<void()> >;
+ using OperationList = std::vector<std::function<void()> >;
/**
* @brief Apply backup operations to the InputMethodContext
void ApplyBackupOperations();
protected:
-
- ActivatedSignalType mActivatedSignal;
- KeyboardEventSignalType mEventSignal;
- StatusSignalType mKeyboardStatusSignal;
- KeyboardResizedSignalType mKeyboardResizeSignal;
- LanguageChangedSignalType mKeyboardLanguageChangedSignal;
- KeyboardTypeSignalType mKeyboardTypeChangedSignal;
- ContentReceivedSignalType mContentReceivedSignal;
- OperationList mBackupOperations;
+ ActivatedSignalType mActivatedSignal;
+ KeyboardEventSignalType mEventSignal;
+ StatusSignalType mKeyboardStatusSignal;
+ KeyboardResizedSignalType mKeyboardResizeSignal;
+ LanguageChangedSignalType mKeyboardLanguageChangedSignal;
+ KeyboardTypeSignalType mKeyboardTypeChangedSignal;
+ ContentReceivedSignalType mContentReceivedSignal;
+ OperationList mBackupOperations;
public:
-
inline static Internal::Adaptor::InputMethodContext& GetImplementation(Dali::InputMethodContext& inputMethodContext)
{
- DALI_ASSERT_ALWAYS( inputMethodContext && "InputMethodContext handle is empty" );
+ DALI_ASSERT_ALWAYS(inputMethodContext && "InputMethodContext handle is empty");
BaseObject& handle = inputMethodContext.GetBaseObject();
inline static const Internal::Adaptor::InputMethodContext& GetImplementation(const Dali::InputMethodContext& inputMethodContext)
{
- DALI_ASSERT_ALWAYS( inputMethodContext && "InputMethodContext handle is empty" );
+ DALI_ASSERT_ALWAYS(inputMethodContext && "InputMethodContext handle is empty");
const BaseObject& handle = inputMethodContext.GetBaseObject();
return static_cast<const Internal::Adaptor::InputMethodContext&>(handle);
}
-
};
-
} // namespace Adaptor
} // namespace Internal
#define DALI_KEY_IMPL_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// INTERNAL INCLUDES
-#include <dali/public-api/adaptor-framework/key.h>
-#include <dali/devel-api/adaptor-framework/key-extension-plugin.h>
#include <dali/devel-api/adaptor-framework/key-devel.h>
+#include <dali/devel-api/adaptor-framework/key-extension-plugin.h>
+#include <dali/public-api/adaptor-framework/key.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Implementation of the Key matching
*/
namespace KeyLookup
{
-
struct KeyLookup
{
- const char* keyName; ///< XF86 key name
+ const char* keyName; ///< XF86 key name
const Dali::KEY daliKeyCode; ///< Dali key code
- const bool deviceButton; ///< Whether the key is from a button on the device
+ const bool deviceButton; ///< Whether the key is from a button on the device
};
-extern KeyLookup KeyLookupTable[];
+extern KeyLookup KeyLookupTable[];
extern const std::size_t KEY_LOOKUP_COUNT;
/**
* @copydoc Dali::IsKey()
*/
-bool IsKey( const Dali::KeyEvent& keyEvent, Dali::KEY daliKey );
+bool IsKey(const Dali::KeyEvent& keyEvent, Dali::KEY daliKey);
/**
* Check if a the given key name string is a button on the device itself.
* @param keyName A pointer to the key name
* @return true if the key is matched, false if not
*/
-bool IsDeviceButton( const char* keyName );
+bool IsDeviceButton(const char* keyName);
/**
* Get a key name from a dali key code.
* @param daliKey The dali key code
* @return The key name. NULL if the daliKey does not exist in the supported key lookup table.
*/
-const char* GetKeyName( Dali::KEY daliKey );
+const char* GetKeyName(Dali::KEY daliKey);
/**
* @copydoc Dali::DevelKey::GetDaliKeyCode()
*/
-int GetDaliKeyCode( const char* keyName );
+int GetDaliKeyCode(const char* keyName);
} // namespace KeyLookup
#define DALI_INTERNAL_PHYSICAL_KEYBOARD_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class PhysicalKeyboard : public BaseObject
{
public:
-
/**
* Creates a new instance of the PhysicalKeyboard.
*/
* keyboard then the parameter should be true.
* @param[in] fromPhysicalKeyboard true if received from a physical keyboard, false otherwise.
*/
- void KeyReceived( bool fromPhysicalKeyboard );
+ void KeyReceived(bool fromPhysicalKeyboard);
// Signals
/**
* @copydoc Dali::PhysicalKeyboard::StatusChangedSignal()
*/
- Dali::PhysicalKeyboard::PhysicalKeyboardSignalType& StatusChangedSignal() { return mStatusChangedSignal; }
+ Dali::PhysicalKeyboard::PhysicalKeyboardSignalType& StatusChangedSignal()
+ {
+ return mStatusChangedSignal;
+ }
protected:
-
/**
* A reference counted object may only be deleted by calling Unreference()
*/
~PhysicalKeyboard() override;
private:
-
// Undefined
- PhysicalKeyboard( const PhysicalKeyboard& );
- PhysicalKeyboard& operator=( PhysicalKeyboard& );
+ PhysicalKeyboard(const PhysicalKeyboard&);
+ PhysicalKeyboard& operator=(PhysicalKeyboard&);
/**
* Constructor
PhysicalKeyboard();
private:
-
Dali::PhysicalKeyboard::PhysicalKeyboardSignalType mStatusChangedSignal; ///< Status changed signal
- bool mAttached; ///< true if the physical keyboard is attached, false otherwise
+ bool mAttached; ///< true if the physical keyboard is attached, false otherwise
};
} // namespace Adaptor
// Helpers for public-api forwarding methods
-inline static Internal::Adaptor::PhysicalKeyboard& GetImplementation( PhysicalKeyboard& keyboard )
+inline static Internal::Adaptor::PhysicalKeyboard& GetImplementation(PhysicalKeyboard& keyboard)
{
- DALI_ASSERT_ALWAYS( keyboard && "PhysicalKeyboard handle is empty" );
+ DALI_ASSERT_ALWAYS(keyboard && "PhysicalKeyboard handle is empty");
BaseObject& handle = keyboard.GetBaseObject();
- return static_cast< Internal::Adaptor::PhysicalKeyboard& >( handle );
+ return static_cast<Internal::Adaptor::PhysicalKeyboard&>(handle);
}
-inline static const Internal::Adaptor::PhysicalKeyboard& GetImplementation( const PhysicalKeyboard& keyboard )
+inline static const Internal::Adaptor::PhysicalKeyboard& GetImplementation(const PhysicalKeyboard& keyboard)
{
- DALI_ASSERT_ALWAYS( keyboard && "PhysicalKeyboard handle is empty" );
+ DALI_ASSERT_ALWAYS(keyboard && "PhysicalKeyboard handle is empty");
const BaseObject& handle = keyboard.GetBaseObject();
- return static_cast< const Internal::Adaptor::PhysicalKeyboard& >( handle );
+ return static_cast<const Internal::Adaptor::PhysicalKeyboard&>(handle);
}
} // namespace Dali
#define DALI_INTERNAL_VIRTUAL_KEYBOARD_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Implementation of the virtual keyboard namespace
*/
namespace VirtualKeyboard
{
-
/**
* @copydoc Dali::VirtualKeyboard::Show()
*/
/**
* @copydoc Dali::VirtualKeyboard::ApplySettings()
*/
-void ApplySettings( const Property::Map& settingsMap );
+void ApplySettings(const Property::Map& settingsMap);
/**
* @copydoc Dali::VirtualKeyboard::SetReturnKeyType()
*/
-void SetReturnKeyType( const Dali::InputMethod::ButtonAction::Type type );
+void SetReturnKeyType(const Dali::InputMethod::ButtonAction::Type type);
/**
* @copydoc Dali::VirtualKeyboard::GetReturnKeyType()
#define __DALI_INTERNAL_INPUT_METHOD_CONTEXT_IMPL_GENERIC_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* @brief Satisfies input API requirements for platforms without input method context support
*/
* @param[in] actor The actor that uses the new InputMethodContext instance.
* @return InputMethodContext pointer
*/
- static InputMethodContextPtr New( Dali::Actor actor );
+ static InputMethodContextPtr New(Dali::Actor actor);
/**
* Constructor
* @param[in] actor The actor that uses the new InputMethodContext instance.
*/
- explicit InputMethodContextGeneric( Dali::Actor actor );
+ explicit InputMethodContextGeneric(Dali::Actor actor);
public:
-
/**
* @brief Initializes member data.
*/
/**
* @copydoc Dali::InputMethodContext::SetRestoreAfterFocusLost()
*/
- void SetRestoreAfterFocusLost( bool toggle ) override;
+ void SetRestoreAfterFocusLost(bool toggle) override;
/**
* @copydoc Dali::InputMethodContext::PreEditChanged()
*/
- void PreEditChanged( void* data, ImfContext* imfContext, void* eventInfo ) override;
+ void PreEditChanged(void* data, ImfContext* imfContext, void* eventInfo) override;
/**
* @copydoc Dali::InputMethodContext::NotifyCursorPosition()
*/
- void CommitReceived( void* data, ImfContext* imfContext, void* eventInfo ) override;
+ void CommitReceived(void* data, ImfContext* imfContext, void* eventInfo) override;
/**
* @copydoc Dali::InputMethodContext::NotifyCursorPosition()
*/
- bool RetrieveSurrounding( void* data, ImfContext* imfContext, char** text, int* cursorPosition ) override;
+ bool RetrieveSurrounding(void* data, ImfContext* imfContext, char** text, int* cursorPosition) override;
/**
* @copydoc Dali::InputMethodContext::DeleteSurrounding()
*/
- void DeleteSurrounding( void* data, ImfContext* imfContext, void* eventInfo ) override;
+ void DeleteSurrounding(void* data, ImfContext* imfContext, void* eventInfo) override;
/**
* @copydoc Dali::InputMethodContext::SendPrivateCommand()
*/
- void SendPrivateCommand( void* data, ImfContext* imfContext, void* eventInfo ) override;
+ void SendPrivateCommand(void* data, ImfContext* imfContext, void* eventInfo) override;
/**
* @copydoc Dali::InputMethodContext::SendCommitContent()
*/
- void SendCommitContent( void* data, ImfContext* imfContext, void* eventInfo ) override;
+ void SendCommitContent(void* data, ImfContext* imfContext, void* eventInfo) override;
// Cursor related
/**
/**
* @copydoc Dali::InputMethodContext::SetCursorPosition()
*/
- void SetCursorPosition( unsigned int cursorPosition ) override;
+ void SetCursorPosition(unsigned int cursorPosition) override;
/**
* @copydoc Dali::InputMethodContext::GetCursorPosition()
/**
* @copydoc Dali::InputMethodContext::SetSurroundingText()
*/
- void SetSurroundingText( const std::string& text ) override;
+ void SetSurroundingText(const std::string& text) override;
/**
* @copydoc Dali::InputMethodContext::GetSurroundingText()
/**
* @copydoc Dali::InputMethodContext::NotifyTextInputMultiLine()
*/
- void NotifyTextInputMultiLine( bool multiLine ) override;
+ void NotifyTextInputMultiLine(bool multiLine) override;
/**
* @copydoc Dali::InputMethodContext::GetTextDirection()
/**
* @copydoc Dali::InputMethodContext::ApplyOptions()
*/
- void ApplyOptions( const InputMethodOptions& options ) override;
+ void ApplyOptions(const InputMethodOptions& options) override;
/**
* @copydoc Dali::InputMethodContext::SetInputPanelData()
*/
- void SetInputPanelData( const std::string& data ) override;
+ void SetInputPanelData(const std::string& data) override;
/**
* @copydoc Dali::InputMethodContext::GetInputPanelData()
*/
- void GetInputPanelData( std::string& data ) override;
+ void GetInputPanelData(std::string& data) override;
/**
* @copydoc Dali::InputMethodContext::GetInputPanelState()
/**
* @copydoc Dali::InputMethodContext::SetReturnKeyState()
*/
- void SetReturnKeyState( bool visible ) override;
+ void SetReturnKeyState(bool visible) override;
/**
* @copydoc Dali::InputMethodContext::AutoEnableInputPanel()
*/
- void AutoEnableInputPanel( bool enabled ) override;
+ void AutoEnableInputPanel(bool enabled) override;
/**
* @copydoc Dali::InputMethodContext::ShowInputPanel()
/**
* @copydoc Dali::InputMethodContext::SetContentMIMETypes()
*/
- void SetContentMIMETypes( const std::string& mimeTypes ) override;
+ void SetContentMIMETypes(const std::string& mimeTypes) override;
/**
* @copydoc Dali::InputMethodContext::FilterEventKey()
*/
- bool FilterEventKey( const Dali::KeyEvent& keyEvent ) override;
+ bool FilterEventKey(const Dali::KeyEvent& keyEvent) override;
/**
* @copydoc Dali::InputMethodContext::AllowTextPrediction()
*/
- void AllowTextPrediction( bool prediction ) override;
+ void AllowTextPrediction(bool prediction) override;
/**
* @copydoc Dali::InputMethodContext::IsTextPredictionAllowed()
/**
* @copydoc Dali::InputMethodContext::SetInputPanelLanguage()
*/
- void SetInputPanelLanguage( Dali::InputMethodContext::InputPanelLanguage language ) override;
+ void SetInputPanelLanguage(Dali::InputMethodContext::InputPanelLanguage language) override;
/**
* @copydoc Dali::InputMethodContext::GetInputPanelLanguage()
/**
* @copydoc Dali::InputMethodContext::SetInputPanelPosition()
*/
- void SetInputPanelPosition( unsigned int x, unsigned int y ) override;
+ void SetInputPanelPosition(unsigned int x, unsigned int y) override;
/**
* @copydoc Dali::InputMethodContext::GetPreeditStyle()
*/
- void GetPreeditStyle( Dali::InputMethodContext::PreEditAttributeDataContainer& attrs ) const override;
+ void GetPreeditStyle(Dali::InputMethodContext::PreEditAttributeDataContainer& attrs) const override;
public:
-
/**
* Destructor.
*/
virtual ~InputMethodContextGeneric();
private:
-
// Undefined copy constructor
- InputMethodContextGeneric( const InputMethodContextGeneric& inputMethodContext) = delete;
+ InputMethodContextGeneric(const InputMethodContextGeneric& inputMethodContext) = delete;
// Undefined assignment operator
- InputMethodContextGeneric& operator=( const InputMethodContextGeneric& inputMethodContext ) = delete;
+ InputMethodContextGeneric& operator=(const InputMethodContextGeneric& inputMethodContext) = delete;
};
} // namespace Adaptor
#define DALI_INTERNAL_INPUT_LINUX_DALI_ECORE_IMF_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
#pragma GCC system_header
#include <Ecore_IMF.h>
-
-
#endif /* DALI_INTERNAL_INPUT_LINUX_DALI_ECORE_IMF_H */
#pragma once
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
class RenderSurface;
namespace Internal
{
-
namespace Adaptor
{
-
class InputMethodContextCocoa : public Dali::Internal::Adaptor::InputMethodContext, public Dali::ConnectionTracker
{
public:
* @param[in] actor The actor that uses the new InputMethodContext instance.
* @return InputMethodContext pointer
*/
- static InputMethodContextPtr New( Dali::Actor actor );
+ static InputMethodContextPtr New(Dali::Actor actor);
/**
* Constructor
* @param[in] win32Window, The window is created by application.
*/
- explicit InputMethodContextCocoa( Dali::Actor actor );
+ explicit InputMethodContextCocoa(Dali::Actor actor);
public:
-
/**
* @brief Initializes member data.
*/
/**
* @copydoc Dali::InputMethodContext::SetRestoreAfterFocusLost()
*/
- void SetRestoreAfterFocusLost( bool toggle ) override;
+ void SetRestoreAfterFocusLost(bool toggle) override;
/**
* @copydoc Dali::InputMethodContext::PreEditChanged()
*/
- void PreEditChanged( void* data, ImfContext* imfContext, void* eventInfo ) override;
+ void PreEditChanged(void* data, ImfContext* imfContext, void* eventInfo) override;
/**
* @copydoc Dali::InputMethodContext::NotifyCursorPosition()
*/
- void CommitReceived( void* data, ImfContext* imfContext, void* eventInfo ) override;
+ void CommitReceived(void* data, ImfContext* imfContext, void* eventInfo) override;
/**
* @copydoc Dali::InputMethodContext::NotifyCursorPosition()
*/
- bool RetrieveSurrounding( void* data, ImfContext* imfContext, char** text, int* cursorPosition ) override;
+ bool RetrieveSurrounding(void* data, ImfContext* imfContext, char** text, int* cursorPosition) override;
/**
* @copydoc Dali::InputMethodContext::DeleteSurrounding()
*/
- void DeleteSurrounding( void* data, ImfContext* imfContext, void* eventInfo ) override;
+ void DeleteSurrounding(void* data, ImfContext* imfContext, void* eventInfo) override;
/**
* @copydoc Dali::InputMethodContext::SendPrivateCommand()
*/
- void SendPrivateCommand( void* data, ImfContext* imfContext, void* eventInfo ) override
- {}
+ void SendPrivateCommand(void* data, ImfContext* imfContext, void* eventInfo) override
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::SendCommitContent()
*/
- void SendCommitContent( void* data, ImfContext* imfContext, void* eventInfo ) override
- {}
+ void SendCommitContent(void* data, ImfContext* imfContext, void* eventInfo) override
+ {
+ }
// Cursor related
/**
/**
* @copydoc Dali::InputMethodContext::SetCursorPosition()
*/
- void SetCursorPosition( unsigned int cursorPosition ) override;
+ void SetCursorPosition(unsigned int cursorPosition) override;
/**
* @copydoc Dali::InputMethodContext::GetCursorPosition()
/**
* @copydoc Dali::InputMethodContext::SetSurroundingText()
*/
- void SetSurroundingText( const std::string& text ) override;
+ void SetSurroundingText(const std::string& text) override;
/**
* @copydoc Dali::InputMethodContext::GetSurroundingText()
/**
* @copydoc Dali::InputMethodContext::NotifyTextInputMultiLine()
*/
- void NotifyTextInputMultiLine( bool multiLine ) override;
+ void NotifyTextInputMultiLine(bool multiLine) override;
/**
* @copydoc Dali::InputMethodContext::GetTextDirection()
/**
* @copydoc Dali::InputMethodContext::ApplyOptions()
*/
- void ApplyOptions( const InputMethodOptions& options ) override;
+ void ApplyOptions(const InputMethodOptions& options) override;
/**
* @copydoc Dali::InputMethodContext::SetInputPanelData()
*/
- void SetInputPanelData( const std::string& data ) override;
+ void SetInputPanelData(const std::string& data) override;
/**
* @copydoc Dali::InputMethodContext::GetInputPanelData()
*/
- void GetInputPanelData( std::string& data ) override;
+ void GetInputPanelData(std::string& data) override;
/**
* @copydoc Dali::InputMethodContext::GetInputPanelState()
/**
* @copydoc Dali::InputMethodContext::SetReturnKeyState()
*/
- void SetReturnKeyState( bool visible ) override;
+ void SetReturnKeyState(bool visible) override;
/**
* @copydoc Dali::InputMethodContext::AutoEnableInputPanel()
*/
- void AutoEnableInputPanel( bool enabled ) override;
+ void AutoEnableInputPanel(bool enabled) override;
/**
* @copydoc Dali::InputMethodContext::ShowInputPanel()
/**
* @copydoc Dali::InputMethodContext::SetContentMIMETypes()
*/
- void SetContentMIMETypes( const std::string& mimeTypes ) override;
+ void SetContentMIMETypes(const std::string& mimeTypes) override;
/**
* @copydoc Dali::InputMethodContext::FilterEventKey()
*/
- bool FilterEventKey( const Dali::KeyEvent& keyEvent ) override;
+ bool FilterEventKey(const Dali::KeyEvent& keyEvent) override;
/**
* @copydoc Dali::InputMethodContext::SetInputPanelLanguage()
*/
- void SetInputPanelLanguage( Dali::InputMethodContext::InputPanelLanguage language ) override;
+ void SetInputPanelLanguage(Dali::InputMethodContext::InputPanelLanguage language) override;
/**
* @copydoc Dali::InputMethodContext::GetInputPanelLanguage()
/**
* @copydoc Dali::InputMethodContext::SetInputPanelPosition()
*/
- void SetInputPanelPosition( unsigned int x, unsigned int y ) override;
+ void SetInputPanelPosition(unsigned int x, unsigned int y) override;
/**
* @copydoc Dali::InputMethodContext::GetPreeditStyle()
*/
- void GetPreeditStyle( Dali::InputMethodContext::PreEditAttributeDataContainer& attrs ) const override;
+ void GetPreeditStyle(Dali::InputMethodContext::PreEditAttributeDataContainer& attrs) const override;
private:
-
/**
* @brief Process event key down, whether filter a key to isf.
*
* @param[in] keyEvent The event key to be handled.
* @return Whether the event key is handled.
*/
- bool ProcessEventKeyDown( const Dali::KeyEvent& keyEvent );
+ bool ProcessEventKeyDown(const Dali::KeyEvent& keyEvent);
/**
* @brief Process event key up, whether filter a key to isf.
* @param[in] keyEvent The event key to be handled.
* @return Whether the event key is handled.
*/
- bool ProcessEventKeyUp( const Dali::KeyEvent& keyEvent );
+ bool ProcessEventKeyUp(const Dali::KeyEvent& keyEvent);
/**
* Called when the binded actor is added to a window.
*/
- void OnStaged( Dali::Actor actor );
+ void OnStaged(Dali::Actor actor);
public:
-
/**
* Destructor.
*/
virtual ~InputMethodContextCocoa();
private:
-
// Undefined copy constructor
- InputMethodContextCocoa( const InputMethodContextCocoa& inputMethodContext) = delete;
+ InputMethodContextCocoa(const InputMethodContextCocoa& inputMethodContext) = delete;
// Undefined assignment operator
- InputMethodContextCocoa& operator=( const InputMethodContextCocoa& inputMethodContext ) = delete;
+ InputMethodContextCocoa& operator=(const InputMethodContextCocoa& inputMethodContext) = delete;
private:
- int mIMFCursorPosition;
+ int mIMFCursorPosition;
std::string mSurroundingText;
- bool mRestoreAfterFocusLost:1; ///< Whether the keyboard needs to be restored (activated ) after focus regained.
- bool mIdleCallbackConnected:1; ///< Whether the idle callback is already connected.
- InputMethodOptions mOptions;
+ bool mRestoreAfterFocusLost : 1; ///< Whether the keyboard needs to be restored (activated ) after focus regained.
+ bool mIdleCallbackConnected : 1; ///< Whether the idle callback is already connected.
+ InputMethodOptions mOptions;
+
Dali::InputMethodContext::PreEditAttributeDataContainer mPreeditAttrs; ///< Stores preedit attribute data
};
#define DALI_INTERNAL_ECORE_VIRTUAL_KEYBOARD_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Implementation of the virtual keyboard namespace
*/
namespace VirtualKeyboard
{
-
/**
* Connect the virtual keyboard callbacks.
* To get the virtual keyboard callbacks then you have to connect these callback.
* If you don't connect callbacks, you can't get virtual keyboard signals.
* The signals are StatusChangedSignal, ResizedSignal and LanguageChangedSignal.
*/
-void ConnectCallbacks( Ecore_IMF_Context *imfContext );
+void ConnectCallbacks(Ecore_IMF_Context* imfContext);
/**
* Disconnect the virtual keyboard callbacks.
* The signals are StatusChangedSignal, ResizedSignal and LanguageChangedSignal.
*/
-void DisconnectCallbacks( Ecore_IMF_Context *imfContext );
+void DisconnectCallbacks(Ecore_IMF_Context* imfContext);
} // namespace VirtualKeyboard
#define DALI_INTERNAL_INPUT_METHOD_CONTEXT_IMPL_ECORE_WL_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/internal/input/linux/dali-ecore-imf.h>
#include <dali/internal/system/linux/dali-ecore.h>
+#include <dali/integration-api/events/key-event-integ.h>
#include <dali/public-api/common/vector-wrapper.h>
#include <dali/public-api/object/base-object.h>
-#include <dali/integration-api/events/key-event-integ.h>
// INTERNAL INCLUDES
#include <dali/internal/input/common/input-method-context-impl.h>
namespace Dali
{
-
class RenderSurface;
namespace Internal
{
-
namespace Adaptor
{
-
class InputMethodContextEcoreWl : public Dali::Internal::Adaptor::InputMethodContext, public Dali::ConnectionTracker
{
public:
-
/**
* @brief Creates a new InputMethodContext handle
*
* @param[in] actor The actor that uses the new InputMethodContext instance.
* @return InputMethodContext pointer
*/
- static InputMethodContextPtr New( Dali::Actor actor );
+ static InputMethodContextPtr New(Dali::Actor actor);
/**
* @brief Initializes member data.
void Initialize() override;
public:
-
/**
* @copydoc Dali::InputMethodContext::Finalize()
*/
/**
* @copydoc Dali::InputMethodContext::SetRestoreAfterFocusLost()
*/
- void SetRestoreAfterFocusLost( bool toggle ) override;
+ void SetRestoreAfterFocusLost(bool toggle) override;
/**
* @copydoc Dali::InputMethodContext::PreEditChanged()
*/
- void PreEditChanged( void *data, ImfContext *imfContext, void *eventInfo ) override;
+ void PreEditChanged(void* data, ImfContext* imfContext, void* eventInfo) override;
/**
* @copydoc Dali::InputMethodContext::NotifyCursorPosition()
*/
- void CommitReceived( void *data, ImfContext *imfContext, void *eventInfo ) override;
+ void CommitReceived(void* data, ImfContext* imfContext, void* eventInfo) override;
/**
* @copydoc Dali::InputMethodContext::NotifyCursorPosition()
*/
- bool RetrieveSurrounding( void *data, ImfContext *imfContext, char** text, int* cursorPosition ) override;
+ bool RetrieveSurrounding(void* data, ImfContext* imfContext, char** text, int* cursorPosition) override;
/**
* @copydoc Dali::InputMethodContext::DeleteSurrounding()
*/
- void DeleteSurrounding( void *data, ImfContext *imfContext, void *eventInfo ) override;
+ void DeleteSurrounding(void* data, ImfContext* imfContext, void* eventInfo) override;
- /**
+ /**
* @copydoc Dali::InputMethodContext::SendPrivateCommand()
*/
- void SendPrivateCommand( void* data, ImfContext* imfContext, void* eventInfo ) override;
+ void SendPrivateCommand(void* data, ImfContext* imfContext, void* eventInfo) override;
/**
* @copydoc Dali::InputMethodContext::SendCommitContent()
*/
- void SendCommitContent( void* data, ImfContext* imfContext, void* eventInfo ) override;
+ void SendCommitContent(void* data, ImfContext* imfContext, void* eventInfo) override;
// Cursor related
/**
/**
* @copydoc Dali::InputMethodContext::SetCursorPosition()
*/
- void SetCursorPosition( unsigned int cursorPosition ) override;
+ void SetCursorPosition(unsigned int cursorPosition) override;
/**
* @copydoc Dali::InputMethodContext::GetCursorPosition()
/**
* @copydoc Dali::InputMethodContext::SetSurroundingText()
*/
- void SetSurroundingText( const std::string& text ) override;
+ void SetSurroundingText(const std::string& text) override;
/**
* @copydoc Dali::InputMethodContext::GetSurroundingText()
/**
* @copydoc Dali::InputMethodContext::NotifyTextInputMultiLine()
*/
- void NotifyTextInputMultiLine( bool multiLine ) override;
+ void NotifyTextInputMultiLine(bool multiLine) override;
/**
* @copydoc Dali::InputMethodContext::GetTextDirection()
/**
* @copydoc Dali::InputMethodContext::ApplyOptions()
*/
- void ApplyOptions( const InputMethodOptions& options ) override;
+ void ApplyOptions(const InputMethodOptions& options) override;
/**
* @copydoc Dali::InputMethodContext::SetInputPanelData()
*/
- void SetInputPanelData( const std::string& data ) override;
+ void SetInputPanelData(const std::string& data) override;
/**
* @copydoc Dali::InputMethodContext::GetInputPanelData()
*/
- void GetInputPanelData( std::string& data ) override;
+ void GetInputPanelData(std::string& data) override;
/**
* @copydoc Dali::InputMethodContext::GetInputPanelState()
/**
* @copydoc Dali::InputMethodContext::SetReturnKeyState()
*/
- void SetReturnKeyState( bool visible ) override;
+ void SetReturnKeyState(bool visible) override;
/**
* @copydoc Dali::InputMethodContext::AutoEnableInputPanel()
*/
- void AutoEnableInputPanel( bool enabled ) override;
+ void AutoEnableInputPanel(bool enabled) override;
/**
* @copydoc Dali::InputMethodContext::ShowInputPanel()
/**
* @copydoc Dali::InputMethodContext::SetContentMIMETypes()
*/
- void SetContentMIMETypes( const std::string& mimeTypes ) override;
+ void SetContentMIMETypes(const std::string& mimeTypes) override;
/**
* @copydoc Dali::InputMethodContext::FilterEventKey()
*/
- bool FilterEventKey( const Dali::KeyEvent& keyEvent ) override;
+ bool FilterEventKey(const Dali::KeyEvent& keyEvent) override;
/**
* @copydoc Dali::InputMethodContext::AllowTextPrediction()
*/
- void AllowTextPrediction( bool prediction ) override;
+ void AllowTextPrediction(bool prediction) override;
/**
* @copydoc Dali::InputMethodContext::IsTextPredictionAllowed()
/**
* @copydoc Dali::InputMethodContext::SetInputPanelLanguage()
*/
- void SetInputPanelLanguage( Dali::InputMethodContext::InputPanelLanguage language ) override;
+ void SetInputPanelLanguage(Dali::InputMethodContext::InputPanelLanguage language) override;
/**
* @copydoc Dali::InputMethodContext::GetInputPanelLanguage()
/**
* @copydoc Dali::InputMethodContext::SetInputPanelPosition()
*/
- void SetInputPanelPosition( unsigned int x, unsigned int y ) override;
+ void SetInputPanelPosition(unsigned int x, unsigned int y) override;
/**
* @copydoc Dali::InputMethodContext::GetPreeditStyle()
*/
- void GetPreeditStyle( Dali::InputMethodContext::PreEditAttributeDataContainer& attrs ) const override;
+ void GetPreeditStyle(Dali::InputMethodContext::PreEditAttributeDataContainer& attrs) const override;
private:
/**
void DeleteContext();
private:
-
/**
* @brief Process event key down, whether filter a key to isf.
*
* @param[in] keyEvent The event key to be handled.
* @return Whether the event key is handled.
*/
- bool ProcessEventKeyDown( const Dali::KeyEvent& keyEvent );
+ bool ProcessEventKeyDown(const Dali::KeyEvent& keyEvent);
/**
* @brief Process event key up, whether filter a key to isf.
* @param[in] keyEvent The event key to be handled.
* @return Whether the event key is handled.
*/
- bool ProcessEventKeyUp( const Dali::KeyEvent& keyEvent );
+ bool ProcessEventKeyUp(const Dali::KeyEvent& keyEvent);
/**
* Ecore_Event_Modifier enums in Ecore_Input.h do not match Ecore_IMF_Keyboard_Modifiers in Ecore_IMF.h.
* @param[in] ecoreModifier the Ecore_Event_Modifier input.
* @return the Ecore_IMF_Keyboard_Modifiers output.
*/
- Ecore_IMF_Keyboard_Modifiers EcoreInputModifierToEcoreIMFModifier( unsigned int ecoreModifier );
+ Ecore_IMF_Keyboard_Modifiers EcoreInputModifierToEcoreIMFModifier(unsigned int ecoreModifier);
/**
* EcoreInputModifierToEcoreIMFLock function converts from Ecore_Event_Modifier to Ecore_IMF_Keyboard_Locks enums.
* @param[in] modifier the Ecore_Event_Modifier input.
* @return the Ecore_IMF_Keyboard_Locks output.
*/
- Ecore_IMF_Keyboard_Locks EcoreInputModifierToEcoreIMFLock( unsigned int modifier );
+ Ecore_IMF_Keyboard_Locks EcoreInputModifierToEcoreIMFLock(unsigned int modifier);
/**
* Called when the binded actor is added to a window.
*/
- void OnStaged( Dali::Actor actor );
+ void OnStaged(Dali::Actor actor);
private:
/**
* @brief Constructor.
*/
- explicit InputMethodContextEcoreWl( Dali::Actor actor );
+ explicit InputMethodContextEcoreWl(Dali::Actor actor);
protected:
/**
private:
// Undefined copy constructor
- explicit InputMethodContextEcoreWl( const InputMethodContextEcoreWl& inputMethodContext) = delete;
+ explicit InputMethodContextEcoreWl(const InputMethodContextEcoreWl& inputMethodContext) = delete;
// Undefined assignment operator
- InputMethodContextEcoreWl& operator=( const InputMethodContextEcoreWl& inputMethodContext ) = delete;
+ InputMethodContextEcoreWl& operator=(const InputMethodContextEcoreWl& inputMethodContext) = delete;
private:
Ecore_IMF_Context* mIMFContext;
- int mIMFCursorPosition;
- std::string mSurroundingText;
+ int mIMFCursorPosition;
+ std::string mSurroundingText;
- bool mRestoreAfterFocusLost:1; ///< Whether the keyboard needs to be restored (activated ) after focus regained.
- bool mIdleCallbackConnected:1; ///< Whether the idle callback is already connected.
+ bool mRestoreAfterFocusLost : 1; ///< Whether the keyboard needs to be restored (activated ) after focus regained.
+ bool mIdleCallbackConnected : 1; ///< Whether the idle callback is already connected.
std::vector<Dali::Integration::KeyEvent> mKeyEvents; ///< Stores key events to be sent from idle call-back.
- InputMethodOptions mOptions;
+ InputMethodOptions mOptions;
+
Dali::InputMethodContext::PreEditAttributeDataContainer mPreeditAttrs; ///< Stores preedit attribute data
int mWindowId;
};
-
} // namespace Adaptor
} // namespace Internal
#define DALI_INTERNAL_INPUT_UBUNTU_X11_DALI_ECORE_INPUT_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
#pragma GCC system_header
#include <Ecore_Input.h>
-
-
#endif /* DALI_INTERNAL_INPUT_UBUNTU_X11_DALI_ECORE_INPUT_H */
#define DALI_INTERNAL_INPUT_METHOD_CONTEXT_IMPL_X_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
class RenderSurface;
namespace Internal
{
-
namespace Adaptor
{
-
class InputMethodContextX : public Dali::Internal::Adaptor::InputMethodContext, public Dali::ConnectionTracker
{
public:
* @param[in] actor The actor that uses the new InputMethodContext instance.
* @return InputMethodContext pointer
*/
- static InputMethodContextPtr New( Dali::Actor actor );
+ static InputMethodContextPtr New(Dali::Actor actor);
/**
* Constructor
* @param[in] actor The actor that uses the new InputMethodContext instance.
*/
- explicit InputMethodContextX( Dali::Actor actor );
+ explicit InputMethodContextX(Dali::Actor actor);
public:
-
/**
* @brief Initializes member data.
*/
/**
* @copydoc Dali::InputMethodContext::SetRestoreAfterFocusLost()
*/
- void SetRestoreAfterFocusLost( bool toggle ) override;
+ void SetRestoreAfterFocusLost(bool toggle) override;
/**
* @copydoc Dali::InputMethodContext::PreEditChanged()
*/
- void PreEditChanged( void* data, ImfContext* imfContext, void* eventInfo ) override;
+ void PreEditChanged(void* data, ImfContext* imfContext, void* eventInfo) override;
/**
* @copydoc Dali::InputMethodContext::NotifyCursorPosition()
*/
- void CommitReceived( void* data, ImfContext* imfContext, void* eventInfo ) override;
+ void CommitReceived(void* data, ImfContext* imfContext, void* eventInfo) override;
/**
* @copydoc Dali::InputMethodContext::NotifyCursorPosition()
*/
- bool RetrieveSurrounding( void* data, ImfContext* imfContext, char** text, int* cursorPosition ) override;
+ bool RetrieveSurrounding(void* data, ImfContext* imfContext, char** text, int* cursorPosition) override;
/**
* @copydoc Dali::InputMethodContext::DeleteSurrounding()
*/
- void DeleteSurrounding( void* data, ImfContext* imfContext, void* eventInfo ) override;
+ void DeleteSurrounding(void* data, ImfContext* imfContext, void* eventInfo) override;
/**
* @copydoc Dali::InputMethodContext::SendPrivateCommand()
*/
- void SendPrivateCommand( void* data, ImfContext* imfContext, void* eventInfo ) override
- {}
+ void SendPrivateCommand(void* data, ImfContext* imfContext, void* eventInfo) override
+ {
+ }
/**
* @copydoc Dali::InputMethodContext::SendCommitContent()
*/
- void SendCommitContent( void* data, ImfContext* imfContext, void* eventInfo ) override
- {}
+ void SendCommitContent(void* data, ImfContext* imfContext, void* eventInfo) override
+ {
+ }
// Cursor related
/**
/**
* @copydoc Dali::InputMethodContext::SetCursorPosition()
*/
- void SetCursorPosition( unsigned int cursorPosition ) override;
+ void SetCursorPosition(unsigned int cursorPosition) override;
/**
* @copydoc Dali::InputMethodContext::GetCursorPosition()
/**
* @copydoc Dali::InputMethodContext::SetSurroundingText()
*/
- void SetSurroundingText( const std::string& text ) override;
+ void SetSurroundingText(const std::string& text) override;
/**
* @copydoc Dali::InputMethodContext::GetSurroundingText()
/**
* @copydoc Dali::InputMethodContext::NotifyTextInputMultiLine()
*/
- void NotifyTextInputMultiLine( bool multiLine ) override;
+ void NotifyTextInputMultiLine(bool multiLine) override;
/**
* @copydoc Dali::InputMethodContext::GetTextDirection()
/**
* @copydoc Dali::InputMethodContext::ApplyOptions()
*/
- void ApplyOptions( const InputMethodOptions& options ) override;
+ void ApplyOptions(const InputMethodOptions& options) override;
/**
* @copydoc Dali::InputMethodContext::SetInputPanelData()
*/
- void SetInputPanelData( const std::string& data ) override;
+ void SetInputPanelData(const std::string& data) override;
/**
* @copydoc Dali::InputMethodContext::GetInputPanelData()
*/
- void GetInputPanelData( std::string& data ) override;
+ void GetInputPanelData(std::string& data) override;
/**
* @copydoc Dali::InputMethodContext::GetInputPanelState()
/**
* @copydoc Dali::InputMethodContext::SetReturnKeyState()
*/
- void SetReturnKeyState( bool visible ) override;
+ void SetReturnKeyState(bool visible) override;
/**
* @copydoc Dali::InputMethodContext::AutoEnableInputPanel()
*/
- void AutoEnableInputPanel( bool enabled ) override;
+ void AutoEnableInputPanel(bool enabled) override;
/**
* @copydoc Dali::InputMethodContext::ShowInputPanel()
/**
* @copydoc Dali::InputMethodContext::SetContentMIMETypes()
*/
- void SetContentMIMETypes( const std::string& mimeTypes ) override;
+ void SetContentMIMETypes(const std::string& mimeTypes) override;
/**
* @copydoc Dali::InputMethodContext::FilterEventKey()
*/
- bool FilterEventKey( const Dali::KeyEvent& keyEvent ) override;
+ bool FilterEventKey(const Dali::KeyEvent& keyEvent) override;
/**
* @copydoc Dali::InputMethodContext::AllowTextPrediction()
*/
- void AllowTextPrediction( bool prediction ) override;
+ void AllowTextPrediction(bool prediction) override;
/**
* @copydoc Dali::InputMethodContext::IsTextPredictionAllowed()
/**
* @copydoc Dali::InputMethodContext::SetInputPanelLanguage()
*/
- void SetInputPanelLanguage( Dali::InputMethodContext::InputPanelLanguage language ) override;
+ void SetInputPanelLanguage(Dali::InputMethodContext::InputPanelLanguage language) override;
/**
* @copydoc Dali::InputMethodContext::GetInputPanelLanguage()
/**
* @copydoc Dali::InputMethodContext::SetInputPanelPosition()
*/
- void SetInputPanelPosition( unsigned int x, unsigned int y ) override;
+ void SetInputPanelPosition(unsigned int x, unsigned int y) override;
/**
* @copydoc Dali::InputMethodContext::GetPreeditStyle()
*/
- void GetPreeditStyle( Dali::InputMethodContext::PreEditAttributeDataContainer& attrs ) const override;
+ void GetPreeditStyle(Dali::InputMethodContext::PreEditAttributeDataContainer& attrs) const override;
private:
/**
void DeleteContext();
private:
-
/**
* @brief Process event key down, whether filter a key to isf.
*
* @param[in] keyEvent The event key to be handled.
* @return Whether the event key is handled.
*/
- bool ProcessEventKeyDown( const Dali::KeyEvent& keyEvent );
+ bool ProcessEventKeyDown(const Dali::KeyEvent& keyEvent);
/**
* @brief Process event key up, whether filter a key to isf.
* @param[in] keyEvent The event key to be handled.
* @return Whether the event key is handled.
*/
- bool ProcessEventKeyUp( const Dali::KeyEvent& keyEvent );
+ bool ProcessEventKeyUp(const Dali::KeyEvent& keyEvent);
/**
* Ecore_Event_Modifier enums in Ecore_Input.h do not match Ecore_IMF_Keyboard_Modifiers in Ecore_IMF.h.
* @param[in] ecoreModifier the Ecore_Event_Modifier input.
* @return the Ecore_IMF_Keyboard_Modifiers output.
*/
- Ecore_IMF_Keyboard_Modifiers EcoreInputModifierToEcoreIMFModifier( unsigned int ecoreModifier );
+ Ecore_IMF_Keyboard_Modifiers EcoreInputModifierToEcoreIMFModifier(unsigned int ecoreModifier);
/**
* EcoreInputModifierToEcoreIMFLock function converts from Ecore_Event_Modifier to Ecore_IMF_Keyboard_Locks enums.
* @param[in] modifier the Ecore_Event_Modifier input.
* @return the Ecore_IMF_Keyboard_Locks output.
*/
- Ecore_IMF_Keyboard_Locks EcoreInputModifierToEcoreIMFLock( unsigned int modifier );
+ Ecore_IMF_Keyboard_Locks EcoreInputModifierToEcoreIMFLock(unsigned int modifier);
/**
* Called when the binded actor is added to a window.
*/
- void OnStaged( Dali::Actor actor );
+ void OnStaged(Dali::Actor actor);
public:
-
/**
* Destructor.
*/
virtual ~InputMethodContextX();
private:
-
// Undefined copy constructor
- InputMethodContextX( const InputMethodContextX& inputMethodContext) = delete;
+ InputMethodContextX(const InputMethodContextX& inputMethodContext) = delete;
// Undefined assignment operator
- InputMethodContextX& operator=( const InputMethodContextX& inputMethodContext ) = delete;
+ InputMethodContextX& operator=(const InputMethodContextX& inputMethodContext) = delete;
private:
Ecore_IMF_Context* mIMFContext;
- Ecore_X_Window mEcoreXwin;
- int mIMFCursorPosition;
- std::string mSurroundingText;
+ Ecore_X_Window mEcoreXwin;
+ int mIMFCursorPosition;
+ std::string mSurroundingText;
+
+ bool mRestoreAfterFocusLost : 1; ///< Whether the keyboard needs to be restored (activated ) after focus regained.
+ bool mIdleCallbackConnected : 1; ///< Whether the idle callback is already connected.
+ InputMethodOptions mOptions;
- bool mRestoreAfterFocusLost:1; ///< Whether the keyboard needs to be restored (activated ) after focus regained.
- bool mIdleCallbackConnected:1; ///< Whether the idle callback is already connected.
- InputMethodOptions mOptions;
Dali::InputMethodContext::PreEditAttributeDataContainer mPreeditAttrs; ///< Stores preedit attribute data
};
#define DALI_INTERNAL_INPUT_METHOD_CONTEXT_IMPL_WIN_H\r
\r
/*\r
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.\r
+ * Copyright (c) 2021 Samsung Electronics Co., Ltd.\r
*\r
* Licensed under the Apache License, Version 2.0 (the "License");\r
* you may not use this file except in compliance with the License.\r
\r
namespace Dali\r
{\r
-\r
class RenderSurface;\r
\r
namespace Internal\r
{\r
-\r
namespace Adaptor\r
{\r
-\r
class InputMethodContextWin : public Dali::Internal::Adaptor::InputMethodContext, public Dali::ConnectionTracker\r
{\r
public:\r
* @param[in] actor The actor that uses the new InputMethodContext instance.\r
* @return InputMethodContext pointer\r
*/\r
- static InputMethodContextPtr New( Dali::Actor actor );\r
+ static InputMethodContextPtr New(Dali::Actor actor);\r
\r
/**\r
* Constructor\r
* @param[in] win32Window, The window is created by application.\r
*/\r
- explicit InputMethodContextWin( Dali::Actor actor );\r
+ explicit InputMethodContextWin(Dali::Actor actor);\r
\r
public:\r
-\r
/**\r
* @brief Initializes member data.\r
*/\r
/**\r
* @copydoc Dali::InputMethodContext::SetRestoreAfterFocusLost()\r
*/\r
- void SetRestoreAfterFocusLost( bool toggle ) override;\r
+ void SetRestoreAfterFocusLost(bool toggle) override;\r
\r
/**\r
* @copydoc Dali::InputMethodContext::PreEditChanged()\r
*/\r
- void PreEditChanged( void* data, ImfContext* imfContext, void* eventInfo ) override;\r
+ void PreEditChanged(void* data, ImfContext* imfContext, void* eventInfo) override;\r
\r
/**\r
* @copydoc Dali::InputMethodContext::NotifyCursorPosition()\r
*/\r
- void CommitReceived( void* data, ImfContext* imfContext, void* eventInfo ) override;\r
+ void CommitReceived(void* data, ImfContext* imfContext, void* eventInfo) override;\r
\r
/**\r
* @copydoc Dali::InputMethodContext::NotifyCursorPosition()\r
*/\r
- bool RetrieveSurrounding( void* data, ImfContext* imfContext, char** text, int* cursorPosition ) override;\r
+ bool RetrieveSurrounding(void* data, ImfContext* imfContext, char** text, int* cursorPosition) override;\r
\r
/**\r
* @copydoc Dali::InputMethodContext::DeleteSurrounding()\r
*/\r
- void DeleteSurrounding( void* data, ImfContext* imfContext, void* eventInfo ) override;\r
+ void DeleteSurrounding(void* data, ImfContext* imfContext, void* eventInfo) override;\r
\r
/**\r
* @copydoc Dali::InputMethodContext::SendPrivateCommand()\r
*/\r
- void SendPrivateCommand( void* data, ImfContext* imfContext, void* eventInfo ) override\r
- {}\r
+ void SendPrivateCommand(void* data, ImfContext* imfContext, void* eventInfo) override\r
+ {\r
+ }\r
\r
/**\r
* @copydoc Dali::InputMethodContext::SendCommitContent()\r
*/\r
- void SendCommitContent( void* data, ImfContext* imfContext, void* eventInfo ) override\r
- {}\r
+ void SendCommitContent(void* data, ImfContext* imfContext, void* eventInfo) override\r
+ {\r
+ }\r
\r
// Cursor related\r
/**\r
/**\r
* @copydoc Dali::InputMethodContext::SetCursorPosition()\r
*/\r
- void SetCursorPosition( unsigned int cursorPosition ) override;\r
+ void SetCursorPosition(unsigned int cursorPosition) override;\r
\r
/**\r
* @copydoc Dali::InputMethodContext::GetCursorPosition()\r
/**\r
* @copydoc Dali::InputMethodContext::SetSurroundingText()\r
*/\r
- void SetSurroundingText( const std::string& text ) override;\r
+ void SetSurroundingText(const std::string& text) override;\r
\r
/**\r
* @copydoc Dali::InputMethodContext::GetSurroundingText()\r
/**\r
* @copydoc Dali::InputMethodContext::NotifyTextInputMultiLine()\r
*/\r
- void NotifyTextInputMultiLine( bool multiLine ) override;\r
+ void NotifyTextInputMultiLine(bool multiLine) override;\r
\r
/**\r
* @copydoc Dali::InputMethodContext::GetTextDirection()\r
/**\r
* @copydoc Dali::InputMethodContext::ApplyOptions()\r
*/\r
- void ApplyOptions( const InputMethodOptions& options ) override;\r
+ void ApplyOptions(const InputMethodOptions& options) override;\r
\r
/**\r
* @copydoc Dali::InputMethodContext::SetInputPanelData()\r
*/\r
- void SetInputPanelData( const std::string& data ) override;\r
+ void SetInputPanelData(const std::string& data) override;\r
\r
/**\r
* @copydoc Dali::InputMethodContext::GetInputPanelData()\r
*/\r
- void GetInputPanelData( std::string& data ) override;\r
+ void GetInputPanelData(std::string& data) override;\r
\r
/**\r
* @copydoc Dali::InputMethodContext::GetInputPanelState()\r
/**\r
* @copydoc Dali::InputMethodContext::SetReturnKeyState()\r
*/\r
- void SetReturnKeyState( bool visible ) override;\r
+ void SetReturnKeyState(bool visible) override;\r
\r
/**\r
* @copydoc Dali::InputMethodContext::AutoEnableInputPanel()\r
*/\r
- void AutoEnableInputPanel( bool enabled ) override;\r
+ void AutoEnableInputPanel(bool enabled) override;\r
\r
/**\r
* @copydoc Dali::InputMethodContext::ShowInputPanel()\r
/**\r
* @copydoc Dali::InputMethodContext::SetContentMIMETypes()\r
*/\r
- void SetContentMIMETypes( const std::string& mimeTypes ) override;\r
+ void SetContentMIMETypes(const std::string& mimeTypes) override;\r
\r
/**\r
* @copydoc Dali::InputMethodContext::FilterEventKey()\r
*/\r
- bool FilterEventKey( const Dali::KeyEvent& keyEvent ) override;\r
+ bool FilterEventKey(const Dali::KeyEvent& keyEvent) override;\r
\r
/**\r
* @copydoc Dali::InputMethodContext::SetInputPanelLanguage()\r
*/\r
- void SetInputPanelLanguage( Dali::InputMethodContext::InputPanelLanguage language ) override;\r
+ void SetInputPanelLanguage(Dali::InputMethodContext::InputPanelLanguage language) override;\r
\r
/**\r
* @copydoc Dali::InputMethodContext::GetInputPanelLanguage()\r
/**\r
* @copydoc Dali::InputMethodContext::SetInputPanelPosition()\r
*/\r
- void SetInputPanelPosition( unsigned int x, unsigned int y ) override;\r
+ void SetInputPanelPosition(unsigned int x, unsigned int y) override;\r
\r
/**\r
* @copydoc Dali::InputMethodContext::GetPreeditStyle()\r
*/\r
- void GetPreeditStyle( Dali::InputMethodContext::PreEditAttributeDataContainer& attrs ) const override;\r
+ void GetPreeditStyle(Dali::InputMethodContext::PreEditAttributeDataContainer& attrs) const override;\r
\r
private:\r
/**\r
* Context created the first time and kept until deleted.\r
* @param[in] win32Window, The window is created by application.\r
*/\r
- void CreateContext( WinWindowHandle win32Window );\r
+ void CreateContext(WinWindowHandle win32Window);\r
\r
/**\r
* @copydoc Dali::InputMethodContext::DeleteContext()\r
void DeleteContext();\r
\r
private:\r
-\r
/**\r
* @brief Process event key down, whether filter a key to isf.\r
*\r
* @param[in] keyEvent The event key to be handled.\r
* @return Whether the event key is handled.\r
*/\r
- bool ProcessEventKeyDown( const Dali::KeyEvent& keyEvent );\r
+ bool ProcessEventKeyDown(const Dali::KeyEvent& keyEvent);\r
\r
/**\r
* @brief Process event key up, whether filter a key to isf.\r
* @param[in] keyEvent The event key to be handled.\r
* @return Whether the event key is handled.\r
*/\r
- bool ProcessEventKeyUp( const Dali::KeyEvent& keyEvent );\r
+ bool ProcessEventKeyUp(const Dali::KeyEvent& keyEvent);\r
\r
/**\r
* Called when the binded actor is added to a window.\r
*/\r
- void OnStaged( Dali::Actor actor );\r
+ void OnStaged(Dali::Actor actor);\r
\r
public:\r
-\r
/**\r
* Destructor.\r
*/\r
virtual ~InputMethodContextWin();\r
\r
private:\r
-\r
// Undefined copy constructor\r
- InputMethodContextWin( const InputMethodContextWin& inputMethodContext) = delete;\r
+ InputMethodContextWin(const InputMethodContextWin& inputMethodContext) = delete;\r
\r
// Undefined assignment operator\r
- InputMethodContextWin& operator=( const InputMethodContextWin& inputMethodContext ) = delete;\r
+ InputMethodContextWin& operator=(const InputMethodContextWin& inputMethodContext) = delete;\r
\r
private:\r
WinWindowHandle mWin32Window;\r
- int mIMFCursorPosition;\r
- std::string mSurroundingText;\r
+ int mIMFCursorPosition;\r
+ std::string mSurroundingText;\r
+\r
+ bool mRestoreAfterFocusLost : 1; ///< Whether the keyboard needs to be restored (activated ) after focus regained.\r
+ bool mIdleCallbackConnected : 1; ///< Whether the idle callback is already connected.\r
+ InputMethodOptions mOptions;\r
\r
- bool mRestoreAfterFocusLost:1; ///< Whether the keyboard needs to be restored (activated ) after focus regained.\r
- bool mIdleCallbackConnected:1; ///< Whether the idle callback is already connected.\r
- InputMethodOptions mOptions;\r
Dali::InputMethodContext::PreEditAttributeDataContainer mPreeditAttrs; ///< Stores preedit attribute data\r
};\r
\r
#define DALI_TIZEN_PLATFORM_ABSTRACTION_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/public-api/adaptor-framework/timer.h>
#include <dali/public-api/dali-adaptor-common.h>
-
// EXTERNAL INCLUDES
+#include <dali/integration-api/platform-abstraction.h>
#include <cstdint>
-#include <string>
#include <memory>
-#include <dali/integration-api/platform-abstraction.h>
+#include <string>
namespace Dali
{
-
class CallbackBase;
namespace TizenPlatform
*/
class TizenPlatformAbstraction : public Integration::PlatformAbstraction
{
-
public: // Construction & Destruction
-
/**
* Constructor
*/
~TizenPlatformAbstraction() override;
public: // PlatformAbstraction overrides
-
/**
* @copydoc PlatformAbstraction::GetClosestImageSize()
*/
- ImageDimensions GetClosestImageSize( const std::string& filename,
- ImageDimensions size,
- FittingMode::Type fittingMode,
- SamplingMode::Type samplingMode,
- bool orientationCorrection ) override;
+ ImageDimensions GetClosestImageSize(const std::string& filename,
+ ImageDimensions size,
+ FittingMode::Type fittingMode,
+ SamplingMode::Type samplingMode,
+ bool orientationCorrection) override;
/**
* @copydoc PlatformAbstraction::GetClosestImageSize()
*/
- ImageDimensions GetClosestImageSize( Integration::ResourcePointer resourceBuffer,
- ImageDimensions size,
- FittingMode::Type fittingMode,
- SamplingMode::Type samplingMode,
- bool orientationCorrection ) override;
+ ImageDimensions GetClosestImageSize(Integration::ResourcePointer resourceBuffer,
+ ImageDimensions size,
+ FittingMode::Type fittingMode,
+ SamplingMode::Type samplingMode,
+ bool orientationCorrection) override;
/**
* @copydoc PlatformAbstraction::LoadImageSynchronously()
/**
* @copydoc PlatformAbstraction::DecodeBuffer()
*/
- Integration::BitmapPtr DecodeBuffer( const Integration::BitmapResourceType& resource, uint8_t * buffer, size_t size ) override;
+ Integration::BitmapPtr DecodeBuffer(const Integration::BitmapResourceType& resource, uint8_t* buffer, size_t size) override;
/**
* @copydoc PlatformAbstraction::LoadShaderBinaryFile()
*/
- bool LoadShaderBinaryFile( const std::string& filename, Dali::Vector< unsigned char >& buffer ) const override;
+ bool LoadShaderBinaryFile(const std::string& filename, Dali::Vector<unsigned char>& buffer) const override;
/**
* @copydoc PlatformAbstraction::SaveShaderBinaryFile()
*/
- bool SaveShaderBinaryFile( const std::string& filename, const unsigned char * buffer, unsigned int numBytes ) const override;
+ bool SaveShaderBinaryFile(const std::string& filename, const unsigned char* buffer, unsigned int numBytes) const override;
/**
* @copydoc PlatformAbstraction::StartTimer()
*/
- uint32_t StartTimer( uint32_t milliseconds, CallbackBase* callback ) override;
+ uint32_t StartTimer(uint32_t milliseconds, CallbackBase* callback) override;
/**
* @copydoc PlatformAbstraction::CancelTimer()
*/
- void CancelTimer ( uint32_t timerId ) override;
+ void CancelTimer(uint32_t timerId) override;
/**
* Sets path for data/resource storage.
* @param[in] path data/resource storage path
*/
- void SetDataStoragePath( const std::string& path );
+ void SetDataStoragePath(const std::string& path);
/**
* Clears the timers that have completed
void CleanupTimers();
private:
-
struct TimerCallback;
/*
*/
void RunTimerFunction(TimerCallback& timerPtr);
- TizenPlatformAbstraction( const TizenPlatformAbstraction& ); ///< Undefined
- TizenPlatformAbstraction& operator=( const TizenPlatformAbstraction& ); ///< Undefined
+ TizenPlatformAbstraction(const TizenPlatformAbstraction&); ///< Undefined
+ TizenPlatformAbstraction& operator=(const TizenPlatformAbstraction&); ///< Undefined
std::string mDataStoragePath;
- std::vector< std::unique_ptr< TimerCallback > > mTimerPairsWaiting;
- std::vector< std::unique_ptr< TimerCallback > > mTimerPairsSpent;
+ std::vector<std::unique_ptr<TimerCallback> > mTimerPairsWaiting;
+ std::vector<std::unique_ptr<TimerCallback> > mTimerPairsSpent;
};
/**
* @param numBytes to store
* @return true if successful, false otherwise
*/
-bool SaveFile( const std::string& filename, const unsigned char * buffer, unsigned int numBytes );
+bool SaveFile(const std::string& filename, const unsigned char* buffer, unsigned int numBytes);
-} // namespace TizenPlatform
+} // namespace TizenPlatform
-} // namespace Dali
+} // namespace Dali
#endif // DALI_TIZEN_PLATFORM_ABSTRACTION_H
#define DALI_TIZEN_PLATFORM_DATA_COMPRESSION_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*
*/
-
namespace Dali
{
namespace TizenPlatform
{
namespace DataCompression
{
-
/**
* Return the maximum size of a buffer required to hold a number of bytes.
* Required because compressing data, can end up being bigger
* @param outputLength size of the output buffer in bytes
* @param encodedSize number of bytes written to outputBuffer
*/
-void EncodeRle( const unsigned char* input,
- const std::size_t inputLength,
- unsigned char* output,
- const std::size_t outputLength,
- std::size_t &encodedSize );
+void EncodeRle(const unsigned char* input,
+ const std::size_t inputLength,
+ unsigned char* output,
+ const std::size_t outputLength,
+ std::size_t& encodedSize);
/**
* RLE Decodes an array of data.
* @param[in] outputLength size of output data in bytes
* @param[out] decodedSize the number of bytes decoded into outputBuffer
*/
-bool DecodeRle( const unsigned char* input,
- const std::size_t inputLength,
- unsigned char* output,
- const std::size_t outputLength,
- std::size_t& decodedSize);
-
+bool DecodeRle(const unsigned char* input,
+ const std::size_t inputLength,
+ unsigned char* output,
+ const std::size_t outputLength,
+ std::size_t& decodedSize);
} // namespace DataCompression
#define DALI_TIZEN_PLATFORM_IMAGE_ENCODER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
/**
* Used file format
*/
#define DALI_TIZEN_PLATFORM_CAPABILITIES_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace TizenPlatform
{
-
/**
* Returns true if non power of two textures are supported.
*/
/**
* Returns the size that a textures dimension should have for a specific image size.
*/
-inline unsigned int GetTextureDimension( unsigned int size )
+inline unsigned int GetTextureDimension(unsigned int size)
{
#ifdef NON_POWER_OF_TWO_TEXTURES
return size;
#else
#error "NPOT are standard in GLES 2.0 if mipmaps are not used, they are standard with mipmaps and no restrictions in GLES 3.0, requiring them simplifies image handling code."
- return NextPowerOfTwo( size );
+ return NextPowerOfTwo(size);
#endif
}
#define DALI_INTERNAL_ADAPTOR_AUTOMATION_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*
*/
-
// EXTERNAL INCLUDES
#include <string>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* @brief The automation functions allow a way to control Dali via a network socket.
*
*/
namespace Automation
{
-
/**
* @brief Sets properties on an Actor.
* No ClientSendDataInterface required, as no response is sent back
* @param[in] message set property message
*/
-void SetProperty( const std::string& message );
-
+void SetProperty(const std::string& message);
/**
* @brief Dumps the actor tree to the client
* @param[in] clientId unique network client id
* @param[in] sendData interface to transmit data to the client
*/
-void DumpScene( unsigned int clientId, ClientSendDataInterface* sendData );
-
+void DumpScene(unsigned int clientId, ClientSendDataInterface* sendData);
} // namespace Automation
-} // namespace Internal
-
} // namespace Adaptor
+} // namespace Internal
+
} // namespace Dali
#endif
#define DALI_INTERNAL_ADAPTOR_CLIENT_SEND_DATA_INTERFACE_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* @brief Abstract interface used to transmit data to a client
*/
class ClientSendDataInterface
{
public:
-
/**
* @brief Sends data to the client
* @param[in] data pointer to some data
* @param[in] bufferSizeInBytes how big the buffer is in bytes
* @param[in] clientId unique client id to send the data to
*/
- virtual void SendData( const char* const data, unsigned int bufferSizeInBytes, unsigned int clientId ) = 0;
-
+ virtual void SendData(const char* const data, unsigned int bufferSizeInBytes, unsigned int clientId) = 0;
protected:
-
/**
* @brief Constructor
*/
}
private:
-
// Undefined copy constructor.
- ClientSendDataInterface( const ClientSendDataInterface& );
+ ClientSendDataInterface(const ClientSendDataInterface&);
// Undefined assignment operator.
- ClientSendDataInterface& operator=( const ClientSendDataInterface& );
-
+ ClientSendDataInterface& operator=(const ClientSendDataInterface&);
};
+} // namespace Adaptor
} // namespace Internal
-} // namespace Adaptor
-
} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_CLIENT_SEND_DATA_INTERFACE_H
#define DALI_INTERNAL_ADAPTOR_NETWORK_PERFORMANCE_CLIENT_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <pthread.h>
// INTERNAL INCLUDES
-#include <dali/internal/system/common/performance-marker.h>
+#include <dali/integration-api/adaptor-framework/trigger-event-factory.h>
#include <dali/internal/network/common/client-send-data-interface.h>
#include <dali/internal/network/common/socket-factory-interface.h>
-#include <dali/integration-api/adaptor-framework/trigger-event-factory.h>
-
+#include <dali/internal/system/common/performance-marker.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* @brief Network Performance client
*
class NetworkPerformanceClient
{
public:
-
/**
* @brief Constructor
* @param thread thread pointer
* @param sendDataInterface used to send data to the socket from main thread
* @param SocketFactoryInterface used to delete the socket when the client is destroyed
*/
- NetworkPerformanceClient( pthread_t* thread,
- SocketInterface *socket,
- unsigned int clientId,
- ClientSendDataInterface& sendDataInterface,
- SocketFactoryInterface& socketFactory );
+ NetworkPerformanceClient(pthread_t* thread,
+ SocketInterface* socket,
+ unsigned int clientId,
+ ClientSendDataInterface& sendDataInterface,
+ SocketFactoryInterface& socketFactory);
/**
* @brief Destructor
* @brief Write data to a socket. Can be called from any thread
* @copydoc Dali::SocketInterface::Send
*/
- bool WriteSocket( const void* buffer, unsigned int bufferSizeInBytes );
+ bool WriteSocket(const void* buffer, unsigned int bufferSizeInBytes);
/**
* @brief Process a command
* @param buffer pointer to command data
* @param bufferSizeInBytes how big the buffer is in bytes
*/
- void ProcessCommand( char* buffer, unsigned int bufferSizeInBytes );
+ void ProcessCommand(char* buffer, unsigned int bufferSizeInBytes);
/**
* @brief Write a marker to the socket, if this client is filtering this marker.
* @param marker
*/
- bool TransmitMarker( const PerformanceMarker& marker, const char* const description );
+ bool TransmitMarker(const PerformanceMarker& marker, const char* const description);
/**
* @brief If the client is waiting inside a select statement, this will cause it
pthread_t* GetThread();
private:
-
- pthread_t* mThread; ///< thread for the client
- SocketInterface* mSocket; ///< socket interface
- PerformanceMarker::MarkerFilter mMarkerBitmask; ///< What markers are currently filtered
- ClientSendDataInterface& mSendDataInterface; ///< used to send data to a client from the main event thread
- SocketFactoryInterface& mSocketFactoryInterface; ///< used to delete the socket
- unsigned int mClientId; ///< unique client id
- bool mConsoleClient; ///< if connected via a console then all responses are in ASCII, not binary packed data.
-
+ pthread_t* mThread; ///< thread for the client
+ SocketInterface* mSocket; ///< socket interface
+ PerformanceMarker::MarkerFilter mMarkerBitmask; ///< What markers are currently filtered
+ ClientSendDataInterface& mSendDataInterface; ///< used to send data to a client from the main event thread
+ SocketFactoryInterface& mSocketFactoryInterface; ///< used to delete the socket
+ unsigned int mClientId; ///< unique client id
+ bool mConsoleClient; ///< if connected via a console then all responses are in ASCII, not binary packed data.
};
+} // namespace Adaptor
} // namespace Internal
-} // namespace Adaptor
-
} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_NETWORK_PERFORMANCE_CLIENT_H
#define DALI_INTERNAL_ADAPTOR_NETWORK_PERFORMANCE_PROTOCOL_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace PerformanceProtocol
{
-
-const unsigned int MAX_COMMAND_STRING_LENGTH = 256; ///< maximum length of a command including null terminator
+const unsigned int MAX_COMMAND_STRING_LENGTH = 256; ///< maximum length of a command including null terminator
/**
* @brief List of commands id's
*/
enum CommandId
{
- HELP_MESSAGE = 0, ///< help message
- ENABLE_METRIC = 1, ///< enable metric
- DISABLE_METRIC = 2, ///< disable metric
- LIST_METRICS_AVAILABLE = 3, ///< list metrics that are available
+ HELP_MESSAGE = 0, ///< help message
+ ENABLE_METRIC = 1, ///< enable metric
+ DISABLE_METRIC = 2, ///< disable metric
+ LIST_METRICS_AVAILABLE = 3, ///< list metrics that are available
ENABLE_TIME_MARKER_BIT_MASK = 4, ///< bit mask of time markers to enable
- SET_PROPERTIES = 5, ///< set property
- DUMP_SCENE_GRAPH = 6, ///< dump the scene graph
- UNKNOWN_COMMAND = 4096
+ SET_PROPERTIES = 5, ///< set property
+ DUMP_SCENE_GRAPH = 6, ///< dump the scene graph
+ UNKNOWN_COMMAND = 4096
};
-
-typedef char CommandString[ MAX_COMMAND_STRING_LENGTH ];
+typedef char CommandString[MAX_COMMAND_STRING_LENGTH];
/**
* @brief given a command id, get the command string
* @param[out] commandString command string
* @return true on success, false on failure
*/
-bool GetCommandString( CommandId commandId, CommandString& commandString );
+bool GetCommandString(CommandId commandId, CommandString& commandString);
/**
* @brief given a command string, get the command id and an integer parameter if it exists
* @param[out] stringParam string parameter
* @param true on success, false on failure
*/
-bool GetCommandId( const char* const commandString,
- unsigned int lengthInBytes,
- CommandId& commandId,
- unsigned int& intParam,
- std::string& stringParam);
+bool GetCommandId(const char* const commandString,
+ unsigned int lengthInBytes,
+ CommandId& commandId,
+ unsigned int& intParam,
+ std::string& stringParam);
/**
* @return the protocol help message for console users
#define DALI_INTERNAL_ADAPTOR_NETWORK_PERFORMANCE_SERVER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <pthread.h>
#include <dali/devel-api/threading/mutex.h>
#include <dali/public-api/common/dali-vector.h>
+#include <pthread.h>
// INTERNAL INCLUDES
-#include <dali/internal/system/common/environment-options.h>
-#include <dali/internal/network/common/network-performance-client.h>
#include <dali/internal/adaptor/common/adaptor-internal-services.h>
+#include <dali/internal/network/common/network-performance-client.h>
+#include <dali/internal/system/common/environment-options.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class SocketInterface;
class PerformanceMarker;
*/
class NetworkPerformanceServer : public ClientSendDataInterface
{
-
public:
-
/**
* @brief Constructor
* @param[in] adaptorServices adaptor internal services
* @param[in] logOptions log options
*/
- NetworkPerformanceServer( AdaptorInternalServices& adaptorServices, const EnvironmentOptions& logOptions );
-
+ NetworkPerformanceServer(AdaptorInternalServices& adaptorServices, const EnvironmentOptions& logOptions);
/**
* @brief Start the server, to be called form Dali main thread
* @pre Can be called from any thread
*
*/
- void TransmitMarker( const PerformanceMarker& marker, const char* const description );
+ void TransmitMarker(const PerformanceMarker& marker, const char* const description);
/**
* Destructor
*/
- ~NetworkPerformanceServer();
-
-protected: // ClientSendDataInterface
+ ~NetworkPerformanceServer();
+protected: // ClientSendDataInterface
/**
* @copydoc ClientSendDataInterface::ClientSendDataInterface()
*/
- void SendData( const char* const data, unsigned int bufferSizeInBytes, unsigned int clientId ) override;
+ void SendData(const char* const data, unsigned int bufferSizeInBytes, unsigned int clientId) override;
private:
-
/**
* Helper for the thread calling the entry function.
* @param[in] This A pointer to the current RenderThread object
*/
- static void* ConnectionListenerFunc( void* This )
+ static void* ConnectionListenerFunc(void* This)
{
- ( static_cast<NetworkPerformanceServer*>( This ) )->ConnectionListener();
+ (static_cast<NetworkPerformanceServer*>(This))->ConnectionListener();
return NULL;
}
* Helper for the thread calling the entry function.
* @param[in] This A pointer to the current RenderThread object
*/
- static void* ClientThreadFunc( void* data );
+ static void* ClientThreadFunc(void* data);
/**
* @brief Client thread function
* @param client network client object
*/
- void ClientThread( NetworkPerformanceClient* client );
+ void ClientThread(NetworkPerformanceClient* client);
/**
* @brief Stop all client threads
* @param clientThread client thread
* @return client
*/
- NetworkPerformanceClient* AddClient( SocketInterface* clientSocket, pthread_t* clientThread );
+ NetworkPerformanceClient* AddClient(SocketInterface* clientSocket, pthread_t* clientThread);
/**
* @brief Delete a client from the client list
* @param client network client
*/
- void DeleteClient( NetworkPerformanceClient* client );
-
- NetworkPerformanceServer( const NetworkPerformanceServer& ); ///< undefined copy constructor
- NetworkPerformanceServer& operator=( const NetworkPerformanceServer& ); ///< undefined assignment operator
-
- SocketFactoryInterface& mSocketFactory; ///< used to create sockets
- const EnvironmentOptions& mLogOptions; ///< log options
- Dali::Vector< NetworkPerformanceClient* > mClients; ///< list of connected clients
- pthread_t mServerThread; ///< thread that listens for new connections
- SocketInterface* mListeningSocket; ///< socket used to listen for new connections
- Dali::Mutex mClientListMutex; ///< mutex
- unsigned int mClientUniqueId; ///< increments for every client connection
- volatile unsigned int mClientCount; ///< client count
- bool mLogFunctionInstalled; ///< whether the log function is installed
-
+ void DeleteClient(NetworkPerformanceClient* client);
+
+ NetworkPerformanceServer(const NetworkPerformanceServer&); ///< undefined copy constructor
+ NetworkPerformanceServer& operator=(const NetworkPerformanceServer&); ///< undefined assignment operator
+
+ SocketFactoryInterface& mSocketFactory; ///< used to create sockets
+ const EnvironmentOptions& mLogOptions; ///< log options
+ Dali::Vector<NetworkPerformanceClient*> mClients; ///< list of connected clients
+ pthread_t mServerThread; ///< thread that listens for new connections
+ SocketInterface* mListeningSocket; ///< socket used to listen for new connections
+ Dali::Mutex mClientListMutex; ///< mutex
+ unsigned int mClientUniqueId; ///< increments for every client connection
+ volatile unsigned int mClientCount; ///< client count
+ bool mLogFunctionInstalled; ///< whether the log function is installed
};
+} // namespace Adaptor
} // namespace Internal
-} // namespace Adaptor
-
} // namespace Dali
#endif //DALI_INTERNAL_ADAPTOR_NETWORK_PERFORMANCE_SERVER_H
#define DALI_INTERNAL_ADAPTOR_BASE_SOCKET_FACTORY_INTERFACE_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
/**
* @brief abstract class to create and destroy sockets
*/
class SocketFactoryInterface
{
public:
-
/**
* @brief Create a new socket
* @param protocol network protocol
* @return true on success, false on failure
*/
- virtual SocketInterface* NewSocket( SocketInterface::Protocol protocol ) = 0;
+ virtual SocketInterface* NewSocket(SocketInterface::Protocol protocol) = 0;
- /**
+ /**
* @brief destroy a socket
* @param[in] socket socket to destroy
*/
- virtual void DestroySocket( SocketInterface* socket ) = 0;
+ virtual void DestroySocket(SocketInterface* socket) = 0;
protected:
-
/**
* @brief Constructor
*/
- SocketFactoryInterface( )
+ SocketFactoryInterface()
{
}
}
private:
-
// Undefined copy constructor.
- SocketFactoryInterface( const SocketFactoryInterface& );
+ SocketFactoryInterface(const SocketFactoryInterface&);
// Undefined assignment operator.
- SocketFactoryInterface& operator=( const SocketFactoryInterface& );
-
+ SocketFactoryInterface& operator=(const SocketFactoryInterface&);
};
-
-
-} // Adaptor
-} // Internal
-} // Dali
+} // namespace Adaptor
+} // namespace Internal
+} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_BASE_SOCKET_FACTORY_INTERFACE_H
#ifndef DALI_INTERNAL_ADAPTOR_SOCKET_FACTORY_H
#define DALI_INTERNAL_ADAPTOR_SOCKET_FACTORY_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* @brief concrete implementation of the socket factory interface
*/
class SocketFactory : public SocketFactoryInterface
{
public:
-
-
/**
* @brief Constructor
*/
- SocketFactory( )
+ SocketFactory()
{
}
/**
* @copydoc SocketFactoryInterface::NewSocket()
*/
- SocketInterface* NewSocket( SocketInterface::Protocol protocol ) override;
+ SocketInterface* NewSocket(SocketInterface::Protocol protocol) override;
/**
* @copydoc SocketFactoryInterface::DestroySocket()
*/
- void DestroySocket( SocketInterface* socket ) override;
-
+ void DestroySocket(SocketInterface* socket) override;
};
-} // Adaptor
+} // namespace Adaptor
-} // Internal
+} // namespace Internal
-} // Dali
+} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_SOCKET_FACTORY_H
#define DALI_INTERNAL_ADAPTOR_SOCKET_IMPL_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* @brief Concrete implementation of a socket under Linux.
*
class Socket : public SocketInterface
{
public:
-
/**
* @brief Constructor
* @param protocol network protocol
* @param fileDescriptor option file descriptor if the socket is already open
*/
- Socket( Protocol protocol , int fileDescriptor = -1 );
+ Socket(Protocol protocol, int fileDescriptor = -1);
/**
* @copydoc Dali::Internal::Adaptor::SocketIsOpen()
/**
* @copydoc Dali::Internal::Adaptor::SocketInterface::Bind
*/
- bool Bind( uint16_t port ) override;
+ bool Bind(uint16_t port) override;
/**
* @copydoc Dali::Internal::Adaptor::SocketInterface::Listen
*/
- bool Listen( int blacklog) override;
+ bool Listen(int blacklog) override;
/**
* @copydoc Dali::Internal::Adaptor::SocketInterface::Accept
*/
- SocketInterface* Accept() const override;
+ SocketInterface* Accept() const override;
/**
* @copydoc Dali::Internal::Adaptor::SocketInterface::Select
*/
- SelectReturn Select( ) override;
+ SelectReturn Select() override;
/**
* @copydoc Dali::Internal::Adaptor::SocketInterface::ExitSelect
/**
* @copydoc Dali::Internal::Adaptor::SocketInterface::Recieve
*/
- bool Read( void* buffer, unsigned int bufferSizeInBytes, unsigned int& bytesRead ) override;
+ bool Read(void* buffer, unsigned int bufferSizeInBytes, unsigned int& bytesRead) override;
/**
* @copydoc Dali::Internal::Adaptor::SocketInterface::Send
*/
- bool Write( const void* buffer, unsigned int bufferLength ) override;
+ bool Write(const void* buffer, unsigned int bufferLength) override;
/**
* @copydoc Dali::Internal::Adaptor::SocketInterface::ReuseAddress
*/
- bool ReuseAddress( bool reUse ) override;
+ bool ReuseAddress(bool reUse) override;
/**
* @copydoc Dali::Internal::Adaptor::SocketInterface::SetBufferSize
*
*/
- bool SetBufferSize( SocketInterface::BufferType type, unsigned int bufferSizeInBytes ) override;
+ bool SetBufferSize(SocketInterface::BufferType type, unsigned int bufferSizeInBytes) override;
/**
* @brief Virtual destructor
virtual ~Socket();
private:
-
-
/**
* @brief Helper to create the quit pipe
*/
*/
void DeleteQuitPipe();
- int mSocketFileDescriptor; ///< file descriptor
- int mQuitPipe[2]; ///< Pipe to inform Select to quit.
- bool mBound:1; ///< whether the socket is bound
- bool mListening:1; ///< whether the socket is being listen to
- bool mQuitPipeCreated:1; ///< whether the quit pipe has been created
- bool mBlocked:1; ///< whether the socket is blocked waiting for a connection
+ int mSocketFileDescriptor; ///< file descriptor
+ int mQuitPipe[2]; ///< Pipe to inform Select to quit.
+ bool mBound : 1; ///< whether the socket is bound
+ bool mListening : 1; ///< whether the socket is being listen to
+ bool mQuitPipeCreated : 1; ///< whether the quit pipe has been created
+ bool mBlocked : 1; ///< whether the socket is blocked waiting for a connection
};
+} // namespace Adaptor
+} // namespace Internal
-} // Adaptor
-
-} // Internal
-
-} // Dali
+} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_SOCKET_IMPL_H
#define DALI_INTERNAL_ADAPTOR_BASE_SOCKET_INTERFACE_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
/**
* @brief Abstract socket interface.
* The typical usage is:
class SocketInterface
{
public:
-
/**
* @brief Protocol type
*/
enum Protocol
{
- TCP, ///< Reliable, connection oriented
- UDP, ///< Connection less, no guarantees of packet delivery, ordering
+ TCP, ///< Reliable, connection oriented
+ UDP, ///< Connection less, no guarantees of packet delivery, ordering
};
/**
* @param[in] port network port
* @return true on success, false on failure
*/
- virtual bool Bind( uint16_t port ) = 0;
+ virtual bool Bind(uint16_t port) = 0;
/**
* @brief Indicate a willingness to accept incoming connection requests
* @param[in] backlog maximum length of the queue of pending connections.
* @return true on success, false on failure
*/
- virtual bool Listen( int blacklog) = 0;
+ virtual bool Listen(int blacklog) = 0;
/**
* @brief Wait for connection request and make connection
*/
enum SelectReturn
{
- DATA_AVAILABLE, ///< Data is available to read
- QUIT, ///< ExitSelect() has been called on the socket
- ERROR ///< Socket error
+ DATA_AVAILABLE, ///< Data is available to read
+ QUIT, ///< ExitSelect() has been called on the socket
+ ERROR ///< Socket error
};
/**
* @param[out] bytesRead number of bytes read
* @return true on success, false on failure
*/
- virtual bool Read( void* buffer, unsigned int bufferSizeInBytes, unsigned int& bytesRead ) = 0;
+ virtual bool Read(void* buffer, unsigned int bufferSizeInBytes, unsigned int& bytesRead) = 0;
/**
* @brief Send data to the socket
* @param[in] bufferSizeInBytes buffer size in write
* @return true on success, false on failure
*/
- virtual bool Write( const void* buffer, unsigned int bufferSizeInBytes ) = 0;
+ virtual bool Write(const void* buffer, unsigned int bufferSizeInBytes) = 0;
//
// Common socket options. Please add more as required.
* @param[in] reuse flag.
* @return true on success, false on failure
*/
- virtual bool ReuseAddress( bool reUse ) = 0;
+ virtual bool ReuseAddress(bool reUse) = 0;
/**
* @brief Socket buffer type
*/
enum BufferType
{
- SEND_BUFFER, ///< (SO_SNDBUF) Send buffer size
- RECIEVE_BUFFER ///< (SO_RCVBUF) Size of buffer allocated to hold data arriving to the socket
+ SEND_BUFFER, ///< (SO_SNDBUF) Send buffer size
+ RECIEVE_BUFFER ///< (SO_RCVBUF) Size of buffer allocated to hold data arriving to the socket
};
/**
* @param[in] size buffer size
* @return true on success, false on failure
*/
- virtual bool SetBufferSize( BufferType type, unsigned int size ) = 0;
+ virtual bool SetBufferSize(BufferType type, unsigned int size) = 0;
protected:
-
/**
* @brief Constructor
*/
- SocketInterface( )
+ SocketInterface()
{
}
}
private:
-
// Undefined copy constructor.
- SocketInterface( const SocketInterface& );
+ SocketInterface(const SocketInterface&);
// Undefined assignment operator.
- SocketInterface& operator=( const SocketInterface& );
-
+ SocketInterface& operator=(const SocketInterface&);
};
-
-} // Adaptor
-} // Internal
-} // Dali
+} // namespace Adaptor
+} // namespace Internal
+} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_BASE_SOCKET_INTERFACE_H
#define DALI_INTERNAL_BASE_TRACE_INTERFACE_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
// EXTERNAL INCLUDES
#include <string>
-
// INTERNAL INCLUDES
#include <dali/internal/system/common/performance-marker.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Abstract Tracing Interface.
* Used to log trace messages.
*/
class TraceInterface
{
-
public:
-
/**
* Write a trace message
* @param marker performance marker
* @param traceMessage trace message
*/
- virtual void Trace( const PerformanceMarker& marker, const std::string& traceMessage ) = 0;
+ virtual void Trace(const PerformanceMarker& marker, const std::string& traceMessage) = 0;
protected:
-
/**
* Constructor
*/
}
// Undefined copy constructor.
- TraceInterface( const TraceInterface& );
+ TraceInterface(const TraceInterface&);
// Undefined assignment operator.
- TraceInterface& operator=( const TraceInterface& );
+ TraceInterface& operator=(const TraceInterface&);
};
-} // namespace Internal
-
} // namespace Adaptor
+} // namespace Internal
+
} // namespace Dali
#endif // DALI_INTERNAL_BASE_TRACE_INTERFACE_H
#define DALI_INTERNAL_OFFSCREEN_APPLICATION_IMPL_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <memory>
#include <dali/public-api/common/intrusive-ptr.h>
#include <dali/public-api/object/base-object.h>
+#include <memory>
// INTERNAL INCLUDES
#include <dali/devel-api/adaptor-framework/offscreen-application.h>
namespace Internal
{
-
/**
* Implementation of the OffscreenApplication class.
*/
class OffscreenApplication : public BaseObject
{
public:
-
using OffscreenApplicationSignalType = Dali::OffscreenApplication::OffscreenApplicationSignalType;
/**
* @param[in] isTranslucent Whether the OffscreenWindow is translucent or not
* @param[in] renderMode The RenderMode of the OffscreenApplication
*/
- static IntrusivePtr<OffscreenApplication> New( uint16_t width, uint16_t height, Dali::Any surface, bool isTranslucent, Dali::OffscreenApplication::RenderMode renderMode);
+ static IntrusivePtr<OffscreenApplication> New(uint16_t width, uint16_t height, Dali::Any surface, bool isTranslucent, Dali::OffscreenApplication::RenderMode renderMode);
public:
-
/**
* Destructor
*/
*/
void RenderOnce();
-public: // Signals
-
+public: // Signals
/**
* @copydoc Dali::OffscreenApplication::InitSignal()
*/
* @param[in] isTranslucent Whether the OffscreenWindow is translucent or not
* @param[in] renderMode The RenderMode of the OffscreenApplication
*/
- OffscreenApplication( uint16_t width, uint16_t height, Dali::Any surface, bool isTranslucent, Dali::OffscreenApplication::RenderMode renderMode );
+ OffscreenApplication(uint16_t width, uint16_t height, Dali::Any surface, bool isTranslucent, Dali::OffscreenApplication::RenderMode renderMode);
// Undefined
- OffscreenApplication( const OffscreenApplication& ) = delete;
- OffscreenApplication& operator=( OffscreenApplication& ) = delete;
- OffscreenApplication& operator=( const OffscreenApplication& ) = delete;
- OffscreenApplication& operator=( OffscreenApplication&& ) = delete;
+ OffscreenApplication(const OffscreenApplication&) = delete;
+ OffscreenApplication& operator=(OffscreenApplication&) = delete;
+ OffscreenApplication& operator=(const OffscreenApplication&) = delete;
+ OffscreenApplication& operator=(OffscreenApplication&&) = delete;
private:
- std::unique_ptr< Dali::Adaptor > mAdaptor;
- Dali::OffscreenWindow mDefaultWindow;
+ std::unique_ptr<Dali::Adaptor> mAdaptor;
+ Dali::OffscreenWindow mDefaultWindow;
- OffscreenApplicationSignalType mInitSignal;
- OffscreenApplicationSignalType mTerminateSignal;
+ OffscreenApplicationSignalType mInitSignal;
+ OffscreenApplicationSignalType mTerminateSignal;
};
-inline OffscreenApplication& GetImplementation( Dali::OffscreenApplication& offscreenApplication )
+inline OffscreenApplication& GetImplementation(Dali::OffscreenApplication& offscreenApplication)
{
- DALI_ASSERT_ALWAYS( offscreenApplication && "OffscreenApplication handle is empty" );
+ DALI_ASSERT_ALWAYS(offscreenApplication && "OffscreenApplication handle is empty");
BaseObject& handle = offscreenApplication.GetBaseObject();
- return static_cast<OffscreenApplication&>( handle );
+ return static_cast<OffscreenApplication&>(handle);
}
-inline const OffscreenApplication& GetImplementation( const Dali::OffscreenApplication& offscreenApplication )
+inline const OffscreenApplication& GetImplementation(const Dali::OffscreenApplication& offscreenApplication)
{
- DALI_ASSERT_ALWAYS( offscreenApplication && "OffscreenApplication handle is empty" );
+ DALI_ASSERT_ALWAYS(offscreenApplication && "OffscreenApplication handle is empty");
const BaseObject& handle = offscreenApplication.GetBaseObject();
- return static_cast<const OffscreenApplication&>( handle );
+ return static_cast<const OffscreenApplication&>(handle);
}
} // namespace Internal
#define DALI_INTERNAL_OFFSCREEN_WINDOW_IMPL_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <memory>
#include <dali/public-api/common/intrusive-ptr.h>
#include <dali/public-api/signals/connection-tracker.h>
+#include <memory>
// INTERNAL INCLUDES
#include <dali/devel-api/adaptor-framework/offscreen-window.h>
namespace Internal
{
-
/**
* Implementation of the OffscreenWindow class.
*/
public ConnectionTracker
{
public:
- using WindowSize = Dali::OffscreenWindow::WindowSize;
+ using WindowSize = Dali::OffscreenWindow::WindowSize;
using PostRenderSignalType = Dali::OffscreenWindow::PostRenderSignalType;
/**
* @param[in] surface The native surface handle of your platform
* @param[in] isTranslucent Whether the OffscreenWindow is translucent or not
*/
- static OffscreenWindow* New( uint16_t width, uint16_t height, Dali::Any surface, bool isTranslucent );
+ static OffscreenWindow* New(uint16_t width, uint16_t height, Dali::Any surface, bool isTranslucent);
OffscreenWindow() = default;
public:
-
/**
* Destructor
*/
/**
* @copydoc Dali::OffscreenWindow::GetLayer
*/
- Dali::Layer GetLayer( uint32_t depth ) const;
+ Dali::Layer GetLayer(uint32_t depth) const;
/**
* @copydoc Dali::OffscreenWindow::GetSize
* @brief Initialize the OffscreenWindow
* @param[in] isDefaultWindow Whether the OffscreenWindow is a default one or not
*/
- void Initialize( bool isDefaultWindow );
-
-public: // Signals
+ void Initialize(bool isDefaultWindow);
+public: // Signals
/**
* @copydoc Dali::OffscreenWindow::PostRenderSignal
*/
NativeRenderSurface* GetNativeRenderSurface() const;
private:
-
- /**
+ /**
* Private constructor
*
* @param[in] width The initial width of the OffscreenWindow
* @param[in] surface The native surface handle
* @param[in] isTranslucent Whether the OffscreenWindow is translucent or not
*/
- OffscreenWindow( uint16_t width, uint16_t height, Dali::Any surface, bool isTranslucent );
+ OffscreenWindow(uint16_t width, uint16_t height, Dali::Any surface, bool isTranslucent);
// Undefined
- OffscreenWindow( const OffscreenWindow& );
- OffscreenWindow& operator=( OffscreenWindow& );
+ OffscreenWindow(const OffscreenWindow&);
+ OffscreenWindow& operator=(OffscreenWindow&);
/*
* @brief Initialize the OffscreenWindow (for internal use)
void Initialize();
private:
-
- std::unique_ptr< TriggerEventInterface > mRenderNotification;
- PostRenderSignalType mPostRenderSignal;
+ std::unique_ptr<TriggerEventInterface> mRenderNotification;
+ PostRenderSignalType mPostRenderSignal;
};
-inline OffscreenWindow& GetImplementation( Dali::OffscreenWindow& offscreenWindow )
+inline OffscreenWindow& GetImplementation(Dali::OffscreenWindow& offscreenWindow)
{
- DALI_ASSERT_ALWAYS( offscreenWindow && "Dali::OffscreenWindow handle is empty" );
+ DALI_ASSERT_ALWAYS(offscreenWindow && "Dali::OffscreenWindow handle is empty");
BaseObject& handle = offscreenWindow.GetBaseObject();
- return static_cast<OffscreenWindow&>( handle );
+ return static_cast<OffscreenWindow&>(handle);
}
-inline const OffscreenWindow& GetImplementation( const Dali::OffscreenWindow& offscreenWindow )
+inline const OffscreenWindow& GetImplementation(const Dali::OffscreenWindow& offscreenWindow)
{
- DALI_ASSERT_ALWAYS( offscreenWindow && "Dali::OffscreenWindow handle is empty" );
+ DALI_ASSERT_ALWAYS(offscreenWindow && "Dali::OffscreenWindow handle is empty");
const BaseObject& handle = offscreenWindow.GetBaseObject();
- return static_cast<const OffscreenWindow&>( handle );
+ return static_cast<const OffscreenWindow&>(handle);
}
} // namespace Internal
#define DALI_SENSOR_COMMON_TILT_SENSOR_FACTORY_H
/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace TiltSensorFactory
{
-
/**
* Creates new instance of tilt sensor implementation
* @return pointer to tilt sensor implementation instance
*/
Dali::TiltSensor Get();
-} // TiltSensorFactory
+} // namespace TiltSensorFactory
} // namespace Adaptor
#define DALI_SENSOR_COMMON_TILT_SENSOR_IMPL_H
/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/public-api/object/base-object.h>
// INTERNAL INCLUDES
-#include <dali/public-api/adaptor-framework/timer.h>
#include <dali/devel-api/adaptor-framework/tilt-sensor.h>
+#include <dali/public-api/adaptor-framework/timer.h>
#include <deque>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* TiltSensor provides pitch & roll values when the device is tilted.
*/
class TiltSensor : public Dali::BaseObject
{
public:
-
/**
* Constructor
*/
/**
* @copydoc Dali::TiltSensor::SetUpdateFrequency()
*/
- virtual void SetUpdateFrequency( float frequencyHertz );
+ virtual void SetUpdateFrequency(float frequencyHertz);
/**
* @copydoc Dali::TiltSensor::GetUpdateFrequency()
* @return True if the signal was connected.
* @post If a signal was connected, ownership of functor was passed to CallbackBase. Otherwise the caller is responsible for deleting the unused functor.
*/
- static bool DoConnectSignal( BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor );
+ static bool DoConnectSignal(BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor);
};
} // namespace Adaptor
inline Internal::Adaptor::TiltSensor& GetImplementation(Dali::TiltSensor& sensor)
{
- DALI_ASSERT_ALWAYS( sensor && "TiltSensor handle is empty" );
+ DALI_ASSERT_ALWAYS(sensor && "TiltSensor handle is empty");
BaseObject& handle = sensor.GetBaseObject();
inline const Internal::Adaptor::TiltSensor& GetImplementation(const Dali::TiltSensor& sensor)
{
- DALI_ASSERT_ALWAYS( sensor && "TiltSensor handle is empty" );
+ DALI_ASSERT_ALWAYS(sensor && "TiltSensor handle is empty");
const BaseObject& handle = sensor.GetBaseObject();
#define DALI_SENSOR_TIZEN_TILT_SENSOR_IMPL_TIZEN_H
/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
#define SENSOR_ENABLED
#endif
-#include <deque>
-#include <dali/public-api/object/base-object.h>
#include <dali/internal/sensor/common/tilt-sensor-impl.h>
+#include <dali/public-api/object/base-object.h>
+#include <deque>
// INTERNAL INCLUDES
-#include <dali/public-api/adaptor-framework/timer.h>
#include <dali/devel-api/adaptor-framework/tilt-sensor.h>
+#include <dali/public-api/adaptor-framework/timer.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* TiltSensorTizen provides pitch & roll values when the device is tilted.
*/
class TiltSensorTizen : public Dali::Internal::Adaptor::TiltSensor
{
public:
-
typedef Dali::TiltSensor::TiltedSignalType TiltedSignalType;
/**
/**
* @copydoc Dali::TiltSensor::SetUpdateFrequency()
*/
- void SetUpdateFrequency( float frequencyHertz ) override;
+ void SetUpdateFrequency(float frequencyHertz) override;
/**
* @copydoc Dali::TiltSensor::GetUpdateFrequency()
* @return True if the signal was connected.
* @post If a signal was connected, ownership of functor was passed to CallbackBase. Otherwise the caller is responsible for deleting the unused functor.
*/
- static bool DoConnectSignal( BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor );
+ static bool DoConnectSignal(BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor);
/**
* Update sensor data
* @param[in] event sensor event data
*/
#ifdef SENSOR_ENABLED
- void Update(sensor_event_s *event);
+ void Update(sensor_event_s* event);
#endif
-
private:
-
enum State
{
DISCONNECTED,
float mFrequencyHertz;
#ifdef SENSOR_ENABLED
- sensor_type_e mSensorType;
- sensor_h mSensor;
+ sensor_type_e mSensorType;
+ sensor_h mSensor;
sensor_listener_h mSensorListener;
#else
- int mSensorType;
+ int mSensorType;
int* mSensor;
int* mSensorListener;
#endif
- float mRoll;
- float mPitch;
+ float mRoll;
+ float mPitch;
Quaternion mRotation;
Radian mRotationThreshold;
*/
// EXTERNAL INCLUDES
-#include <deque>
#include <dali/public-api/object/base-object.h>
+#include <deque>
// INTERNAL INCLUDES
-#include <dali/internal/sensor/common/tilt-sensor-impl.h>
#include <dali/devel-api/adaptor-framework/tilt-sensor.h>
+#include <dali/internal/sensor/common/tilt-sensor-impl.h>
#include <dali/public-api/adaptor-framework/timer.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* TiltSensor provides pitch & roll values when the device is tilted.
*/
class TiltSensorUbuntu : public Dali::Internal::Adaptor::TiltSensor
{
public:
-
typedef Dali::TiltSensor::TiltedSignalType TiltedSignalType;
/**
/**
* @copydoc Dali::TiltSensor::SetUpdateFrequency()
*/
- void SetUpdateFrequency( float frequencyHertz ) override;
+ void SetUpdateFrequency(float frequencyHertz) override;
/**
* @copydoc Dali::TiltSensor::GetUpdateFrequency()
* @return True if the signal was connected.
* @post If a signal was connected, ownership of functor was passed to CallbackBase. Otherwise the caller is responsible for deleting the unused functor.
*/
- static bool DoConnectSignal( BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor );
+ static bool DoConnectSignal(BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor);
private:
-
/**
* Private constructor; see also TiltSensor::New()
*/
TiltSensorUbuntu& operator=(TiltSensorUbuntu&) = delete;
private:
-
- float mFrequencyHertz;
- Dali::Timer mTimer;
- SlotDelegate< TiltSensorUbuntu > mTimerSlot;
+ float mFrequencyHertz;
+ Dali::Timer mTimer;
+ SlotDelegate<TiltSensorUbuntu> mTimerSlot;
int mSensorFrameworkHandle;
- float mRoll;
- float mPitch;
+ float mRoll;
+ float mPitch;
Quaternion mRotation;
Radian mRotationThreshold;
#define DALI_INTERNAL_STYLE_MONITOR_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <dali/public-api/object/ref-object.h>
-#include <dali/public-api/object/base-object.h>
#include <dali/devel-api/text-abstraction/font-client.h>
+#include <dali/public-api/object/base-object.h>
+#include <dali/public-api/object/ref-object.h>
// INTERNAL INCLUDES
#include <dali/devel-api/adaptor-framework/style-monitor.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* This holds the platform's style information.
* It provides a signal when any aspect of the default style changes on the device.
class StyleMonitor : public BaseObject
{
public:
-
// Creation & Destruction
/**
* Informs the Style Monitor that the style has changed.
* @param[in] styleChange The details of the change.
*/
- void StyleChanged( StyleChange::Type styleChange );
+ void StyleChanged(StyleChange::Type styleChange);
// Style Information
/**
* @copydoc Dali::StyleMonitor::LoadThemeFile()
*/
- bool LoadThemeFile( const std::string& filename, std::string& output );
+ bool LoadThemeFile(const std::string& filename, std::string& output);
// Signals
Dali::StyleMonitor::StyleChangeSignalType& StyleChangeSignal();
protected:
-
/**
* Virtual Destructor.
*/
~StyleMonitor() override;
private:
-
/**
* Emit the style change signal.
* @param[in] styleChange The details of the style change
*/
- inline void EmitStyleChangeSignal( StyleChange::Type styleChange );
+ inline void EmitStyleChangeSignal(StyleChange::Type styleChange);
private:
-
Dali::StyleMonitor::StyleChangeSignalType mStyleChangeSignal; ///< Emitted when the style changes
TextAbstraction::FontClient mFontClient;
- std::string mDefaultFontFamily; ///< The system default font family
- std::string mDefaultFontStyle; ///< The default font style
- std::string mUserDefinedThemeFilePath; ///< String containing the user defined theme file path
- int mDefaultFontSize; ///< The default accessibility font size e.g. 0 is smallest
+ std::string mDefaultFontFamily; ///< The system default font family
+ std::string mDefaultFontStyle; ///< The default font style
+ std::string mUserDefinedThemeFilePath; ///< String containing the user defined theme file path
+ int mDefaultFontSize; ///< The default accessibility font size e.g. 0 is smallest
};
} // namespace Adaptor
#define __DALI_ANDROID_CALLBACK_MANAGER_H__
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
// INTERNAL INCLUDES
#include <dali/internal/system/common/callback-manager.h>
-
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
struct CallbackData;
/**
*/
class AndroidCallbackManager : public CallbackManager
{
-
public:
-
- /**
+ /**
* @brief constructor
*/
- AndroidCallbackManager();
+ AndroidCallbackManager();
- /**
+ /**
* @brief destructor
*/
- ~AndroidCallbackManager() = default;
+ ~AndroidCallbackManager() = default;
- /**
+ /**
* @copydoc CallbackManager::AddIdleCallback()
*/
- bool AddIdleCallback( CallbackBase* callback, bool hasReturnValue ) override;
+ bool AddIdleCallback(CallbackBase* callback, bool hasReturnValue) override;
- /**
+ /**
* @copydoc CallbackManager::RemoveIdleCallback()
*/
- void RemoveIdleCallback( CallbackBase* callback ) override;
+ void RemoveIdleCallback(CallbackBase* callback) override;
- /**
+ /**
* @copydoc CallbackManager::ProcessIdle()
*/
- bool ProcessIdle() override;
+ bool ProcessIdle() override;
- /**
+ /**
* @copydoc CallbackManager::ProcessIdle()
*/
- void ClearIdleCallbacks() override;
+ void ClearIdleCallbacks() override;
- /**
+ /**
* @copydoc CallbackManager::AddIdleEntererCallback()
*/
- bool AddIdleEntererCallback( CallbackBase* callback ) override;
+ bool AddIdleEntererCallback(CallbackBase* callback) override;
- /**
+ /**
* @copydoc CallbackManager::RemoveIdleEntererCallback()
*/
- void RemoveIdleEntererCallback( CallbackBase* callback ) override;
+ void RemoveIdleEntererCallback(CallbackBase* callback) override;
- /**
+ /**
* @copydoc CallbackManager::Start()
*/
- void Start() override;
+ void Start() override;
- /**
+ /**
* @copydoc CallbackManager::Stop()
*/
- void Stop() override;
+ void Stop() override;
private:
-
- /**
+ /**
* @brief Remove all idle call backs that are pending
* Called by Stop()
* Always called from the main thread
*/
- void RemoveAllCallbacks();
+ void RemoveAllCallbacks();
- /**
+ /**
* @brief Removes a single call back from the container
* Always called from main thread
* @param callbackData callback data
*/
- void RemoveCallbackFromContainer(CallbackData *callbackData);
+ void RemoveCallbackFromContainer(CallbackData* callbackData);
- /**
+ /**
* @brief Remove a standard call back from ecore
* Always called from main thread
* @param callbackData callback data
*/
- void RemoveStandardCallback(CallbackData *callbackData);
-
+ void RemoveStandardCallback(CallbackData* callbackData);
- typedef std::list<CallbackData *> CallbackList;
+ typedef std::list<CallbackData*> CallbackList;
- bool mRunning; ///< flag is set to true if when running
- CallbackList mCallbackContainer; ///< container of live idle callbacks
+ bool mRunning; ///< flag is set to true if when running
+ CallbackList mCallbackContainer; ///< container of live idle callbacks
};
} // namespace Adaptor
#define DALI_INTERNAL_WIDGET_APPLICATION_IMPL_ANDROID_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Implementation of the WidgetApplicationAndroid class.
*/
class WidgetApplicationAndroid : public WidgetApplication
{
public:
-
- typedef std::pair<const std::string, Dali::WidgetApplication::CreateWidgetFunction > CreateWidgetFunctionPair;
- typedef std::vector< CreateWidgetFunctionPair > CreateWidgetFunctionContainer;
+ typedef std::pair<const std::string, Dali::WidgetApplication::CreateWidgetFunction> CreateWidgetFunctionPair;
+ typedef std::vector<CreateWidgetFunctionPair> CreateWidgetFunctionContainer;
/**
* Create a new widget application
* @param[in] argv A pointer to the argument list
* @param[in] stylesheet The path to user defined theme file
*/
- static WidgetApplicationPtr New( int* argc, char **argv[], const std::string& stylesheet );
+ static WidgetApplicationPtr New(int* argc, char** argv[], const std::string& stylesheet);
public:
-
/**
* @copydoc Dali::WidgetApplication::RegisterWidgetCreator()
*/
- void RegisterWidgetCreatingFunction( const std::string& widgetName, Dali::WidgetApplication::CreateWidgetFunction createFunction ) override;
+ void RegisterWidgetCreatingFunction(const std::string& widgetName, Dali::WidgetApplication::CreateWidgetFunction createFunction) override;
protected:
-
/**
* Private Constructor
* @param[in] argc A pointer to the number of arguments
* @param[in] argv A pointer to the argument list
* @param[in] stylesheet The path to user defined theme file
*/
- WidgetApplicationAndroid( int* argc, char **argv[], const std::string& stylesheet );
+ WidgetApplicationAndroid(int* argc, char** argv[], const std::string& stylesheet);
/**
* Destructor
#define DALI_INTERNAL_ADAPTOR_ABORT_HANDLER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <signal.h>
#include <dali/public-api/signals/callback.h>
+#include <signal.h>
// INTERNAL INCLUDES
#include <dali/public-api/adaptor-framework/application.h>
{
namespace Adaptor
{
-
/**
* Class to listen to system signals and trigger an abort callback
* when they occur.
* @param[in] callback The function to call when abort signals occur
* @note The ownership of callback is passed onto this class.
*/
- AbortHandler( CallbackBase* callback );
+ AbortHandler(CallbackBase* callback);
/**
* Destructor
* @param[in] signum The signal number (from signum.h)
* @return true if the signal handler was installed ok
*/
- bool AbortOnSignal( int signum );
+ bool AbortOnSignal(int signum);
private:
/**
* Signal handler - Called when signal is received.
* Stops the application.
*/
- static void SignalHandler( int signum );
+ static void SignalHandler(int signum);
/**
* Default constructor - undefined
AbortHandler& operator=(const AbortHandler& rhs);
private:
- using SignalHandlerFuncPtr = void( * )( int );
+ using SignalHandlerFuncPtr = void (*)(int);
// _NSIG comes from the signal.h linux system header, defining the number of signals.
- SignalHandlerFuncPtr mSignalOldHandlers[_NSIG-1];
- unsigned long long mSignalMask;
+ SignalHandlerFuncPtr mSignalOldHandlers[_NSIG - 1];
+ unsigned long long mSignalMask;
- CallbackBase* mCallback;
+ CallbackBase* mCallback;
- static AbortHandler* gInstance;
+ static AbortHandler* gInstance;
};
} // Namespace Adaptor
{
namespace Internal
{
-
/**
* @brief Atomic write to an aligned memory location in cacheable memory.
*
* aligned to a 4 byte boundary.
* @param value A value to assign to the memory location in address.
*/
-inline void AtomicWriteToCacheableAlignedAddress( volatile uint32_t * const address, const uint32_t value )
+inline void AtomicWriteToCacheableAlignedAddress(volatile uint32_t* const address, const uint32_t value)
{
- DALI_ASSERT_DEBUG( ptrdiff_t(address) % 4 == 0 && "Address must be 32 bit aligned" );
+ DALI_ASSERT_DEBUG(ptrdiff_t(address) % 4 == 0 && "Address must be 32 bit aligned");
*address = value;
}
* aligned to a 4 byte boundary.
* @return The value stored at the memory location in address.
*/
-inline uint32_t AtomicReadFromCacheableAlignedAddress( const volatile uint32_t * const address )
+inline uint32_t AtomicReadFromCacheableAlignedAddress(const volatile uint32_t* const address)
{
- DALI_ASSERT_DEBUG( ptrdiff_t(address) % 4 == 0 && "Address must be 32 bit aligned" );
+ DALI_ASSERT_DEBUG(ptrdiff_t(address) % 4 == 0 && "Address must be 32 bit aligned");
return *address;
}
#define DALI_INTERNAL_CALLBACK_MANAGER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Abstract interface to install call backs in to an applications main loop.
*/
class CallbackManager
{
-
public:
-
- /**
+ /**
* Create a new call back interface
*/
- static CallbackManager* New();
+ static CallbackManager* New();
- /**
+ /**
* Virtual destructor
*/
- virtual ~CallbackManager() {}
+ virtual ~CallbackManager()
+ {
+ }
- /**
+ /**
* @brief Adds a @p callback to be run on idle.
* @note Must be called from the main thread only.
*
*
* @return true on success
*/
- virtual bool AddIdleCallback( CallbackBase* callback, bool hasReturnValue ) = 0;
+ virtual bool AddIdleCallback(CallbackBase* callback, bool hasReturnValue) = 0;
- /**
+ /**
* @brief Removes a previously added @p callback.
* @note Must be called from main thread only.
*
*
* @param[in] callback The callback to be removed.
*/
- virtual void RemoveIdleCallback( CallbackBase* callback ) = 0;
+ virtual void RemoveIdleCallback(CallbackBase* callback) = 0;
- /**
+ /**
* @brief Processes the idle callbacks.
*
* @return whether a DALi callback has been processed.
*/
- virtual bool ProcessIdle() = 0;
+ virtual bool ProcessIdle() = 0;
- /**
+ /**
* @brief Clears the container of callbacks.
*/
- virtual void ClearIdleCallbacks() = 0;
+ virtual void ClearIdleCallbacks() = 0;
- /**
+ /**
* @brief Adds a @p callback to be run when entering an idle state.
* @note Must be called from the main thread only.
*
*
* @return true on success
*/
- virtual bool AddIdleEntererCallback( CallbackBase* callback ) = 0;
+ virtual bool AddIdleEntererCallback(CallbackBase* callback) = 0;
- /**
+ /**
* @brief Removes a previously added the idle enterer callback.
* @note Must be called from main thread only.
*
*
* @param[in] callback The callback to be removed.
*/
- virtual void RemoveIdleEntererCallback( CallbackBase* callback ) = 0;
+ virtual void RemoveIdleEntererCallback(CallbackBase* callback) = 0;
- /**
+ /**
* Starts the callback manager.
*/
- virtual void Start() = 0;
+ virtual void Start() = 0;
- /**
+ /**
* Stop the callback manager and can remove all pending callbacks synchronously.
* This call will synchronise with the main loop and not return
* until all call backs have been deleted.
*/
- virtual void Stop() = 0;
+ virtual void Stop() = 0;
protected:
-
- /**
+ /**
* constructor
*/
- CallbackManager() {}
+ CallbackManager()
+ {
+ }
private:
+ // Undefined copy constructor.
+ CallbackManager(const CallbackManager&);
- // Undefined copy constructor.
- CallbackManager( const CallbackManager& );
-
- // Undefined assignment operator.
- CallbackManager& operator=( const CallbackManager& );
-
+ // Undefined assignment operator.
+ CallbackManager& operator=(const CallbackManager&);
};
} // namespace Adaptor
#define DALI_INTERNAL_CAPTURE_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <string>
-#include <memory>
-#include <dali/public-api/object/ref-object.h>
#include <dali/public-api/object/base-object.h>
+#include <dali/public-api/object/ref-object.h>
#include <dali/public-api/render-tasks/render-task.h>
-#include <dali/public-api/rendering/texture.h>
#include <dali/public-api/rendering/frame-buffer.h>
+#include <dali/public-api/rendering/texture.h>
+#include <memory>
+#include <string>
// INTERNAL INCLUDES
-#include <dali/public-api/dali-adaptor-common.h>
-#include <dali/public-api/capture/capture.h>
#include <dali/public-api/adaptor-framework/native-image-source.h>
#include <dali/public-api/adaptor-framework/timer.h>
+#include <dali/public-api/capture/capture.h>
+#include <dali/public-api/dali-adaptor-common.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class Capture;
typedef IntrusivePtr<Capture> CapturePtr;
class Capture : public BaseObject, public ConnectionTracker
{
public:
-
static constexpr uint32_t DEFAULT_QUALITY = 100;
/**
*/
Capture();
- Capture( Dali::CameraActor cameraActor );
+ Capture(Dali::CameraActor cameraActor);
/**
* @copydoc Dali::Capture::New
/**
* @copydoc Dali::Capture::New
*/
- static CapturePtr New( Dali::CameraActor cameraActor );
+ static CapturePtr New(Dali::CameraActor cameraActor);
/**
* @copydoc Dali::Capture::Start
*/
- void Start( Dali::Actor source, const Dali::Vector2& position, const Dali::Vector2& size, const std::string &path, const Dali::Vector4& clearColor, const uint32_t quality );
+ void Start(Dali::Actor source, const Dali::Vector2& position, const Dali::Vector2& size, const std::string& path, const Dali::Vector4& clearColor, const uint32_t quality);
/**
* @copydoc Dali::Capture::Start
*/
- void Start( Dali::Actor source, const Dali::Vector2& position, const Dali::Vector2& size, const std::string &path, const Dali::Vector4& clearColor );
+ void Start(Dali::Actor source, const Dali::Vector2& position, const Dali::Vector2& size, const std::string& path, const Dali::Vector4& clearColor);
/**
* @copydoc Dali::Capture::SetImageQuality
*/
- void SetImageQuality( uint32_t quality );
+ void SetImageQuality(uint32_t quality);
/**
* @copydoc Dali::Capture::GetNativeImageSource
Dali::Capture::CaptureFinishedSignalType& FinishedSignal();
protected:
-
/**
* @brief A reference counted object may only be deleted by calling Unreference()
*/
/**
* @brief Create native image source.
*/
- void CreateNativeImageSource( const Dali::Vector2& size );
+ void CreateNativeImageSource(const Dali::Vector2& size);
/**
* @brief Delete native image source.
* @param[in] source sub-scene tree to be captured.
* @param[in] clearColor background color
*/
- void SetupRenderTask( const Dali::Vector2& position, const Dali::Vector2& size, Dali::Actor source, const Dali::Vector4& clearColor );
+ void SetupRenderTask(const Dali::Vector2& position, const Dali::Vector2& size, Dali::Actor source, const Dali::Vector4& clearColor);
/**
* @brief Unset render task.
* @param[in] clearColor color to clear background surface.
* @param[in] source sub-scene tree to be captured.
*/
- void SetupResources( const Dali::Vector2& position, const Dali::Vector2& size, const Dali::Vector4& clearColor, Dali::Actor source );
+ void SetupResources(const Dali::Vector2& position, const Dali::Vector2& size, const Dali::Vector4& clearColor, Dali::Actor source);
/**
* @brief Unset resources for capture.
*
* @param[in] task is used for capture.
*/
- void OnRenderFinished( Dali::RenderTask& task );
+ void OnRenderFinished(Dali::RenderTask& task);
/**
* @brief Callback when timer is finished.
bool SaveFile();
private:
-
// Undefined
- Capture( const Capture& );
+ Capture(const Capture&);
// Undefined
- Capture& operator=( const Capture& rhs );
+ Capture& operator=(const Capture& rhs);
private:
- uint32_t mQuality;
- Dali::Texture mNativeTexture;
- Dali::FrameBuffer mFrameBuffer;
- Dali::RenderTask mRenderTask;
- Dali::Actor mSource;
- Dali::CameraActor mCameraActor;
- Dali::Timer mTimer; ///< For timeout.
- Dali::Capture::CaptureFinishedSignalType mFinishedSignal;
- std::string mPath;
- Dali::NativeImageSourcePtr mNativeImageSourcePtr; ///< pointer to surface image
- bool mFileSave;
+ uint32_t mQuality;
+ Dali::Texture mNativeTexture;
+ Dali::FrameBuffer mFrameBuffer;
+ Dali::RenderTask mRenderTask;
+ Dali::Actor mSource;
+ Dali::CameraActor mCameraActor;
+ Dali::Timer mTimer; ///< For timeout.
+ Dali::Capture::CaptureFinishedSignalType mFinishedSignal;
+ std::string mPath;
+ Dali::NativeImageSourcePtr mNativeImageSourcePtr; ///< pointer to surface image
+ bool mFileSave;
};
-} // End of namespace Adaptor
-} // End of namespace Internal
+} // End of namespace Adaptor
+} // End of namespace Internal
// Helpers for public-api forwarding methods
-inline Internal::Adaptor::Capture& GetImpl( Dali::Capture& captureWorker)
+inline Internal::Adaptor::Capture& GetImpl(Dali::Capture& captureWorker)
{
- DALI_ASSERT_ALWAYS( captureWorker && "Capture handle is empty" );
+ DALI_ASSERT_ALWAYS(captureWorker && "Capture handle is empty");
BaseObject& handle = captureWorker.GetBaseObject();
- return static_cast< Internal::Adaptor::Capture& >( handle );
+ return static_cast<Internal::Adaptor::Capture&>(handle);
}
-inline const Internal::Adaptor::Capture& GetImpl( const Dali::Capture& captureWorker )
+inline const Internal::Adaptor::Capture& GetImpl(const Dali::Capture& captureWorker)
{
- DALI_ASSERT_ALWAYS( captureWorker && "Capture handle is empty" );
+ DALI_ASSERT_ALWAYS(captureWorker && "Capture handle is empty");
const BaseObject& handle = captureWorker.GetBaseObject();
- return static_cast< const Internal::Adaptor::Capture& >( handle );
+ return static_cast<const Internal::Adaptor::Capture&>(handle);
}
-} // End of namespace Dali
+} // End of namespace Dali
#endif // DALI_INTERNAL_CAPTURE_H
#define DALI_INTERNAL_COLOR_CONTROLLER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/public-api/object/base-object.h>
// INTERNAL INCLUDES
-#include <dali/devel-api/adaptor-framework/color-controller.h>
#include <dali/devel-api/adaptor-framework/color-controller-plugin.h>
+#include <dali/devel-api/adaptor-framework/color-controller.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Implementation of ColorController
*/
class ColorController : public BaseObject
{
public:
-
/**
* Constructor.
*/
/**
* @copydoc Dali::ColorController::RetrieveColor(const std::string&, Vector4&)
*/
- bool RetrieveColor( const std::string& colorCode, Vector4& colorValue );
+ bool RetrieveColor(const std::string& colorCode, Vector4& colorValue);
/**
* @copydoc Dali::ColorController::RetrieveColor(const std::string&, Vector4&, Vector4&, Vector4&)
*/
- bool RetrieveColor( const std::string& colorCode , Vector4& textColor, Vector4& textOutlineColor, Vector4& textShadowColor);
+ bool RetrieveColor(const std::string& colorCode, Vector4& textColor, Vector4& textOutlineColor, Vector4& textShadowColor);
private:
-
- /**
+ /**
* @brief Initialize
*/
void Initialize();
~ColorController() override;
private:
-
using CreateColorControllerFunction = Dali::ColorControllerPlugin* (*)();
- void* mLibHandle; ///< Handle for the loaded library
- Dali::ColorControllerPlugin* mPlugin; ///< Plugin handle
-
- CreateColorControllerFunction mCreateColorControllerPtr; ///< Function pointer called in adaptor to create a plugin instance
+ void* mLibHandle; ///< Handle for the loaded library
+ Dali::ColorControllerPlugin* mPlugin; ///< Plugin handle
+ CreateColorControllerFunction mCreateColorControllerPtr; ///< Function pointer called in adaptor to create a plugin instance
};
} // namespace Adaptor
#define DALI_INTERNAL_COMMAND_LINE_OPTIONS_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <string>
#include <cstdint> // int32_t
+#include <string>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Parses the passed command line arguments and sets the values stored within this
* class appropriately.
struct CommandLineOptions
{
public:
-
/**
* Constructor
* @param[in,out] argc The number of arguments
* @param[in,out] argv The argument list
* @note Supported options are stripped from argv, and argc is updated appropriately.
*/
- CommandLineOptions( int32_t *argc, char **argv[] );
+ CommandLineOptions(int32_t* argc, char** argv[]);
/**
* Destructor
*/
~CommandLineOptions();
-public: // Command line parsed values
-
- int32_t stageWidth; ///< The width of the stage required. 0 if not set.
- int32_t stageHeight; ///< The height of the stage required. 0 if not set.
+public: // Command line parsed values
+ int32_t stageWidth; ///< The width of the stage required. 0 if not set.
+ int32_t stageHeight; ///< The height of the stage required. 0 if not set.
std::string stageDPI; ///< DPI stored as hxv, where h is horizontal DPI and v is vertical DPI
};
#define DALI_INTERNAL_ADAPTOR_CORE_EVENT_INTERFACE_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Integration
{
struct Event;
namespace Internal
{
-
namespace Adaptor
{
-
/**
* This interface should be used by adaptor components to send events to Core.
* This is preferable to using Core directly i.e. so there is a common place for measuring performance.
class CoreEventInterface
{
public:
-
/**
* Queue an event with Core.
* @param[in] event The new event.
virtual void ProcessCoreEvents() = 0;
protected:
-
/**
* Protected virtual destructor
*/
- virtual ~CoreEventInterface() {}
+ virtual ~CoreEventInterface()
+ {
+ }
};
-} // namespace Internal
-
} // namespace Adaptor
+} // namespace Internal
+
} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_CORE_EVENT_INTERFACE_H
#define DALI_INTERNAL_ADAPTOR_ENVIRONMENT_OPTIONS_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <memory>
#include <dali/integration-api/debug.h>
+#include <memory>
// INTERNAL INCLUDES
#include <dali/integration-api/adaptor-framework/log-factory-interface.h>
class EnvironmentOptions : public Dali::LogFactoryInterface
{
public:
-
/**
* Constructor
*/
* Create a TraceManager which is used for tracing.
* @param PerformanceInterface for using network logging for tracing on Ubuntu
*/
- void CreateTraceManager( PerformanceInterface* performanceInterface );
+ void CreateTraceManager(PerformanceInterface* performanceInterface);
/**
* Initialize TraceManager by installing Trace function.
/**
* @param logFunction logging function
*/
- void SetLogFunction( const Dali::Integration::Log::LogFunction& logFunction );
+ void SetLogFunction(const Dali::Integration::Log::LogFunction& logFunction);
/**
* Install the log function for the current thread.
bool PartialUpdateRequired() const;
/// Deleted copy constructor.
- EnvironmentOptions( const EnvironmentOptions& ) = delete;
+ EnvironmentOptions(const EnvironmentOptions&) = delete;
/// Deleted move constructor.
- EnvironmentOptions( const EnvironmentOptions&& ) = delete;
+ EnvironmentOptions(const EnvironmentOptions&&) = delete;
/// Deleted assignment operator.
- EnvironmentOptions& operator=( const EnvironmentOptions& ) = delete;
+ EnvironmentOptions& operator=(const EnvironmentOptions&) = delete;
/// Deleted move assignment operator.
- EnvironmentOptions& operator=( const EnvironmentOptions&& ) = delete;
+ EnvironmentOptions& operator=(const EnvironmentOptions&&) = delete;
private: // Internal
-
/**
* Parses the environment options.
* Called from the constructor
void ParseEnvironmentOptions();
private: // Data
-
Dali::Integration::Log::LogFunction mLogFunction;
- std::string mWindowName; ///< name of the window
- std::string mWindowClassName; ///< name of the class the window belongs to
- unsigned int mNetworkControl; ///< whether network control is enabled
- unsigned int mFpsFrequency; ///< how often fps is logged out in seconds
- unsigned int mUpdateStatusFrequency; ///< how often update status is logged out in frames
- unsigned int mObjectProfilerInterval; ///< how often object counts are logged out in seconds
- unsigned int mPerformanceStatsLevel; ///< performance statistics logging bitmask
- unsigned int mPerformanceStatsFrequency; ///< performance statistics logging frequency (seconds)
- unsigned int mPerformanceTimeStampOutput; ///< performance time stamp output ( bitmask)
- unsigned int mPanGestureLoggingLevel; ///< pan-gesture log level
- unsigned int mWindowWidth; ///< width of the window
- unsigned int mWindowHeight; ///< height of the window
- unsigned int mRenderRefreshRate; ///< render refresh rate
- unsigned int mMaxTextureSize; ///< The maximum texture size that GL can handle
- unsigned int mRenderToFboInterval; ///< The number of frames that are going to be rendered into the Frame Buffer Object but the last one which is going to be rendered into the Frame Buffer.
- int mPanGesturePredictionMode; ///< prediction mode for pan gestures
- int mPanGesturePredictionAmount; ///< prediction amount for pan gestures
- int mPanGestureMaxPredictionAmount; ///< maximum prediction amount for pan gestures
- int mPanGestureMinPredictionAmount; ///< minimum prediction amount for pan gestures
- int mPanGesturePredictionAmountAdjustment; ///< adjustment of prediction amount for pan gestures
- int mPanGestureSmoothingMode; ///< prediction mode for pan gestures
- float mPanGestureSmoothingAmount; ///< prediction amount for pan gestures
- int mPanGestureUseActualTimes; ///< Disable to optionally override actual times if they make results worse.
- int mPanGestureInterpolationTimeRange; ///< Time into past history (ms) to use points to interpolate the first point.
- int mPanGestureScalarOnlyPredictionEnabled; ///< If enabled, prediction is done using velocity alone (no integration or acceleration).
- int mPanGestureTwoPointPredictionEnabled; ///< If enabled, a second interpolated point is predicted and combined with the first to get more stable values.
- int mPanGestureTwoPointInterpolatePastTime; ///< The target time in the past to generate the second interpolated point.
- float mPanGestureTwoPointVelocityBias; ///< The ratio of first and second interpolated points to use for velocity. 0.0f = 100% of first point. 1.0f = 100% of second point.
- float mPanGestureTwoPointAccelerationBias; ///< The ratio of first and second interpolated points to use for acceleration. 0.0f = 100% of first point. 1.0f = 100% of second point.
- int mPanGestureMultitapSmoothingRange; ///< The range in time (ms) of points in the history to smooth the final output against.
- int mPanMinimumDistance; ///< minimum distance required before pan starts
- int mPanMinimumEvents; ///< minimum events required before pan starts
- float mPinchMinimumDistance; ///< minimum number of pixels moved before a pinch starts
- int mPinchMinimumTouchEvents; ///< minimum events required before a pinch starts
- int mPinchMinimumTouchEventsAfterStart; ///< minimum events required after a pinch started
- int mRotationMinimumTouchEvents; ///< minimum events required before a rotation starts
- int mRotationMinimumTouchEventsAfterStart; ///< minimum events required after a rotation started
- int mLongPressMinimumHoldingTime; ///< minimum holding time required to be recognized as a long press gesture (millisecond)
- int mGlesCallTime; ///< time in seconds between status updates
- int mMultiSamplingLevel; ///< The number of samples required in multisample buffers
- ThreadingMode::Type mThreadingMode; ///< threading mode
- bool mGlesCallAccumulate; ///< Whether or not to accumulate gles call statistics
- bool mDepthBufferRequired; ///< Whether the depth buffer is required
- bool mStencilBufferRequired; ///< Whether the stencil buffer is required
- bool mPartialUpdateRequired; ///< Whether the partial update is required
- std::unique_ptr<TraceManager> mTraceManager; ///< TraceManager
+
+ std::string mWindowName; ///< name of the window
+ std::string mWindowClassName; ///< name of the class the window belongs to
+
+ unsigned int mNetworkControl; ///< whether network control is enabled
+ unsigned int mFpsFrequency; ///< how often fps is logged out in seconds
+ unsigned int mUpdateStatusFrequency; ///< how often update status is logged out in frames
+ unsigned int mObjectProfilerInterval; ///< how often object counts are logged out in seconds
+ unsigned int mPerformanceStatsLevel; ///< performance statistics logging bitmask
+ unsigned int mPerformanceStatsFrequency; ///< performance statistics logging frequency (seconds)
+ unsigned int mPerformanceTimeStampOutput; ///< performance time stamp output ( bitmask)
+ unsigned int mPanGestureLoggingLevel; ///< pan-gesture log level
+ unsigned int mWindowWidth; ///< width of the window
+ unsigned int mWindowHeight; ///< height of the window
+ unsigned int mRenderRefreshRate; ///< render refresh rate
+ unsigned int mMaxTextureSize; ///< The maximum texture size that GL can handle
+ unsigned int mRenderToFboInterval; ///< The number of frames that are going to be rendered into the Frame Buffer Object but the last one which is going to be rendered into the Frame Buffer.
+
+ int mPanGesturePredictionMode; ///< prediction mode for pan gestures
+ int mPanGesturePredictionAmount; ///< prediction amount for pan gestures
+ int mPanGestureMaxPredictionAmount; ///< maximum prediction amount for pan gestures
+ int mPanGestureMinPredictionAmount; ///< minimum prediction amount for pan gestures
+ int mPanGesturePredictionAmountAdjustment; ///< adjustment of prediction amount for pan gestures
+ int mPanGestureSmoothingMode; ///< prediction mode for pan gestures
+ float mPanGestureSmoothingAmount; ///< prediction amount for pan gestures
+ int mPanGestureUseActualTimes; ///< Disable to optionally override actual times if they make results worse.
+ int mPanGestureInterpolationTimeRange; ///< Time into past history (ms) to use points to interpolate the first point.
+ int mPanGestureScalarOnlyPredictionEnabled; ///< If enabled, prediction is done using velocity alone (no integration or acceleration).
+ int mPanGestureTwoPointPredictionEnabled; ///< If enabled, a second interpolated point is predicted and combined with the first to get more stable values.
+ int mPanGestureTwoPointInterpolatePastTime; ///< The target time in the past to generate the second interpolated point.
+ float mPanGestureTwoPointVelocityBias; ///< The ratio of first and second interpolated points to use for velocity. 0.0f = 100% of first point. 1.0f = 100% of second point.
+ float mPanGestureTwoPointAccelerationBias; ///< The ratio of first and second interpolated points to use for acceleration. 0.0f = 100% of first point. 1.0f = 100% of second point.
+ int mPanGestureMultitapSmoothingRange; ///< The range in time (ms) of points in the history to smooth the final output against.
+ int mPanMinimumDistance; ///< minimum distance required before pan starts
+ int mPanMinimumEvents; ///< minimum events required before pan starts
+ float mPinchMinimumDistance; ///< minimum number of pixels moved before a pinch starts
+ int mPinchMinimumTouchEvents; ///< minimum events required before a pinch starts
+ int mPinchMinimumTouchEventsAfterStart; ///< minimum events required after a pinch started
+ int mRotationMinimumTouchEvents; ///< minimum events required before a rotation starts
+ int mRotationMinimumTouchEventsAfterStart; ///< minimum events required after a rotation started
+ int mLongPressMinimumHoldingTime; ///< minimum holding time required to be recognized as a long press gesture (millisecond)
+ int mGlesCallTime; ///< time in seconds between status updates
+ int mMultiSamplingLevel; ///< The number of samples required in multisample buffers
+
+ ThreadingMode::Type mThreadingMode; ///< threading mode
+
+ bool mGlesCallAccumulate; ///< Whether or not to accumulate gles call statistics
+ bool mDepthBufferRequired; ///< Whether the depth buffer is required
+ bool mStencilBufferRequired; ///< Whether the stencil buffer is required
+ bool mPartialUpdateRequired; ///< Whether the partial update is required
+
+ std::unique_ptr<TraceManager> mTraceManager; ///< TraceManager
};
-} // Adaptor
-} // Internal
-} // Dali
+} // namespace Adaptor
+} // namespace Internal
+} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_ENVIRONMENT_OPTIONS_H
#define DALI_INTERNAL_ADAPTOR_ENVIRONMENT_VARIABLES_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* What performance statistics are logged out to dlog
* see StatisticsLogOptions in performance-interface.h for values
// Pan-Gesture configuration:
// Prediction Modes 1 & 2:
-#define DALI_ENV_PAN_PREDICTION_MODE "DALI_PAN_PREDICTION_MODE"
-#define DALI_ENV_PAN_PREDICTION_AMOUNT "DALI_PAN_PREDICTION_AMOUNT"
-#define DALI_ENV_PAN_SMOOTHING_MODE "DALI_PAN_SMOOTHING_MODE"
+#define DALI_ENV_PAN_PREDICTION_MODE "DALI_PAN_PREDICTION_MODE"
+#define DALI_ENV_PAN_PREDICTION_AMOUNT "DALI_PAN_PREDICTION_AMOUNT"
+#define DALI_ENV_PAN_SMOOTHING_MODE "DALI_PAN_SMOOTHING_MODE"
// Prediction Mode 1:
-#define DALI_ENV_PAN_MAX_PREDICTION_AMOUNT "DALI_PAN_MAX_PREDICTION_AMOUNT"
-#define DALI_ENV_PAN_MIN_PREDICTION_AMOUNT "DALI_PAN_MIN_PREDICTION_AMOUNT"
-#define DALI_ENV_PAN_PREDICTION_AMOUNT_ADJUSTMENT "DALI_PAN_PREDICTION_AMOUNT_ADJUSTMENT"
-#define DALI_ENV_PAN_SMOOTHING_AMOUNT "DALI_PAN_SMOOTHING_AMOUNT"
+#define DALI_ENV_PAN_MAX_PREDICTION_AMOUNT "DALI_PAN_MAX_PREDICTION_AMOUNT"
+#define DALI_ENV_PAN_MIN_PREDICTION_AMOUNT "DALI_PAN_MIN_PREDICTION_AMOUNT"
+#define DALI_ENV_PAN_PREDICTION_AMOUNT_ADJUSTMENT "DALI_PAN_PREDICTION_AMOUNT_ADJUSTMENT"
+#define DALI_ENV_PAN_SMOOTHING_AMOUNT "DALI_PAN_SMOOTHING_AMOUNT"
// Prediction Mode 2:
-#define DALI_ENV_PAN_USE_ACTUAL_TIMES "DALI_PAN_USE_ACTUAL_TIMES"
-#define DALI_ENV_PAN_INTERPOLATION_TIME_RANGE "DALI_PAN_INTERPOLATION_TIME_RANGE"
-#define DALI_ENV_PAN_SCALAR_ONLY_PREDICTION_ENABLED "DALI_PAN_SCALAR_ONLY_PREDICTION_ENABLED"
-#define DALI_ENV_PAN_TWO_POINT_PREDICTION_ENABLED "DALI_PAN_TWO_POINT_PREDICTION_ENABLED"
-#define DALI_ENV_PAN_TWO_POINT_PAST_INTERPOLATE_TIME "DALI_PAN_TWO_POINT_PAST_INTERPOLATE_TIME"
-#define DALI_ENV_PAN_TWO_POINT_VELOCITY_BIAS "DALI_PAN_TWO_POINT_VELOCITY_BIAS"
-#define DALI_ENV_PAN_TWO_POINT_ACCELERATION_BIAS "DALI_PAN_TWO_POINT_ACCELERATION_BIAS"
-#define DALI_ENV_PAN_MULTITAP_SMOOTHING_RANGE "DALI_PAN_MULTITAP_SMOOTHING_RANGE"
+#define DALI_ENV_PAN_USE_ACTUAL_TIMES "DALI_PAN_USE_ACTUAL_TIMES"
+#define DALI_ENV_PAN_INTERPOLATION_TIME_RANGE "DALI_PAN_INTERPOLATION_TIME_RANGE"
+#define DALI_ENV_PAN_SCALAR_ONLY_PREDICTION_ENABLED "DALI_PAN_SCALAR_ONLY_PREDICTION_ENABLED"
+#define DALI_ENV_PAN_TWO_POINT_PREDICTION_ENABLED "DALI_PAN_TWO_POINT_PREDICTION_ENABLED"
+#define DALI_ENV_PAN_TWO_POINT_PAST_INTERPOLATE_TIME "DALI_PAN_TWO_POINT_PAST_INTERPOLATE_TIME"
+#define DALI_ENV_PAN_TWO_POINT_VELOCITY_BIAS "DALI_PAN_TWO_POINT_VELOCITY_BIAS"
+#define DALI_ENV_PAN_TWO_POINT_ACCELERATION_BIAS "DALI_PAN_TWO_POINT_ACCELERATION_BIAS"
+#define DALI_ENV_PAN_MULTITAP_SMOOTHING_RANGE "DALI_PAN_MULTITAP_SMOOTHING_RANGE"
// Pan-Gesture miscellaneous:
-#define DALI_ENV_LOG_PAN_GESTURE "DALI_LOG_PAN_GESTURE"
-#define DALI_ENV_PAN_MINIMUM_DISTANCE "DALI_PAN_MINIMUM_DISTANCE"
-#define DALI_ENV_PAN_MINIMUM_EVENTS "DALI_PAN_MINIMUM_EVENTS"
+#define DALI_ENV_LOG_PAN_GESTURE "DALI_LOG_PAN_GESTURE"
+#define DALI_ENV_PAN_MINIMUM_DISTANCE "DALI_PAN_MINIMUM_DISTANCE"
+#define DALI_ENV_PAN_MINIMUM_EVENTS "DALI_PAN_MINIMUM_EVENTS"
// Pinch-Gesture
-#define DALI_ENV_PINCH_MINIMUM_DISTANCE "DALI_PINCH_MINIMUM_DISTANCE"
-#define DALI_ENV_PINCH_MINIMUM_TOUCH_EVENTS "DALI_PINCH_MINIMUM_TOUCH_EVENTS"
-#define DALI_ENV_PINCH_MINIMUM_TOUCH_EVENTS_AFTER_START "DALI_PINCH_MINIMUM_TOUCH_EVENTS_AFTER_START"
+#define DALI_ENV_PINCH_MINIMUM_DISTANCE "DALI_PINCH_MINIMUM_DISTANCE"
+#define DALI_ENV_PINCH_MINIMUM_TOUCH_EVENTS "DALI_PINCH_MINIMUM_TOUCH_EVENTS"
+#define DALI_ENV_PINCH_MINIMUM_TOUCH_EVENTS_AFTER_START "DALI_PINCH_MINIMUM_TOUCH_EVENTS_AFTER_START"
// Rotation-Gesture
-#define DALI_ENV_ROTATION_MINIMUM_TOUCH_EVENTS "DALI_ROTATION_MINIMUM_TOUCH_EVENTS"
-#define DALI_ENV_ROTATION_MINIMUM_TOUCH_EVENTS_AFTER_START "DALI_ROTATION_MINIMUM_TOUCH_EVENTS_AFTER_START"
+#define DALI_ENV_ROTATION_MINIMUM_TOUCH_EVENTS "DALI_ROTATION_MINIMUM_TOUCH_EVENTS"
+#define DALI_ENV_ROTATION_MINIMUM_TOUCH_EVENTS_AFTER_START "DALI_ROTATION_MINIMUM_TOUCH_EVENTS_AFTER_START"
/**
* The minimum holding time required to be recognized as a long press gesture (milliseconds)
*/
-#define DALI_ENV_LONG_PRESS_MINIMUM_HOLDING_TIME "DALI_LONG_PRESS_MINIMUM_HOLDING_TIME"
+#define DALI_ENV_LONG_PRESS_MINIMUM_HOLDING_TIME "DALI_LONG_PRESS_MINIMUM_HOLDING_TIME"
#define DALI_GLES_CALL_TIME "DALI_GLES_CALL_TIME"
#ifndef DALI_INTERNAL_PLATFORM_FILECLOSER_H
#define DALI_INTERNAL_PLATFORM_FILECLOSER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Platform
{
-
/**
* Opens files and closes them later even if an exception is thrown.
*/
class FileCloser
{
protected: // prevent this class being directly instantiated
-
/**
* @brief Construct a FileCloser guarding a new FILE* for accessing the path passed in.
*/
- FileCloser( const char* const filename, const char* const mode )
+ FileCloser(const char* const filename, const char* const mode)
{
- DALI_ASSERT_DEBUG( filename != 0 && "Can't open a null filename." );
- DALI_ASSERT_DEBUG( mode != 0 && "Null mode is undefined behaviour in spec." );
+ DALI_ASSERT_DEBUG(filename != 0 && "Can't open a null filename.");
+ DALI_ASSERT_DEBUG(mode != 0 && "Null mode is undefined behaviour in spec.");
Dali::FileLoader::FileType fileType = Dali::FileLoader::FileType::TEXT;
const char* modeStr = mode;
- while( *modeStr )
+ while(*modeStr)
{
- switch ( *modeStr )
+ switch(*modeStr)
{
- case 'r':
- break;
- case 'b':
- fileType = FileLoader::FileType::BINARY;
- break;
- // Still has to use fopen for append and write modes
- case 'a':
- case 'w':
- case '+':
- mFile = fopen( filename, mode );
- return;
- default:
- break;
+ case 'r':
+ break;
+ case 'b':
+ fileType = FileLoader::FileType::BINARY;
+ break;
+ // Still has to use fopen for append and write modes
+ case 'a':
+ case 'w':
+ case '+':
+ mFile = fopen(filename, mode);
+ return;
+ default:
+ break;
}
++modeStr;
}
std::streampos bufferSize = 0;
- if( !Dali::FileLoader::ReadFile( filename, bufferSize, mFileBuffer, fileType ) )
+ if(!Dali::FileLoader::ReadFile(filename, bufferSize, mFileBuffer, fileType))
{
mFile = nullptr;
}
else
{
- mFile = fmemopen( &mFileBuffer[0], bufferSize, mode );
+ mFile = fmemopen(&mFileBuffer[0], bufferSize, mode);
}
}
/**
* @brief Construct a FileCloser guarding a FILE* for reading out of the memory buffer passed in.
*/
- FileCloser( uint8_t* buffer, size_t dataSize, const char* const mode )
- : mFile( fmemopen( buffer, dataSize, mode) )
+ FileCloser(uint8_t* buffer, size_t dataSize, const char* const mode)
+ : mFile(fmemopen(buffer, dataSize, mode))
{
}
- FileCloser( Dali::Vector<uint8_t>& vector, size_t dataSize, const char * const mode )
+ FileCloser(Dali::Vector<uint8_t>& vector, size_t dataSize, const char* const mode)
{
// Resize the buffer to ensure any null that gets written by
// fmemopen is written past the end of any data that is written to the buffer.
// null if binary mode is specified).
size_t bufferSize = dataSize;
++bufferSize;
- vector.Resize( bufferSize );
+ vector.Resize(bufferSize);
- void * const buffer = &vector[0];
- mFile = fmemopen( buffer, bufferSize, mode );
+ void* const buffer = &vector[0];
+ mFile = fmemopen(buffer, bufferSize, mode);
- DALI_ASSERT_DEBUG( buffer != 0 && "Cant open file on null buffer." );
- DALI_ASSERT_DEBUG( dataSize > 0 && "Pointless to open file on empty buffer." );
- DALI_ASSERT_DEBUG( mode != 0 && "Null mode is undefined behaviour in spec." );
+ DALI_ASSERT_DEBUG(buffer != 0 && "Cant open file on null buffer.");
+ DALI_ASSERT_DEBUG(dataSize > 0 && "Pointless to open file on empty buffer.");
+ DALI_ASSERT_DEBUG(mode != 0 && "Null mode is undefined behaviour in spec.");
- if( mFile == 0 )
+ if(mFile == 0)
{
- DALI_LOG_WARNING( "File open failed for memory buffer at location: \"%p\", of size: \"%u\", in mode: \"%s\".\n", static_cast<void*>(buffer), static_cast<unsigned>(dataSize), mode );
+ DALI_LOG_WARNING("File open failed for memory buffer at location: \"%p\", of size: \"%u\", in mode: \"%s\".\n", static_cast<void*>(buffer), static_cast<unsigned>(dataSize), mode);
}
}
- /**
+ /**
* @brief Destroy the FileCloser and clean up its FILE*.
*/
~FileCloser()
{
- if( mFile != 0 )
+ if(mFile != 0)
{
- const int closeFailed = fclose( mFile );
+ const int closeFailed = fclose(mFile);
- if ( closeFailed )
+ if(closeFailed)
{
- DALI_LOG_WARNING( "File close failed for FILE: \"%p\".\n", static_cast<void*>(mFile) );
+ DALI_LOG_WARNING("File close failed for FILE: \"%p\".\n", static_cast<void*>(mFile));
}
mFile = 0;
}
}
private:
-
// Undefined
- FileCloser( const FileCloser& fileCloser );
+ FileCloser(const FileCloser& fileCloser);
// Undefined
- FileCloser& operator=( const FileCloser& fileCloser );
+ FileCloser& operator=(const FileCloser& fileCloser);
private:
- FILE* mFile;
+ FILE* mFile;
Dali::Vector<char> mFileBuffer;
};
#define DALI_INTERNAL_FILE_DESCRIPTOR_MONITOR_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Integration
{
class Core;
namespace Internal
{
-
namespace Adaptor
{
-
/**
* @brief Monitors the given file descriptor and whenever anything is written to it, the provided
* callback is called
class FileDescriptorMonitor
{
public:
-
/**
* @brief Bitmask of file descriptor event types
*/
* readable or writable even when it isn’t. The developer should check for handle EAGAIN or equivalent
* when reading from or write to the fd.
*/
- FileDescriptorMonitor( int fileDescriptor, CallbackBase* callback, int eventBitmask );
+ FileDescriptorMonitor(int fileDescriptor, CallbackBase* callback, int eventBitmask);
/**
* Destructor
~FileDescriptorMonitor();
private:
-
// Undefined
- FileDescriptorMonitor( const FileDescriptorMonitor& fileDescriptorMonitor );
+ FileDescriptorMonitor(const FileDescriptorMonitor& fileDescriptorMonitor);
// Undefined
- FileDescriptorMonitor& operator=( const FileDescriptorMonitor& fileDescriptorMonitor );
+ FileDescriptorMonitor& operator=(const FileDescriptorMonitor& fileDescriptorMonitor);
private:
struct Impl;
#define DALI_INTERNAL_PORTABLE_FILE_READER_H
/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Platform
{
-
class FileReader : public FileStream
{
public:
- FileReader( const std::string& filename )
- : FileStream( filename, FileStream::READ | FileStream::BINARY )
+ FileReader(const std::string& filename)
+ : FileStream(filename, FileStream::READ | FileStream::BINARY)
{
}
- FileReader( Dali::Vector<uint8_t>& vector )
- : FileStream( &vector[0], vector.Size(), FileStream::READ | FileStream::BINARY )
+ FileReader(Dali::Vector<uint8_t>& vector)
+ : FileStream(&vector[0], vector.Size(), FileStream::READ | FileStream::BINARY)
{
}
- FileReader( Dali::Vector<uint8_t>& vector, size_t dataSize )
- : FileStream( &vector[0], dataSize, FileStream::READ | FileStream::BINARY )
+ FileReader(Dali::Vector<uint8_t>& vector, size_t dataSize)
+ : FileStream(&vector[0], dataSize, FileStream::READ | FileStream::BINARY)
{
}
- FileReader( uint8_t* data, size_t dataSize )
- : FileStream( data, dataSize, FileStream::READ | FileStream::BINARY )
+ FileReader(uint8_t* data, size_t dataSize)
+ : FileStream(data, dataSize, FileStream::READ | FileStream::BINARY)
{
}
};
#define DALI_INTERNAL_PORTABLE_FILE_WRITER_H
/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Platform
{
-
class FileWriter : public FileStream
{
public:
* @param[in,out] vector The vector to write to
* @param[in] dataSize the amount of data to be written
*/
- FileWriter( Dali::Vector<uint8_t>& vector, size_t dataSize )
- : FileStream( vector, dataSize, FileStream::WRITE | FileStream::BINARY )
+ FileWriter(Dali::Vector<uint8_t>& vector, size_t dataSize)
+ : FileStream(vector, dataSize, FileStream::WRITE | FileStream::BINARY)
{
}
};
#define DALI_INTERNAL_FPS_TRACKER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class EnvironmentOptions;
/**
class FpsTracker
{
public:
-
/**
* Create the FPS Tracker.
* @param[in] environmentOptions environment options
*/
- FpsTracker( const EnvironmentOptions& environmentOptions );
+ FpsTracker(const EnvironmentOptions& environmentOptions);
/**
* Non-virtual destructor; UpdateThread is not suitable as a base class.
bool Enabled() const;
private:
-
/**
* Output the FPS information
* when the FSP tracking is enabled,
*/
void OutputFPSRecord();
-private: // Data
-
- float mFpsTrackingSeconds; ///< fps tracking time length in seconds
- float mFrameCount; ///< how many frames occurred during tracking period
- float mElapsedTime; ///< time elapsed from previous fps tracking output
+private: // Data
+ float mFpsTrackingSeconds; ///< fps tracking time length in seconds
+ float mFrameCount; ///< how many frames occurred during tracking period
+ float mElapsedTime; ///< time elapsed from previous fps tracking output
};
} // namespace Adaptor
#define DALI_INTERNAL_ADAPTOR_FRAME_TIME_STAMP_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Simple structure to hold information about an event in time
* within Dali. For example when rendering started.
*/
struct FrameTimeStamp
{
+ static const unsigned int BUFFER_NOT_USED = 2; ///< no index buffer was used
- static const unsigned int BUFFER_NOT_USED = 2; ///< no index buffer was used
-
- /**
+ /**
* Constructor
*/
- FrameTimeStamp();
+ FrameTimeStamp();
- /**
+ /**
* Constructor
* @param frame the frame number
* @param microseconds the time from a monotonic clock
* @param bufferIndex double buffered index used for performing an update / render
*/
- FrameTimeStamp( unsigned int frame, uint64_t microseconds, unsigned int bufferIndex = BUFFER_NOT_USED );
+ FrameTimeStamp(unsigned int frame, uint64_t microseconds, unsigned int bufferIndex = BUFFER_NOT_USED);
- /**
+ /**
* Constructor
* @param bufferIndex double buffered index used for performing an update / render
*/
- FrameTimeStamp( unsigned int bufferIndex );
+ FrameTimeStamp(unsigned int bufferIndex);
- /**
+ /**
* @param start start time
* @param end end time
* @return difference in microseconds between two time stamps
*/
- static unsigned int MicrosecondDiff( const FrameTimeStamp& start,const FrameTimeStamp& end );
+ static unsigned int MicrosecondDiff(const FrameTimeStamp& start, const FrameTimeStamp& end);
- unsigned int frame; ///< Frame number ( not always available)
- uint64_t microseconds; ///< Microsecond time stamp
- unsigned int bufferIndex; ///< The double buffered index used for performing an update / render
- };
+ unsigned int frame; ///< Frame number ( not always available)
+ uint64_t microseconds; ///< Microsecond time stamp
+ unsigned int bufferIndex; ///< The double buffered index used for performing an update / render
+};
} // namespace Adaptor
} // namespace Internal
} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_FRAME_TIME_STAMP_H
-
#define DALI_INTERNAL_ADAPTOR_FRAME_TIME_STATS_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/internal/system/common/frame-time-stamp.h>
#include <dali/public-api/common/dali-vector.h>
-
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Used to get statistics about time stamps over a period of time.
* E.g. the min, max, total and average time spent inside two markers,
* Timer start time
* @param timeStamp time stamp
*/
- void StartTime( const FrameTimeStamp& timeStamp );
+ void StartTime(const FrameTimeStamp& timeStamp);
- /**
+ /**
* Timer end time
* @param timeStamp time stamp
*/
- void EndTime( const FrameTimeStamp& timeStamp );
+ void EndTime(const FrameTimeStamp& timeStamp);
- /**
+ /**
* Reset all internal counters / state except total time.
*/
- void Reset();
+ void Reset();
- /**
+ /**
* @return maximum time in seconds
*/
- float GetMaxTime() const;
+ float GetMaxTime() const;
- /**
+ /**
* @return minimum time in seconds
*/
- float GetMinTime() const;
+ float GetMinTime() const;
- /**
+ /**
* @return total time in second
*/
- float GetTotalTime() const;
+ float GetTotalTime() const;
- /**
+ /**
* Get how many times the timer has been started /stopped
*/
- unsigned int GetRunCount() const;
+ unsigned int GetRunCount() const;
- /**
+ /**
* Calculate the mean and standard deviation
*
* @param[out] mean The return mean value
* @param[out] standardDeviation The return standard deviation value
*/
- void CalculateMean( float& meanOut, float& standardDeviationOut ) const;
+ void CalculateMean(float& meanOut, float& standardDeviationOut) const;
private:
-
- /**
+ /**
* internal time state.
*/
- enum TimeState
- {
- WAITING_FOR_START_TIME, ///< waiting for start time marker
- WAITING_FOR_END_TIME ///< waiting for end time marker
- };
-
- typedef Dali::Vector< unsigned int > Samples;
- Samples mSamples;
-
- unsigned int mMin; ///< current minimum value in microseconds
- unsigned int mMax; ///< current maximum value in microseconds
- unsigned int mTotal; ///< current total in in microseconds
- unsigned int mRunCount; ///< how many times the timer has been start / stopped
- FrameTimeStamp mStart; ///< start time stamp, to calculate the diff
- TimeState mTimeState:1; ///< time state
- bool mMinMaxTimeSet:1; ///< whether the min-max values have been configured
-
+ enum TimeState
+ {
+ WAITING_FOR_START_TIME, ///< waiting for start time marker
+ WAITING_FOR_END_TIME ///< waiting for end time marker
+ };
+
+ typedef Dali::Vector<unsigned int> Samples;
+ Samples mSamples;
+
+ unsigned int mMin; ///< current minimum value in microseconds
+ unsigned int mMax; ///< current maximum value in microseconds
+ unsigned int mTotal; ///< current total in in microseconds
+ unsigned int mRunCount; ///< how many times the timer has been start / stopped
+ FrameTimeStamp mStart; ///< start time stamp, to calculate the diff
+ TimeState mTimeState : 1; ///< time state
+ bool mMinMaxTimeSet : 1; ///< whether the min-max values have been configured
};
} // namespace Adaptor
} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_FRAME_TIME_STATS_H
-
#define DALI_INTERNAL_ADAPTOR_KERNEL_TRACE_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Concrete Kernel Tracing Interface.
* Used to log trace messages to the kernel using ftrace.
class KernelTrace : public TraceInterface
{
public:
-
/**
* Constructor
*/
/**
* @copydoc KernelTracerInterface::KernelTrace()
*/
- void Trace( const PerformanceMarker& marker, const std::string& traceMessage ) override;
+ void Trace(const PerformanceMarker& marker, const std::string& traceMessage) override;
private:
-
- int mFileDescriptor;
- bool mLoggedError:1;
-
+ int mFileDescriptor;
+ bool mLoggedError : 1;
};
-} // namespace Internal
-
} // namespace Adaptor
+} // namespace Internal
+
} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_KERNEL_TRACE_H
#define DALI_INTERNAL_LOCALE_UTILS_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
namespace Locale
{
-
enum Direction
{
LEFT_TO_RIGHT,
RIGHT_TO_LEFT,
};
-Locale::Direction GetDirection( const std::string& locale );
+Locale::Direction GetDirection(const std::string& locale);
} // namespace Locale
#define DALI_TIZEN_LOGGING_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/integration-api/debug.h>
-
namespace Dali
{
-
namespace TizenPlatform
{
-
/**
* @copydoc Dali::Integration::Log:LogMessage
*/
#define DALI_ADAPTOR_OBJECT_PROFILER_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <cstdint> // uint32_t
-#include <cstddef> // size_t
#include <dali/public-api/common/vector-wrapper.h>
#include <dali/public-api/object/object-registry.h>
#include <dali/public-api/object/type-registry.h>
#include <dali/public-api/signals/connection-tracker.h>
+#include <cstddef> // size_t
+#include <cstdint> // uint32_t
// INTERNAL INCLUDES
#include <dali/public-api/adaptor-framework/timer.h>
{
namespace Adaptor
{
-
/**
* Class to profile the number of instances of Objects in the system
*/
class ObjectProfiler : public ConnectionTracker
{
public:
-
/**
* Constructor
* @param objectRegistry The objectRegistry
* @param timeInterval to specify the frequency of reporting
*/
- ObjectProfiler( Dali::ObjectRegistry objectRegistry, uint32_t timeInterval );
+ ObjectProfiler(Dali::ObjectRegistry objectRegistry, uint32_t timeInterval);
/**
* Destructor
* Callback used when objects are created. Increases instance count for that object type
* @param[in] handle of the created object
*/
- void OnObjectCreated( BaseHandle handle );
+ void OnObjectCreated(BaseHandle handle);
/**
* Callback used when objects are created. Decreases instance count for that object type
* @param[in] object The object being destroyed
*/
- void OnObjectDestroyed( const Dali::RefObject* object );
+ void OnObjectDestroyed(const Dali::RefObject* object);
/**
* Get the memory size of the given object
*/
- std::size_t GetMemorySize( const std::string& name, uint32_t count );
+ std::size_t GetMemorySize(const std::string& name, uint32_t count);
private:
+ using InstanceCountPair = std::pair<const std::string, uint32_t>;
+ using InstanceTypePair = std::pair<BaseObject*, std::string>;
- using InstanceCountPair = std::pair< const std::string, uint32_t >;
- using InstanceTypePair = std::pair< BaseObject*, std::string >;
-
- Dali::ObjectRegistry mObjectRegistry;
- Dali::Timer mTimer;
- std::vector< InstanceCountPair > mInstanceCountContainer;
- std::vector< InstanceTypePair > mInstanceTypes;
+ Dali::ObjectRegistry mObjectRegistry;
+ Dali::Timer mTimer;
+ std::vector<InstanceCountPair> mInstanceCountContainer;
+ std::vector<InstanceTypePair> mInstanceTypes;
};
-} // Adaptor
-} // Internal
-} // Dali
+} // namespace Adaptor
+} // namespace Internal
+} // namespace Dali
#endif // DALI_ADAPTOR_OBJECT_PROFILER_H
#define DALI_INTERNAL_BASE_PERFORMANCE_INTERFACE_FACTORY_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Performance interface factory class
*
class PerformanceInterfaceFactory
{
public:
-
/**
* Create a new concrete implementation of the performance interface.
* @param adaptorServices adaptor internal services
* @param environmentOptions environment options
* @return pointer to a new performance interface
*/
- static PerformanceInterface* CreateInterface( AdaptorInternalServices& adaptorServices,
- const EnvironmentOptions& environmentOptions );
-
+ static PerformanceInterface* CreateInterface(AdaptorInternalServices& adaptorServices,
+ const EnvironmentOptions& environmentOptions);
};
-} // namespace Internal
-
} // namespace Adaptor
+} // namespace Internal
+
} // namespace Dali
#endif // DALI_INTERNAL_BASE_PERFORMANCE_INTERFACE_FACTORY_H
#define DALI_INTERNAL_BASE_PERFORMANCE_INTERFACE_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Abstract Performance Interface.
* Used by the Adaptor to store performance metrics.
class PerformanceInterface
{
public:
-
- typedef unsigned short ContextId; ///< Type to represent a context ID
+ typedef unsigned short ContextId; ///< Type to represent a context ID
/**
* bitmask of statistics logging options.
*/
enum StatisticsLogOptions
{
- DISABLED = 0,
- LOG_EVERYTHING = 1 << 0, ///< Bit 0 (1), log all statistics to the DALi log
- LOG_UPDATE_RENDER = 1 << 1, ///< Bit 1 (2), log update and render statistics to the DALi log
- LOG_EVENT_PROCESS = 1 << 2, ///< Bit 2 (4), log event task statistics to the DALi log
- LOG_CUSTOM_MARKERS = 1 << 3, ///< Bit 3 (8), log custom marker statistics to the DALi log
+ DISABLED = 0,
+ LOG_EVERYTHING = 1 << 0, ///< Bit 0 (1), log all statistics to the DALi log
+ LOG_UPDATE_RENDER = 1 << 1, ///< Bit 1 (2), log update and render statistics to the DALi log
+ LOG_EVENT_PROCESS = 1 << 2, ///< Bit 2 (4), log event task statistics to the DALi log
+ LOG_CUSTOM_MARKERS = 1 << 3, ///< Bit 3 (8), log custom marker statistics to the DALi log
};
/**
*/
enum TimeStampOutput
{
- NO_TIME_STAMP_OUTPUT = 0,
- OUTPUT_DALI_LOG = 1 << 0, ///< Bit 0 (1), log markers to DALi log
- OUTPUT_KERNEL_TRACE = 1 << 1, ///< Bit 1 (2), log makers to kernel trace
- OUTPUT_SYSTEM_TRACE = 1 << 2, ///< Bit 2 (4), log markers to system trace
- OUTPUT_NETWORK = 1 << 3, ///< Bit 3 (8), log markers to network client
+ NO_TIME_STAMP_OUTPUT = 0,
+ OUTPUT_DALI_LOG = 1 << 0, ///< Bit 0 (1), log markers to DALi log
+ OUTPUT_KERNEL_TRACE = 1 << 1, ///< Bit 1 (2), log makers to kernel trace
+ OUTPUT_SYSTEM_TRACE = 1 << 2, ///< Bit 2 (4), log markers to system trace
+ OUTPUT_NETWORK = 1 << 3, ///< Bit 3 (8), log markers to network client
};
/**
*/
enum MarkerType
{
- VSYNC = 0, ///< V-Sync
- UPDATE_START , ///< Update start
- UPDATE_END , ///< Update end
- RENDER_START , ///< Render start
- RENDER_END , ///< Render end
- SWAP_START , ///< SwapBuffers Start
- SWAP_END , ///< SwapBuffers End
+ VSYNC = 0, ///< V-Sync
+ UPDATE_START, ///< Update start
+ UPDATE_END, ///< Update end
+ RENDER_START, ///< Render start
+ RENDER_END, ///< Render end
+ SWAP_START, ///< SwapBuffers Start
+ SWAP_END, ///< SwapBuffers End
PROCESS_EVENTS_START, ///< Process events start (e.g. touch event)
PROCESS_EVENTS_END, ///< Process events end
- PAUSED , ///< Pause start
- RESUME , ///< Resume start
- START , ///< The start of custom tracking
+ PAUSED, ///< Pause start
+ RESUME, ///< Resume start
+ START, ///< The start of custom tracking
END ///< The end of custom tracking
};
/**
* Constructor.
*/
- PerformanceInterface() {}
+ PerformanceInterface()
+ {
+ }
/**
* Virtual destructor
*/
- virtual ~PerformanceInterface() {};
+ virtual ~PerformanceInterface(){};
/**
* @brief Add a new context with a given name
* @param[in] name The name of the context
* @return Return the unique id for this context
*/
- virtual ContextId AddContext( const char* name ) = 0;
+ virtual ContextId AddContext(const char* name) = 0;
/**
* @brief Remove a context from use
*
* @param[in] contextId The ID of the context to remove
*/
- virtual void RemoveContext( ContextId contextId ) = 0;
+ virtual void RemoveContext(ContextId contextId) = 0;
/**
* @brief Add a performance marker
* The default context 0 Event/Update/Render is assumed.
* @param[in] markerType performance marker type
*/
- virtual void AddMarker( MarkerType markerType ) = 0;
+ virtual void AddMarker(MarkerType markerType) = 0;
/**
* @brief Add a performance marker for a used defined context
* @param[in] markerType performance marker type
* @param[in] contextId The context of the marker. This must be one generated by AddContext.
*/
- virtual void AddMarker( MarkerType markerType, ContextId contextId ) = 0;
+ virtual void AddMarker(MarkerType markerType, ContextId contextId) = 0;
/**
* @brief Set the logging level and frequency
* @param[in] timeStampOutput 0 = disabled, > 0 bitmask of TimeStampOutput options.
* @param[in] logFrequency how often to log out in seconds
*/
- virtual void SetLogging( unsigned int statisticsLogOptions, unsigned int timeStampOutput, unsigned int logFrequency) = 0;
+ virtual void SetLogging(unsigned int statisticsLogOptions, unsigned int timeStampOutput, unsigned int logFrequency) = 0;
/**
* @brief Set the logging frequency for an individual context
*
* @param[in] logFrequency how often to log out in seconds
*/
- virtual void SetLoggingFrequency( unsigned int logFrequency, ContextId contextId ) = 0;
+ virtual void SetLoggingFrequency(unsigned int logFrequency, ContextId contextId) = 0;
/**
* @brief Set logging on or off for a particular context
* @param[in] enable Enable logging or not
* @param[in] contextId The id of the context to log. This must be one generated by AddContext.
*/
- virtual void EnableLogging( bool enable, ContextId contextId ) = 0;
+ virtual void EnableLogging(bool enable, ContextId contextId) = 0;
private:
-
// Undefined copy constructor.
- PerformanceInterface( const PerformanceInterface& );
+ PerformanceInterface(const PerformanceInterface&);
// Undefined assignment operator.
- PerformanceInterface& operator=( const PerformanceInterface& );
-
+ PerformanceInterface& operator=(const PerformanceInterface&);
};
-} // namespace Internal
-
} // namespace Adaptor
+} // namespace Internal
+
} // namespace Dali
#endif
#define DALI_INTERNAL_PERFORMANCE_LOGGER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/public-api/object/base-object.h>
// INTERNAL INCLUDES
-#include <dali/internal/system/common/performance-interface.h>
#include <dali/devel-api/adaptor-framework/performance-logger.h>
+#include <dali/internal/system/common/performance-interface.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class PerformanceLogger;
typedef IntrusivePtr<PerformanceLogger> PerformanceLoggerPtr;
class PerformanceLogger : public BaseObject
{
public:
-
/**
* @brief Create a new logger
*
* @param[in] name The name of the logger. This needs to be a compile-time literal and alive for the whole lifetime of the performance logger.
* @return a new logger
*/
- static PerformanceLoggerPtr New( const char* name );
+ static PerformanceLoggerPtr New(const char* name);
/**
* Constructor
* @param[in] name The name to assing to the logger
*/
- PerformanceLogger( const char* name );
+ PerformanceLogger(const char* name);
/**
* Destructor.
*
* @param markerType Performance marker type
*/
- void AddMarker( Dali::PerformanceLogger::Marker markerType );
+ void AddMarker(Dali::PerformanceLogger::Marker markerType);
/**
* Set the logging frequency
*
* @param logFrequency how often to log out in seconds
*/
- void SetLoggingFrequency( unsigned int logFrequency);
+ void SetLoggingFrequency(unsigned int logFrequency);
/**
* Set logging on or off for this logger
*
* @param[in] enable Enable logging or not
*/
- void EnableLogging( bool enable );
+ void EnableLogging(bool enable);
private: // Implementation
-
// not implemented
- PerformanceLogger( const PerformanceLogger& );
- PerformanceLogger& operator=( const PerformanceLogger& );
+ PerformanceLogger(const PerformanceLogger&);
+ PerformanceLogger& operator=(const PerformanceLogger&);
private:
-
- PerformanceInterface::ContextId mContext; ///< Context of this logger
-
+ PerformanceInterface::ContextId mContext; ///< Context of this logger
};
// Helpers for public-api forwarding methods
-inline static Internal::Adaptor::PerformanceLogger& GetImplementation( Dali::PerformanceLogger& logger )
+inline static Internal::Adaptor::PerformanceLogger& GetImplementation(Dali::PerformanceLogger& logger)
{
- DALI_ASSERT_ALWAYS( logger && "PerformanceLogger handle is empty" );
+ DALI_ASSERT_ALWAYS(logger && "PerformanceLogger handle is empty");
BaseObject& handle = logger.GetBaseObject();
- return static_cast< Internal::Adaptor::PerformanceLogger& >( handle );
+ return static_cast<Internal::Adaptor::PerformanceLogger&>(handle);
}
-inline static const Internal::Adaptor::PerformanceLogger& GetImplementation( const Dali::PerformanceLogger& logger )
+inline static const Internal::Adaptor::PerformanceLogger& GetImplementation(const Dali::PerformanceLogger& logger)
{
- DALI_ASSERT_ALWAYS( logger && "PerformanceLogger handle is empty" );
+ DALI_ASSERT_ALWAYS(logger && "PerformanceLogger handle is empty");
const BaseObject& handle = logger.GetBaseObject();
- return static_cast< const Internal::Adaptor::PerformanceLogger& >( handle );
+ return static_cast<const Internal::Adaptor::PerformanceLogger&>(handle);
}
} // namespace Adaptor
#define DALI_INTERNAL_ADAPTOR_PERFORMANCE_MARKER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// INTERNAL INCLUDES
-#include <dali/internal/system/common/performance-interface.h>
#include <dali/internal/system/common/frame-time-stamp.h>
+#include <dali/internal/system/common/performance-interface.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Marker used to record an event with a time stamp in Dali
*/
class PerformanceMarker
{
public:
-
-
/**
* Bitmask used to filter different types of markers based
* on what group they belong to.
*/
enum MarkerFilter
{
- FILTERING_DISABLED = 0, ///< disabled
- V_SYNC_EVENTS = 1 << 0, ///< v-sync
- UPDATE = 1 << 1, ///< update start / end
- RENDER = 1 << 2, ///< render start / end
- EVENT_PROCESS = 1 << 3, ///< process events start / end
- SWAP_BUFFERS = 1 << 4, ///< swap buffers start / end
- LIFE_CYCLE_EVENTS = 1 << 5, ///< pause / resume
- RESOURCE_EVENTS = 1 << 6, ///< resource events
- CUSTOM_EVENTS = 1 << 7
+ FILTERING_DISABLED = 0, ///< disabled
+ V_SYNC_EVENTS = 1 << 0, ///< v-sync
+ UPDATE = 1 << 1, ///< update start / end
+ RENDER = 1 << 2, ///< render start / end
+ EVENT_PROCESS = 1 << 3, ///< process events start / end
+ SWAP_BUFFERS = 1 << 4, ///< swap buffers start / end
+ LIFE_CYCLE_EVENTS = 1 << 5, ///< pause / resume
+ RESOURCE_EVENTS = 1 << 6, ///< resource events
+ CUSTOM_EVENTS = 1 << 7
};
/**
*/
enum MarkerEventType
{
- SINGLE_EVENT, ///< event is something that has no duration associated with it
- START_TIMED_EVENT, ///< start of a timed event
- END_TIMED_EVENT ///< end of a timed event
+ SINGLE_EVENT, ///< event is something that has no duration associated with it
+ START_TIMED_EVENT, ///< start of a timed event
+ END_TIMED_EVENT ///< end of a timed event
};
-
/**
* @brief Constructor
* @param[in] type marker type
*/
- PerformanceMarker( PerformanceInterface::MarkerType type );
+ PerformanceMarker(PerformanceInterface::MarkerType type);
/**
* @brief Constructor
* @param[in] type marker type
* @param[in] time time stamp
*/
- PerformanceMarker( PerformanceInterface::MarkerType type, FrameTimeStamp time );
+ PerformanceMarker(PerformanceInterface::MarkerType type, FrameTimeStamp time);
/**
* @return the time stamp
*/
MarkerFilter GetFilterType() const;
-
/**
* @return marker name
*/
- const char* GetName( ) const;
+ const char* GetName() const;
/**
* @param start the start marker
* @param end the end marker
* @return difference in microseconds between two markers
*/
- static unsigned int MicrosecondDiff( const PerformanceMarker& start, const PerformanceMarker& end );
+ static unsigned int MicrosecondDiff(const PerformanceMarker& start, const PerformanceMarker& end);
/**
* @return if a marker is enabled as part of a group
*/
- bool IsFilterEnabled( MarkerFilter filter ) const;
-private:
-
- PerformanceInterface::MarkerType mType; ///< marker type
- FrameTimeStamp mTimeStamp; ///< frame time stamp
+ bool IsFilterEnabled(MarkerFilter filter) const;
+private:
+ PerformanceInterface::MarkerType mType; ///< marker type
+ FrameTimeStamp mTimeStamp; ///< frame time stamp
};
} // namespace Adaptor
#define DALI_INTERNAL_ADAPTOR_PERFORMANCE_SERVER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLDUES
-#include <dali/public-api/common/dali-vector.h>
#include <dali/devel-api/threading/mutex.h>
+#include <dali/public-api/common/dali-vector.h>
// INTERNAL INCLUDES
-#include <dali/internal/system/common/frame-time-stats.h>
-#include <dali/internal/network/common/network-performance-server.h>
#include <dali/internal/adaptor/common/adaptor-internal-services.h>
+#include <dali/internal/network/common/network-performance-server.h>
+#include <dali/internal/system/common/frame-time-stats.h>
#include <dali/internal/system/common/performance-marker.h>
#include <dali/internal/system/common/stat-context-manager.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class EnvironmentOptions;
class StatContext;
/**
class PerformanceServer : public PerformanceInterface, public StatContextLogInterface
{
public:
-
/**
* @brief Constructor
* @param[in] adaptorServices adaptor internal services
* @param[in] environmentOptions environment options
*/
- PerformanceServer( AdaptorInternalServices& adaptorServices,
- const EnvironmentOptions& environmentOptions );
+ PerformanceServer(AdaptorInternalServices& adaptorServices,
+ const EnvironmentOptions& environmentOptions);
/**
* Destructor
/**
* @copydoc PerformanceLogger::AddContext()
*/
- ContextId AddContext( const char* name ) override;
+ ContextId AddContext(const char* name) override;
/**
* @copydoc PerformanceLogger::RemoveContext()
*/
- void RemoveContext( ContextId contextId ) override;
+ void RemoveContext(ContextId contextId) override;
/**
* @copydoc PerformanceInterface::AddMarker( MarkerType markerType )
*/
- void AddMarker( MarkerType markerType ) override;
+ void AddMarker(MarkerType markerType) override;
/**
* @copydoc PerformanceLogger::AddMarker( MarkerType markerType, ContextId contextId )
*/
- void AddMarker( MarkerType markerType, ContextId contextId ) override;
+ void AddMarker(MarkerType markerType, ContextId contextId) override;
/**
* @copydoc PerformanceInterface::SetLogging()
*/
- virtual void SetLogging( unsigned int statisticsLogOptions,
- unsigned int timeStampOutput,
- unsigned int logFrequency );
+ virtual void SetLogging(unsigned int statisticsLogOptions,
+ unsigned int timeStampOutput,
+ unsigned int logFrequency);
/**
* @copydoc PerformanceLogger::SetLoggingFrequency()
*/
- void SetLoggingFrequency( unsigned int logFrequency, ContextId contextId ) override;
+ void SetLoggingFrequency(unsigned int logFrequency, ContextId contextId) override;
/**
* @copydoc PerformanceLogger::EnableLogging()
*/
- void EnableLogging( bool enable, ContextId contextId ) override;
+ void EnableLogging(bool enable, ContextId contextId) override;
public: //StatLogInterface
-
/**
* @copydoc StatLogInterface::LogContextStatistics()
*/
- void LogContextStatistics( const char* const text ) override;
+ void LogContextStatistics(const char* const text) override;
private:
-
/**
* @brief log the marker out to kernel/ DALi log
* @param[in] marker performance marker
* @param[in] description marker description
*/
- void LogMarker( const PerformanceMarker& marker, const char* const description );
+ void LogMarker(const PerformanceMarker& marker, const char* const description);
private:
-
- const EnvironmentOptions& mEnvironmentOptions; ///< environment options
- TraceInterface& mKernelTrace; ///< kernel trace interface
- TraceInterface& mSystemTrace; ///< system trace interface
- Dali::Mutex mLogMutex; ///< mutex
+ const EnvironmentOptions& mEnvironmentOptions; ///< environment options
+ TraceInterface& mKernelTrace; ///< kernel trace interface
+ TraceInterface& mSystemTrace; ///< system trace interface
+ Dali::Mutex mLogMutex; ///< mutex
#if defined(NETWORK_LOGGING_ENABLED)
- NetworkPerformanceServer mNetworkServer; ///< network server
- bool mNetworkControlEnabled; ///< Whether network control is enabled
+ NetworkPerformanceServer mNetworkServer; ///< network server
+ bool mNetworkControlEnabled; ///< Whether network control is enabled
#endif
- StatContextManager mStatContextManager; ///< Stat context manager
- unsigned int mStatisticsLogBitmask; ///< statistics log level
- unsigned int mPerformanceOutputBitmask; ///< performance marker output
+ StatContextManager mStatContextManager; ///< Stat context manager
+ unsigned int mStatisticsLogBitmask; ///< statistics log level
+ unsigned int mPerformanceOutputBitmask; ///< performance marker output
- bool mLoggingEnabled:1; ///< whether logging update / render to a log is enabled
- bool mLogFunctionInstalled:1; ///< whether the log function is installed
+ bool mLoggingEnabled : 1; ///< whether logging update / render to a log is enabled
+ bool mLogFunctionInstalled : 1; ///< whether the log function is installed
};
+} // namespace Adaptor
} // namespace Internal
-} // namespace Adaptor
-
} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_PERFORMANCE_SERVER_H
#define DALI_INTERNAL_ADAPTOR_SHARED_FILE_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <string>
#include <sys/types.h>
+#include <string>
namespace Dali
{
{
namespace Adaptor
{
-
class SharedFile
{
public:
* Open an existing shared file for read/write
* @return The shared file, or NULL if a file could not be opened and mapped.
*/
- static SharedFile* New( const char* filename, int size, bool isSystem );
+ static SharedFile* New(const char* filename, int size, bool isSystem);
/**
* Constructor
* Opens a file descriptor to shared memory segment
* @return The file descriptor
*/
- int Open( const char* filename, int size, int oflag, mode_t mode );
+ int Open(const char* filename, int size, int oflag, mode_t mode);
/**
* Opens a file for read/write
* @return true if opened, false on error.
*/
- bool OpenFile( const char* filename, int size, bool isSystem );
+ bool OpenFile(const char* filename, int size, bool isSystem);
/**
* Close the shared file
std::string mFilename;
};
-} // Adaptor
-} // Internal
-} // Dali
+} // namespace Adaptor
+} // namespace Internal
+} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_SHARED_FILE_H
#define DALI_INTERNAL_SOUND_PLAYER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <string>
#include <dali/public-api/object/base-object.h>
+#include <string>
// INTERNAL INCLUDES
#include <dali/devel-api/adaptor-framework/sound-player.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Plays haptic effects.
*/
class SoundPlayer : public Dali::BaseObject
{
-
public:
-
typedef Dali::SoundPlayer::SoundPlayFinishedSignalType SoundPlayFinishedSignalType;
/**
* @return True if the signal was connected.
* @post If a signal was connected, ownership of functor was passed to CallbackBase. Otherwise the caller is responsible for deleting the unused functor.
*/
- static bool DoConnectSignal( BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor );
+ static bool DoConnectSignal(BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor);
private:
-
/**
* Private Constructor; see also soundPlayer::New()
* @param[in] soundPlayer The public sound player class
SoundPlayer& operator=(SoundPlayer&);
private:
-
- FeedbackPluginProxy mPlugin;
+ FeedbackPluginProxy mPlugin;
SoundPlayFinishedSignalType mSoundPlayFinishedSignal;
};
} // namespace Internal
-
// Helpers for public-api forwarding methods
inline Internal::Adaptor::SoundPlayer& GetImplementation(Dali::SoundPlayer& player)
{
- DALI_ASSERT_ALWAYS( player && "SoundPlayer handle is empty" );
+ DALI_ASSERT_ALWAYS(player && "SoundPlayer handle is empty");
BaseObject& handle = player.GetBaseObject();
inline const Internal::Adaptor::SoundPlayer& GetImplementation(const Dali::SoundPlayer& player)
{
- DALI_ASSERT_ALWAYS( player && "SoundPlayer handle is empty" );
+ DALI_ASSERT_ALWAYS(player && "SoundPlayer handle is empty");
const BaseObject& handle = player.GetBaseObject();
#define DALI_INTERNAL_ADAPTOR_STATISTICS_STAT_CONTEXT_LOG_INTERFACE_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* @brief Abstract interface used to log statistics data
*/
class StatContextLogInterface
{
public:
-
/**
* @brief Used to log statistics out
* @param[in] text log the text
*/
- virtual void LogContextStatistics( const char* const text) = 0;
-
+ virtual void LogContextStatistics(const char* const text) = 0;
protected:
-
/**
* @brief Constructor
*/
}
private:
-
// Undefined copy constructor.
- StatContextLogInterface( const StatContextLogInterface& );
+ StatContextLogInterface(const StatContextLogInterface&);
// Undefined assignment operator.
- StatContextLogInterface& operator=( const StatContextLogInterface& );
-
+ StatContextLogInterface& operator=(const StatContextLogInterface&);
};
+} // namespace Adaptor
} // namespace Internal
-} // namespace Adaptor
-
} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_STATISTICS_STAT_CONTEXT_LOG_INTERFACE_H
#define DALI_INTERNAL_ADAPTOR_STAT_CONTEXT_MANAGER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/devel-api/threading/mutex.h>
// INTERNAL INCLUDES
+#include <dali/internal/system/common/performance-interface.h>
#include <dali/internal/system/common/performance-marker.h>
#include <dali/internal/system/common/stat-context.h>
-#include <dali/internal/system/common/performance-interface.h>
-
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Class to manage StatContext objects.
*
*/
class StatContextManager
{
-
public:
-
- /**
+ /**
* @brief Constructor
* @param[in] logInterface interface to log statistics to
*/
- StatContextManager( StatContextLogInterface& logInterface );
+ StatContextManager(StatContextLogInterface& logInterface);
- /**
+ /**
* @brief destructor, not intended as a bass class
*/
- ~StatContextManager();
+ ~StatContextManager();
- /**
+ /**
* @brief Add a context
* @param[in] name Name of the context to print in console
* @param[in] type the type of events to filter ( e.g. event, update, render or custom)
* @return The ID to give the context
*/
- PerformanceInterface::ContextId AddContext( const char* const name, PerformanceMarker::MarkerFilter type );
+ PerformanceInterface::ContextId AddContext(const char* const name, PerformanceMarker::MarkerFilter type);
- /**
+ /**
* @brief Remove a context
* @param[in] contextId id of the context to remove
*/
- void RemoveContext(PerformanceInterface::ContextId contextId );
+ void RemoveContext(PerformanceInterface::ContextId contextId);
- /**
+ /**
* @brief Add an internal marker (e.g. v-sync, update, render markers)
* @param[in] marker the marker to add
*/
- void AddInternalMarker( const PerformanceMarker& marker );
+ void AddInternalMarker(const PerformanceMarker& marker);
- /**
+ /**
* @brief Add a custom marker defined by the application
* @param[in] marker the marker to add
* @param[in] contextId the context the custom marker is designed for
*/
- void AddCustomMarker( const PerformanceMarker& marker , PerformanceInterface::ContextId contextId );
+ void AddCustomMarker(const PerformanceMarker& marker, PerformanceInterface::ContextId contextId);
- /**
+ /**
* @brief Get the nane of a context
* @param[in] contextId id of the context to get the name
* @return context name
*/
- const char* GetContextName( PerformanceInterface::ContextId contextId ) const;
+ const char* GetContextName(PerformanceInterface::ContextId contextId) const;
- /**
+ /**
* @brief Get the full description of a marker for this context
* @param[in] type marker type, for a customer marker this will be either START or END
* @param[in] contextId id of the context to get the name
* @return marker description in relation to this context
*/
- const char* GetMarkerDescription( PerformanceInterface::MarkerType type, PerformanceInterface::ContextId contextId ) const;
-
+ const char* GetMarkerDescription(PerformanceInterface::MarkerType type, PerformanceInterface::ContextId contextId) const;
- /**
+ /**
* @brief enable / disable logging for a context
* @param[in] enable whether to enable logging
* @param[in] contextId the context to configure
*/
- void EnableLogging( bool enable, PerformanceInterface::ContextId contextId );
+ void EnableLogging(bool enable, PerformanceInterface::ContextId contextId);
- /**
+ /**
* @brief set global logging level and frequency.
* @param[in] statisticsLogOptions log options
* @param[in] logFrequency frequency in seconds
*/
- void SetLoggingLevel( unsigned int statisticsLogOptions, unsigned int logFrequency);
+ void SetLoggingLevel(unsigned int statisticsLogOptions, unsigned int logFrequency);
- /**
+ /**
* @brief Set the frequency of logging for an individual context
* @param[in] logFrequency log frequency in seconds
* @param[in] contextId the context to configure
*/
- void SetLoggingFrequency( unsigned int logFrequency, PerformanceInterface::ContextId contextId );
+ void SetLoggingFrequency(unsigned int logFrequency, PerformanceInterface::ContextId contextId);
- private:
+private:
+ StatContextManager(const StatContextManager&); ///< Undefined
+ StatContextManager& operator=(const StatContextManager&); ///< Undefined
- StatContextManager( const StatContextManager& ); ///< Undefined
- StatContextManager& operator=( const StatContextManager& ); ///< Undefined
+ typedef Dali::Vector<StatContext*> StatContexts;
- typedef Dali::Vector< StatContext* > StatContexts;
-
- /**
+ /**
* @brief helper
* @param[in] contextId the context to get
* @return context
*/
- StatContext* GetContext( PerformanceInterface::ContextId contextId ) const;
+ StatContext* GetContext(PerformanceInterface::ContextId contextId) const;
- Dali::Mutex mDataMutex; ///< mutex
- StatContexts mStatContexts; ///< The list of stat contexts
- StatContextLogInterface& mLogInterface; ///< Log interface
+ Dali::Mutex mDataMutex; ///< mutex
+ StatContexts mStatContexts; ///< The list of stat contexts
+ StatContextLogInterface& mLogInterface; ///< Log interface
- PerformanceInterface::ContextId mNextContextId; ///< The next valid context ID
+ PerformanceInterface::ContextId mNextContextId; ///< The next valid context ID
- // Some defaults contexts
- PerformanceInterface::ContextId mUpdateStats; ///< update time statistics
- PerformanceInterface::ContextId mRenderStats; ///< render time statistics
- PerformanceInterface::ContextId mEventStats; ///< event time statistics
+ // Some defaults contexts
+ PerformanceInterface::ContextId mUpdateStats; ///< update time statistics
+ PerformanceInterface::ContextId mRenderStats; ///< render time statistics
+ PerformanceInterface::ContextId mEventStats; ///< event time statistics
- unsigned int mStatisticsLogBitmask; ///< statistics log bitmask
- unsigned int mLogFrequency; ///< log frequency
+ unsigned int mStatisticsLogBitmask; ///< statistics log bitmask
+ unsigned int mLogFrequency; ///< log frequency
};
+} // namespace Adaptor
} // namespace Internal
-} // namespace Adaptor
-
} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_STAT_CONTEXT_MANAGER_H
-
#define DALI_INTERNAL_ADAPTOR_STAT_CONTEXT_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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/internal/system/common/performance-marker.h>
#include <dali/internal/system/common/frame-time-stats.h>
#include <dali/internal/system/common/performance-interface.h>
+#include <dali/internal/system/common/performance-marker.h>
#include <dali/internal/system/common/stat-context-log-interface.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Stores and prints statistics for a particular logging context.
*
*/
class StatContext
{
-
public:
-
- /**
+ /**
* @brief Constructor
*
* @param[in] id The ID to give the context
* @param[in] logInterface interface to log out to
*
*/
- StatContext( unsigned int id,
- const char* const contextName,
- PerformanceMarker::MarkerFilter contextType,
- unsigned int logFrequencySeconds,
- StatContextLogInterface& logInterface );
-
+ StatContext(unsigned int id,
+ const char* const contextName,
+ PerformanceMarker::MarkerFilter contextType,
+ unsigned int logFrequencySeconds,
+ StatContextLogInterface& logInterface);
- /**
+ /**
* @brief Non-virtual destructor, not intended as a base class
*/
- ~StatContext();
+ ~StatContext();
- /**
+ /**
* @return Return the context ID
*/
- unsigned int GetId() const;
+ unsigned int GetId() const;
- /**
+ /**
* @return the context name
*/
- const char* GetName() const;
+ const char* GetName() const;
- /**
+ /**
*
* For logging we want to output the name of the context with either
* START / END appended to the end. E.g. MY_MARKER_START
* @param[in] type marker type, for a customer marker this will be either START or END
* @return the full description for a marker
*/
- const char* GetMarkerDescription( PerformanceInterface::MarkerType type ) const;
+ const char* GetMarkerDescription(PerformanceInterface::MarkerType type) const;
- /**
+ /**
* @brief Set the frequency for logging
*
* @param[in] logFrequencySeconds The log frequency to set in seconds
*/
- void SetLogFrequency( unsigned int logFrequencySeconds );
+ void SetLogFrequency(unsigned int logFrequencySeconds);
- /**
+ /**
* @brief enable/disable logging
*
* @param[in] enableLogging Flag to spePerformancecify enabling/disabling
*/
- void EnableLogging( bool enableLogging );
+ void EnableLogging(bool enableLogging);
- /**
+ /**
* @brief Process a custom marker from the application
*
* @param[in] marker The marker to log
*/
- void ProcessCustomMarker( const PerformanceMarker& marker );
+ void ProcessCustomMarker(const PerformanceMarker& marker);
- /**
+ /**
* @brief Process a internal marker from DALi (V_SYNC/ UPDATE /RENDER/ EVENT )
*
* @param[in] marker The marker to log
*/
- void ProcessInternalMarker( const PerformanceMarker& marker );
+ void ProcessInternalMarker(const PerformanceMarker& marker);
- private:
-
- /**
+private:
+ /**
* @brief Record marker
*
* @param[in] marker to record
*/
- void RecordMarker( const PerformanceMarker& marker );
+ void RecordMarker(const PerformanceMarker& marker);
- /**
+ /**
* @brief Called when V-SYNC occurs to indicate a frame tick
* @param[in] marker the marker containing a v-sync
*/
- void FrameTick( const PerformanceMarker& marker );
+ void FrameTick(const PerformanceMarker& marker);
- /**
+ /**
* @brief Helper to print to console
*/
- void LogMarker();
-
-
- private:
-
- StatContext(); ///< undefined default constructor
-
- StatContext( const StatContext& ); ///< undefined copy constructor
-
- StatContext& operator=( const StatContext& ); ///< undefined assignment operator
-
- private:
-
- PerformanceMarker mInitialMarker; ///< Used to store initial time
- FrameTimeStats mStats; ///< Frame time stats to accumulate
- const char* const mName; ///< Name of the context
- char* mTempLogBuffer; ///< Temporary log buffer
- StatContextLogInterface& mLogInterface; ///< Log interface
- const std::string mNamePlusStart; ///< Name of the context + _START
- const std::string mNamePlusEnd; ///< Name of the context + _END
- unsigned int mId; ///< The ID of the context
- unsigned int mLogFrequencyMicroseconds; ///< if logging is enabled, what frequency to log out at in micro-seconds
- PerformanceMarker::MarkerFilter mFilterType; ///< type of events the context is filtering
- bool mLoggingEnabled:1; ///< Whether to print the log for this context or not
- bool mInitialMarkerSet:1; ///< Whether the initial marker has been set
-
+ void LogMarker();
+
+private:
+ StatContext(); ///< undefined default constructor
+
+ StatContext(const StatContext&); ///< undefined copy constructor
+
+ StatContext& operator=(const StatContext&); ///< undefined assignment operator
+
+private:
+ PerformanceMarker mInitialMarker; ///< Used to store initial time
+ FrameTimeStats mStats; ///< Frame time stats to accumulate
+ const char* const mName; ///< Name of the context
+ char* mTempLogBuffer; ///< Temporary log buffer
+ StatContextLogInterface& mLogInterface; ///< Log interface
+ const std::string mNamePlusStart; ///< Name of the context + _START
+ const std::string mNamePlusEnd; ///< Name of the context + _END
+ unsigned int mId; ///< The ID of the context
+ unsigned int mLogFrequencyMicroseconds; ///< if logging is enabled, what frequency to log out at in micro-seconds
+ PerformanceMarker::MarkerFilter mFilterType; ///< type of events the context is filtering
+ bool mLoggingEnabled : 1; ///< Whether to print the log for this context or not
+ bool mInitialMarkerSet : 1; ///< Whether the initial marker has been set
};
+} // namespace Adaptor
} // namespace Internal
-} // namespace Adaptor
-
} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_STAT_CONTEXT_H
#define DALI_INTERNAL_SYSTEM_SETTINGS_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
// Get SYSTEM_SETTINGS_KEY_TAP_AND_HOLD_DELAY from system setting if available
-int GetLongPressTime( int defaultTime );
+int GetLongPressTime(int defaultTime);
// Get ELM_ACCESS_ACTION_OVER from Elementary if available
int GetElmAccessActionOver();
#define DALI_INTERNAL_ADAPTOR_SYSTEM_TRACE_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Concrete System Tracing Interface.
* Used to log trace messages to the system using ttrace
class SystemTrace : public TraceInterface
{
public:
-
/**
* Constructor
*/
/**
* @copydoc KernelTracerInterface::KernelTrace()
*/
- void Trace( const PerformanceMarker& marker, const std::string& traceMessage ) override;
-
+ void Trace(const PerformanceMarker& marker, const std::string& traceMessage) override;
};
-} // namespace Internal
-
} // namespace Adaptor
+} // namespace Internal
+
} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_SYSTEM_TRACE_H
#define DALI_INTERNAL_THREAD_CONTROLLER_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
class RenderSurfaceInterface;
namespace Internal
{
-
namespace Adaptor
{
-
enum class UpdateMode;
enum class ThreadMode;
class ThreadController
{
public:
-
/**
* Constructor
*/
- ThreadController( AdaptorInternalServices& adaptorInterfaces, const EnvironmentOptions& environmentOptions, ThreadMode threadMode );
+ ThreadController(AdaptorInternalServices& adaptorInterfaces, const EnvironmentOptions& environmentOptions, ThreadMode threadMode);
/**
* Non virtual destructor. Not intended as base class.
*
* @param updateMode The update mode (i.e. either update and render, or update and upload without rendering)
*/
- void RequestUpdateOnce( UpdateMode updateMode );
+ void RequestUpdateOnce(UpdateMode updateMode);
/**
* @brief Replaces the surface.
*
* @param surface new surface
*/
- void ReplaceSurface( Dali::RenderSurfaceInterface* surface );
+ void ReplaceSurface(Dali::RenderSurfaceInterface* surface);
/**
* Deletes the surface.
* @param surface The surface to be deleted
*/
- void DeleteSurface( Dali::RenderSurfaceInterface* surface );
+ void DeleteSurface(Dali::RenderSurfaceInterface* surface);
/**
* Resize the surface.
/**
* @copydoc Dali::Adaptor::SetRenderRefreshRate()
*/
- void SetRenderRefreshRate( unsigned int numberOfVSyncsPerRender );
+ void SetRenderRefreshRate(unsigned int numberOfVSyncsPerRender);
/**
* @copydoc Dali::Adaptor::SetPreRenderCallback
*/
- void SetPreRenderCallback( CallbackBase* callback );
+ void SetPreRenderCallback(CallbackBase* callback);
/**
* @brief Adds the new surface.
*
* @param surface new surface
*/
- void AddSurface( Dali::RenderSurfaceInterface* surface );
+ void AddSurface(Dali::RenderSurfaceInterface* surface);
private:
-
// Undefined copy constructor.
- ThreadController( const ThreadController& ) = delete;
+ ThreadController(const ThreadController&) = delete;
// Undefined assignment operator.
- ThreadController& operator=( const ThreadController& ) = delete;
+ ThreadController& operator=(const ThreadController&) = delete;
private:
-
ThreadControllerInterface* mThreadControllerInterface;
};
#define DALI_INTERNAL_TIME_SERVICE_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
namespace TimeService
{
-
/**
* @brief Get the monotonic time since the clock's epoch.
*
*
* @note The maximum value timeInNanoseconds can hold is 0xFFFFFFFFFFFFFFFF which is 1.844674407e+19. Therefore, this can overflow after approximately 584 years.
*/
-void GetNanoseconds( uint64_t& timeInNanoseconds );
+void GetNanoseconds(uint64_t& timeInNanoseconds);
/**
* @brief Get the monotonic time since the clock's epoch.
*
* @note The maximum value timeInNanoseconds can hold is 0xFFFFFFFFFFFFFFFF which is 1.844674407e+19. Therefore, this can overflow after approximately 584 years.
*/
-void SleepUntil( uint64_t timeInNanoseconds );
+void SleepUntil(uint64_t timeInNanoseconds);
} // namespace TimeService
#define DALI_INTERNAL_TIMER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/public-api/object/base-object.h>
// INTERNAL INCLUDES
-#include <dali/public-api/dali-adaptor-common.h>
#include <dali/internal/system/common/timer-interface.h>
#include <dali/public-api/adaptor-framework/timer.h>
+#include <dali/public-api/dali-adaptor-common.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
class Timer;
class Timer : public BaseObject, public TimerInterface
{
public:
- static TimerPtr New( unsigned int milliSec );
+ static TimerPtr New(unsigned int milliSec);
/**
* Constructor
* @param[in] milliSec Interval in milliseconds.
*/
- Timer( unsigned int milliSec );
+ Timer(unsigned int milliSec);
/**
* Destructor.
virtual ~Timer();
public:
-
/**
* @copydoc Dali::Timer::Start()
*/
/**
* @copydoc Dali::Timer::SetInterval()
*/
- void SetInterval( unsigned int interval, bool restart ) override;
+ void SetInterval(unsigned int interval, bool restart) override;
/**
* @copydoc Dali::Timer::GetInterval()
bool Tick();
public: // Signals
-
Dali::Timer::TimerSignalType& TickSignal();
private: // Implementation
-
// not implemented
- Timer( const Timer& );
- Timer& operator=( const Timer& );
+ Timer(const Timer&);
+ Timer& operator=(const Timer&);
/**
* Resets any stored timer data.
void ResetTimerData();
private: // Data
-
Dali::Timer::TimerSignalType mTickSignal;
// To hide away implementation details
#define DALI_INTERNAL_ADAPTOR_BASE_TIMER_INTERFACE_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
/**
* Interface for a timer class
*/
/**
* @copydoc Dali::Timer::SetInterval()
*/
- virtual void SetInterval( unsigned int intervalInMilliseconds, bool restart ) = 0;
+ virtual void SetInterval(unsigned int intervalInMilliseconds, bool restart) = 0;
/**
* @copydoc Dali::Timer::GetInterval()
/**
* Virtual protected destructor, no deletion through this interface
*/
- virtual ~TimerInterface() { }
+ virtual ~TimerInterface()
+ {
+ }
};
-
-} // Adaptor
-} // Internal
-} // Dali
+} // namespace Adaptor
+} // namespace Internal
+} // namespace Dali
#endif // DALI_INTERNAL_ADAPTOR_BASE_TIMER_INTERFACE_H
#define DALI_INTERNAL_TRIGGER_EVENT_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/public-api/signals/callback.h>
// INTERNAL INCLUDES
-#include <dali/public-api/dali-adaptor-common.h>
#include <dali/integration-api/adaptor-framework/trigger-event-interface.h>
#include <dali/internal/system/common/file-descriptor-monitor.h>
+#include <dali/public-api/dali-adaptor-common.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
-
/**
* The TriggerEvent class is used to send events between threads. For example, this can be used
* to wake up one thread from another thread.
class TriggerEvent : public TriggerEventInterface
{
public:
-
/**
* Constructor
* Creates an event file descriptor and starts a GSource which reads from the file
* @param[in] options Trigger event options.
* @note The ownership of callback is taken by this class.
*/
- TriggerEvent( CallbackBase* callback, TriggerEventInterface::Options options );
+ TriggerEvent(CallbackBase* callback, TriggerEventInterface::Options options);
/**
* Destructor
~TriggerEvent();
public:
-
/**
* Triggers the event.
*
void Trigger();
private:
-
/**
* @brief Called when our event file descriptor has been written to.
* @param[in] eventBitMask bit mask of events that occured on the file descriptor
* @param[in] fileDescriptor The file descriptor
*/
- void Triggered( FileDescriptorMonitor::EventType eventBitMask, int fileDescriptor );
+ void Triggered(FileDescriptorMonitor::EventType eventBitMask, int fileDescriptor);
private:
-
struct Source;
private:
-
- FileDescriptorMonitor* mFileDescriptorMonitor;
- CallbackBase* mCallback;
- int mFileDescriptor;
+ FileDescriptorMonitor* mFileDescriptorMonitor;
+ CallbackBase* mCallback;
+ int mFileDescriptor;
TriggerEventInterface::Options mOptions;
};
#define DALI_INTERNAL_UPDATE_STATUS_LOGGER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class EnvironmentOptions;
/**
class UpdateStatusLogger
{
public:
-
/**
* Create the update-status-logger.
* @param[in] environmentOptions environment options
*/
- UpdateStatusLogger( const EnvironmentOptions& environmentOptions );
+ UpdateStatusLogger(const EnvironmentOptions& environmentOptions);
/**
* Non-virtual destructor; UpdateThread is not suitable as a base class.
* Optionally output the update thread status.
* @param[in] keepUpdatingStatus Whether the update-thread requested further updates.
*/
- void Log( unsigned int keepUpdatingStatus );
-
-private: // Data
+ void Log(unsigned int keepUpdatingStatus);
- unsigned int mStatusLogInterval; ///< Interval in frames between status debug prints
- unsigned int mStatusLogCount; ///< Used to count frames between status debug prints
+private: // Data
+ unsigned int mStatusLogInterval; ///< Interval in frames between status debug prints
+ unsigned int mStatusLogCount; ///< Used to count frames between status debug prints
};
} // namespace Adaptor
#define DALI_INTERNAL_WIDGET_APPLICATION_IMPL_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
typedef IntrusivePtr<WidgetApplication> WidgetApplicationPtr;
/**
class WidgetApplication : public Application
{
public:
-
- typedef std::pair<const std::string, Dali::WidgetApplication::CreateWidgetFunction > CreateWidgetFunctionPair;
- typedef std::vector< CreateWidgetFunctionPair > CreateWidgetFunctionContainer;
+ typedef std::pair<const std::string, Dali::WidgetApplication::CreateWidgetFunction> CreateWidgetFunctionPair;
+ typedef std::vector<CreateWidgetFunctionPair> CreateWidgetFunctionContainer;
/**
* Create a new widget application
* @param[in] argv A pointer to the argument list
* @param[in] stylesheet The path to user defined theme file
*/
- static WidgetApplicationPtr New( int* argc, char **argv[], const std::string& stylesheet );
+ static WidgetApplicationPtr New(int* argc, char** argv[], const std::string& stylesheet);
public:
-
/**
* @copydoc Dali::WidgetApplication::RegisterWidgetCreator()
*/
- virtual void RegisterWidgetCreatingFunction( const std::string& widgetName, Dali::WidgetApplication::CreateWidgetFunction createFunction );
+ virtual void RegisterWidgetCreatingFunction(const std::string& widgetName, Dali::WidgetApplication::CreateWidgetFunction createFunction);
protected:
-
/**
* Private Constructor
* @param[in] argc A pointer to the number of arguments
* @param[in] argv A pointer to the argument list
* @param[in] stylesheet The path to user defined theme file
*/
- WidgetApplication( int* argc, char **argv[], const std::string& stylesheet );
+ WidgetApplication(int* argc, char** argv[], const std::string& stylesheet);
/**
* Destructor
#define DALI_WIDGET_CONTROLLER_H
/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
/**
class Widget::Impl : public Dali::ConnectionTracker
{
public:
-
/**
* Set content information to widget framework
*/
- virtual void SetContentInfo( const std::string& contentInfo ) = 0;
+ virtual void SetContentInfo(const std::string& contentInfo) = 0;
};
} // namespace Adaptor
#define DALI_ECORE_CALLBACK_MANAGER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
// INTERNAL INCLUDES
#include <dali/internal/system/common/callback-manager.h>
-
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
struct CallbackData;
/**
*/
class EcoreCallbackManager : public CallbackManager
{
-
public:
-
- /**
+ /**
* @brief constructor
*/
- EcoreCallbackManager();
+ EcoreCallbackManager();
- /**
+ /**
* @brief destructor
*/
- ~EcoreCallbackManager()
- {
- }
+ ~EcoreCallbackManager()
+ {
+ }
- /**
+ /**
* @copydoc CallbackManager::AddIdleCallback()
*/
- bool AddIdleCallback( CallbackBase* callback, bool hasReturnValue ) override;
+ bool AddIdleCallback(CallbackBase* callback, bool hasReturnValue) override;
- /**
+ /**
* @copydoc CallbackManager::RemoveIdleCallback()
*/
- void RemoveIdleCallback( CallbackBase* callback ) override;
+ void RemoveIdleCallback(CallbackBase* callback) override;
- /**
+ /**
* @copydoc CallbackManager::ProcessIdle()
*/
- bool ProcessIdle() override;
+ bool ProcessIdle() override;
- /**
+ /**
* @copydoc CallbackManager::ProcessIdle()
*/
- void ClearIdleCallbacks() override;
+ void ClearIdleCallbacks() override;
- /**
+ /**
* @copydoc CallbackManager::AddIdleEntererCallback()
*/
- bool AddIdleEntererCallback( CallbackBase* callback ) override;
+ bool AddIdleEntererCallback(CallbackBase* callback) override;
- /**
+ /**
* @copydoc CallbackManager::RemoveIdleEntererCallback()
*/
- void RemoveIdleEntererCallback( CallbackBase* callback ) override;
+ void RemoveIdleEntererCallback(CallbackBase* callback) override;
- /**
+ /**
* @copydoc CallbackManager::Start()
*/
- void Start() override;
+ void Start() override;
- /**
+ /**
* @copydoc CallbackManager::Stop()
*/
- void Stop() override;
+ void Stop() override;
private:
-
- /**
+ /**
* @brief Remove all idle call backs that are pending
* Called by Stop()
* Always called from the main thread
*/
- void RemoveAllCallbacks();
+ void RemoveAllCallbacks();
- /**
+ /**
* @brief Removes a single call back from the container
* Always called from main thread
* @param callbackData callback data
*/
- void RemoveCallbackFromContainer(CallbackData *callbackData);
+ void RemoveCallbackFromContainer(CallbackData* callbackData);
- /**
+ /**
* @brief Remove a standard call back from ecore
* Always called from main thread
* @param callbackData callback data
*/
- void RemoveStandardCallback(CallbackData *callbackData);
-
+ void RemoveStandardCallback(CallbackData* callbackData);
- typedef std::list<CallbackData *> CallbackList;
+ typedef std::list<CallbackData*> CallbackList;
- bool mRunning; ///< flag is set to true if when running
- CallbackList mCallbackContainer; ///< container of live idle callbacks
+ bool mRunning; ///< flag is set to true if when running
+ CallbackList mCallbackContainer; ///< container of live idle callbacks
};
} // namespace Adaptor
#define DALI_INTERNAL_SYSTEM_LINUX_DALI_ECORE_X_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
#pragma GCC system_header
#include <Ecore_X.h>
-
-
#endif /* DALI_INTERNAL_SYSTEM_LINUX_DALI_ECORE_X_H */
#define DALI_INTERNAL_SYSTEM_LINUX_DALI_ECORE_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
#pragma GCC system_header
#include <Ecore.h>
-
-
#endif /* DALI_INTERNAL_SYSTEM_LINUX_DALI_ECORE_H */
#define DALI_INTERNAL_SYSTEM_LINUX_DALI_ELEMENTARY_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
#pragma GCC system_header
#include <Elementary.h>
-
-
#endif /* DALI_INTERNAL_SYSTEM_LINUX_DALI_ELEMENTARY_H */
#pragma once
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali::Internal::Adaptor
{
-
/**
* @brief Cocoa Implementation of CallbackManager
*/
/**
* @copydoc CallbackManager::AddIdleCallback()
*/
- bool AddIdleCallback( CallbackBase* callback, bool hasReturnValue ) override;
+ bool AddIdleCallback(CallbackBase* callback, bool hasReturnValue) override;
/**
* @caopydoc CallbackManager::RemoveIdleCallback
*/
- void RemoveIdleCallback( CallbackBase* callback ) override;
+ void RemoveIdleCallback(CallbackBase* callback) override;
/**
* @copydoc CallbackManager::ProcessIdle
/**
* @copydoc CallbackManager::AddIdleEntererCallback
*/
- bool AddIdleEntererCallback( CallbackBase* callback ) override;
+ bool AddIdleEntererCallback(CallbackBase* callback) override;
/**
* @copydoc CallbackManager::RemoveIdleEntererCallback
*/
- void RemoveIdleEntererCallback( CallbackBase* callback ) override;
+ void RemoveIdleEntererCallback(CallbackBase* callback) override;
/**
* @copydoc CallbackManager::Start
private:
std::unique_ptr<Impl> mImpl;
- bool mRunning;
+ bool mRunning;
};
-}
+} // namespace Dali::Internal::Adaptor
#pragma once
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/public-api/signals/callback.h>
// INTERNAL INCLUDES
-#include <dali/public-api/dali-adaptor-common.h>
#include <dali/integration-api/adaptor-framework/trigger-event-interface.h>
+#include <dali/public-api/dali-adaptor-common.h>
#include <memory>
namespace Dali::Internal::Adaptor
{
-
class TriggerEvent : public TriggerEventInterface
{
public:
-
/**
* Constructor
* Creates an event file descriptor and starts a GSource which reads from the file
* @param[in] options Trigger event options.
* @note The ownership of callback is taken by this class.
*/
- TriggerEvent( CallbackBase* callback, TriggerEventInterface::Options options );
+ TriggerEvent(CallbackBase* callback, TriggerEventInterface::Options options);
/**
* Triggers the event.
struct Impl;
private:
-
/**
* @brief Called when our event file descriptor has been written to.
* @param[in] eventBitMask bit mask of events that occured on the file descriptor
void Triggered();
std::unique_ptr<CallbackBase> mCallback;
- std::unique_ptr<Impl> mImpl;
+ std::unique_ptr<Impl> mImpl;
};
} // namespace Dali::Internal::Adaptor
#define DALI_INTERNAL_WIDGET_APPLICATION_IMPL_WIN_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
// INTERNAL INCLUDES
#include <dali/internal/adaptor/common/application-impl.h>
-#include <dali/internal/system/common//widget-application-impl.h>
+#include <dali/internal/system/common/widget-application-impl.h>
#include <dali/public-api/adaptor-framework/widget-application.h>
namespace Dali
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Implementation of the WidgetApplicationCocoa class.
*/
class WidgetApplicationCocoa : public WidgetApplication
{
public:
-
typedef std::pair<
const std::string,
- Dali::WidgetApplication::CreateWidgetFunction
- > CreateWidgetFunctionPair;
+ Dali::WidgetApplication::CreateWidgetFunction>
+ CreateWidgetFunctionPair;
- typedef std::vector< CreateWidgetFunctionPair > CreateWidgetFunctionContainer;
+ typedef std::vector<CreateWidgetFunctionPair> CreateWidgetFunctionContainer;
/**
* Create a new widget application
* @param[in] stylesheet The path to user defined theme file
*/
static WidgetApplicationPtr New(
- int* argc,
- char **argv[],
- const std::string& stylesheet
- );
+ int* argc,
+ char** argv[],
+ const std::string& stylesheet);
public:
-
/**
* @copydoc Dali::WidgetApplication::RegisterWidgetCreator()
*/
void RegisterWidgetCreatingFunction(
- const std::string& widgetName,
- Dali::WidgetApplication::CreateWidgetFunction createFunction
- ) override;
+ const std::string& widgetName,
+ Dali::WidgetApplication::CreateWidgetFunction createFunction) override;
protected:
-
/**
* Private Constructor
* @param[in] argc A pointer to the number of arguments
* @param[in] argv A pointer to the argument list
* @param[in] stylesheet The path to user defined theme file
*/
- WidgetApplicationCocoa( int* argc, char **argv[], const std::string& stylesheet );
+ WidgetApplicationCocoa(int* argc, char** argv[], const std::string& stylesheet);
/**
* Destructor
#define DALI_INTERNAL_WIDGET_APPLICATION_TIZEN_H
/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <widget_base.h>
// INTERNAL INCLUDES
+#include <dali/devel-api/adaptor-framework/window-devel.h>
#include <dali/internal/adaptor/common/application-impl.h>
#include <dali/internal/system/common/widget-application-impl.h>
-#include <dali/devel-api/adaptor-framework/window-devel.h>
namespace Dali
{
namespace Internal
{
-
namespace Adaptor
{
-
class WidgetApplication;
typedef IntrusivePtr<WidgetApplication> WidgetApplicationPtr;
class WidgetApplicationTizen : public WidgetApplication
{
public:
-
- typedef std::pair<const std::string, Dali::WidgetApplication::CreateWidgetFunction > CreateWidgetFunctionPair;
- typedef std::vector< CreateWidgetFunctionPair > CreateWidgetFunctionContainer;
+ typedef std::pair<const std::string, Dali::WidgetApplication::CreateWidgetFunction> CreateWidgetFunctionPair;
+ typedef std::vector<CreateWidgetFunctionPair> CreateWidgetFunctionContainer;
/**
* Create a new widget application
* @param[in] argv A pointer to the argument list
* @param[in] stylesheet The path to user defined theme file
*/
- static WidgetApplicationPtr New( int* argc, char **argv[], const std::string& stylesheet );
+ static WidgetApplicationPtr New(int* argc, char** argv[], const std::string& stylesheet);
public:
/**
/**
* @copydoc Dali::WidgetApplication::RegisterWidgetCreator()
*/
- void RegisterWidgetCreatingFunction( const std::string& widgetName, Dali::WidgetApplication::CreateWidgetFunction createFunction ) override;
+ void RegisterWidgetCreatingFunction(const std::string& widgetName, Dali::WidgetApplication::CreateWidgetFunction createFunction) override;
/**
* Add widget name - CreateWidgetFunction pair to container.
*/
- void AddWidgetCreatingFunctionPair( CreateWidgetFunctionPair pair );
+ void AddWidgetCreatingFunctionPair(CreateWidgetFunctionPair pair);
/**
* Find and get CreateWidgetFunctionPair in container by widget name.
*/
- CreateWidgetFunctionPair GetWidgetCreatingFunctionPair( const std::string& widgetName );
+ CreateWidgetFunctionPair GetWidgetCreatingFunctionPair(const std::string& widgetName);
/**
* Add widget_base_instance_h - Widget instance pair to container.
*/
- void AddWidget( widget_base_instance_h widgetBaseInstance, Dali::Widget widget , Dali::Window window );
+ void AddWidget(widget_base_instance_h widgetBaseInstance, Dali::Widget widget, Dali::Window window);
/**
* Find and get Widget instance in container by widget_base_instance_h.
*/
- Dali::Widget GetWidget( widget_base_instance_h widgetBaseInstance ) const;
+ Dali::Widget GetWidget(widget_base_instance_h widgetBaseInstance) const;
/**
* Delete widget_base_instance_h - Widget instance pair in container.
*/
- void DeleteWidget( widget_base_instance_h widgetBaseInstance );
+ void DeleteWidget(widget_base_instance_h widgetBaseInstance);
/**
* Find and get Window instance in container by widget_base_instance_h.
*/
- Dali::Window GetWindowFromWidget( widget_base_instance_h widgetBaseInstance ) const;
+ Dali::Window GetWindowFromWidget(widget_base_instance_h widgetBaseInstance) const;
/**
* Get the number of created widget.
int32_t GetWidgetCount();
protected:
-
/**
* Private Constructor
* @param[in] argc A pointer to the number of arguments
* @param[in] argv A pointer to the argument list
* @param[in] stylesheet The path to user defined theme file
*/
- WidgetApplicationTizen( int* argc, char **argv[], const std::string& stylesheet );
+ WidgetApplicationTizen(int* argc, char** argv[], const std::string& stylesheet);
/**
* Destructor
WidgetApplicationTizen& operator=(Application&) = delete;
private:
+ typedef std::pair<widget_base_instance_h, Dali::Widget> WidgetInstancePair;
+ typedef std::vector<WidgetInstancePair> WidgetInstanceContainer;
- typedef std::pair< widget_base_instance_h, Dali::Widget > WidgetInstancePair;
- typedef std::vector< WidgetInstancePair > WidgetInstanceContainer;
-
- CreateWidgetFunctionContainer mCreateWidgetFunctionContainer;
- WidgetInstanceContainer mWidgetInstanceContainer;
+ CreateWidgetFunctionContainer mCreateWidgetFunctionContainer;
+ WidgetInstanceContainer mWidgetInstanceContainer;
- typedef std::pair< widget_base_instance_h, Dali::Window > WindowInstancePair;
- typedef std::vector< WindowInstancePair > WindowInstanceContainer;
- WindowInstanceContainer mWindowInstanceContainer;
+ typedef std::pair<widget_base_instance_h, Dali::Window> WindowInstancePair;
+ typedef std::vector<WindowInstancePair> WindowInstanceContainer;
+ WindowInstanceContainer mWindowInstanceContainer;
};
} // namespace Adaptor
#define DALI_WIDGET_CONTROLLER_TIZEN_H
/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <widget_base.h>
// INTERNAL INCLUDES
-#include <dali/public-api/adaptor-framework/widget-impl.h>
#include <dali/internal/system/common/widget-controller.h>
+#include <dali/public-api/adaptor-framework/widget-impl.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* @brief Holds the Implementation for the internal WidgetImpl class
*/
class WidgetImplTizen : public Widget::Impl
{
public:
-
/**
* Constructor
*/
- WidgetImplTizen( widget_base_instance_h instanceHandle );
+ WidgetImplTizen(widget_base_instance_h instanceHandle);
/**
* Destructor
~WidgetImplTizen() override;
public:
-
/**
* Set content information to widget framework
*/
- void SetContentInfo( const std::string& contentInfo ) override;
+ void SetContentInfo(const std::string& contentInfo) override;
private:
-
widget_base_instance_h mInstanceHandle;
};
#define DALI_INTERNAL_WIDGET_APPLICATION_IMPL_UBUNTU_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Implementation of the WidgetApplicationUbuntu class.
*/
class WidgetApplicationUbuntu : public WidgetApplication
{
public:
-
- typedef std::pair<const std::string, Dali::WidgetApplication::CreateWidgetFunction > CreateWidgetFunctionPair;
- typedef std::vector< CreateWidgetFunctionPair > CreateWidgetFunctionContainer;
+ typedef std::pair<const std::string, Dali::WidgetApplication::CreateWidgetFunction> CreateWidgetFunctionPair;
+ typedef std::vector<CreateWidgetFunctionPair> CreateWidgetFunctionContainer;
/**
* Create a new widget application
* @param[in] argv A pointer to the argument list
* @param[in] stylesheet The path to user defined theme file
*/
- static WidgetApplicationPtr New( int* argc, char **argv[], const std::string& stylesheet );
+ static WidgetApplicationPtr New(int* argc, char** argv[], const std::string& stylesheet);
public:
-
/**
* @copydoc Dali::WidgetApplication::RegisterWidgetCreator()
*/
- void RegisterWidgetCreatingFunction( const std::string& widgetName, Dali::WidgetApplication::CreateWidgetFunction createFunction ) override;
+ void RegisterWidgetCreatingFunction(const std::string& widgetName, Dali::WidgetApplication::CreateWidgetFunction createFunction) override;
protected:
-
/**
* Private Constructor
* @param[in] argc A pointer to the number of arguments
* @param[in] argv A pointer to the argument list
* @param[in] stylesheet The path to user defined theme file
*/
- WidgetApplicationUbuntu( int* argc, char **argv[], const std::string& stylesheet );
+ WidgetApplicationUbuntu(int* argc, char** argv[], const std::string& stylesheet);
/**
* Destructor
#define DALI_WIDGET_CONTROLLER_UBUNTU_H
/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
/**
class WidgetImplUbuntu : public Widget::Impl
{
public:
-
/**
* Constructor
*/
~WidgetImplUbuntu() override;
public:
-
/**
* Set content information to widget framework
*/
- void SetContentInfo( const std::string& contentInfo ) override;
+ void SetContentInfo(const std::string& contentInfo) override;
};
} // namespace Adaptor
#define DALI_WIN_CALLBACK_MANAGER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
/**
*/
class WinCallbackManager : public CallbackManager
{
-
public:
-
- /**
+ /**
* @brief constructor
*/
- WinCallbackManager();
+ WinCallbackManager();
- /**
+ /**
* @brief destructor
*/
- ~WinCallbackManager(){}
+ ~WinCallbackManager()
+ {
+ }
- /**
+ /**
* @copydoc CallbackManager::AddIdleCallback()
*/
- bool AddIdleCallback( CallbackBase* callback, bool hasReturnValue ) override;
+ bool AddIdleCallback(CallbackBase* callback, bool hasReturnValue) override;
- /**
+ /**
* @copydoc CallbackManager::RemoveIdleCallback()
*/
- void RemoveIdleCallback( CallbackBase* callback ) override;
+ void RemoveIdleCallback(CallbackBase* callback) override;
- /**
+ /**
* @copydoc CallbackManager::ProcessIdle()
*/
- bool ProcessIdle() override;
+ bool ProcessIdle() override;
- /**
+ /**
* @copydoc CallbackManager::ClearIdleCallbacks()
*/
- void ClearIdleCallbacks() override;
+ void ClearIdleCallbacks() override;
- /**
+ /**
* @brief Adds a @p callback to be run when entering an idle state.
* @note Must be called from the main thread only.
*
*
* @return true on success
*/
- bool AddIdleEntererCallback( CallbackBase* callback ) override;
+ bool AddIdleEntererCallback(CallbackBase* callback) override;
- /**
+ /**
* @brief Removes a previously added the idle enterer callback.
* @note Must be called from main thread only.
*
*
* @param[in] callback The callback to be removed.
*/
- void RemoveIdleEntererCallback( CallbackBase* callback ) override;
+ void RemoveIdleEntererCallback(CallbackBase* callback) override;
- /**
+ /**
* @copydoc CallbackManager::Start()
*/
- void Start() override;
+ void Start() override;
- /**
+ /**
* @copydoc CallbackManager::Stop()
*/
- void Stop() override;
+ void Stop() override;
private:
- std::set<CallbackBase*> mCallbacks;
- bool mRunning; ///< flag is set to true if when running
+ std::set<CallbackBase*> mCallbacks;
+ bool mRunning; ///< flag is set to true if when running
};
} // namespace Adaptor
#define DALI_INTERNAL_TRIGGER_EVENT_IMPL_H
/*
-* Copyright (c) 2019 Samsung Electronics Co., Ltd.
+* Copyright (c) 2021 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 <dali/public-api/signals/callback.h>
// INTERNAL INCLUDES
-#include <dali/public-api/dali-adaptor-common.h>
#include <dali/integration-api/adaptor-framework/trigger-event-interface.h>
+#include <dali/public-api/dali-adaptor-common.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class TriggerEvent : public TriggerEventInterface
{
public:
-
/**
* Constructor
* Creates an event file descriptor and starts a GSource which reads from the file
* @param[in] options Trigger event options.
* @note The ownership of callback is taken by this class.
*/
- TriggerEvent( CallbackBase* callback, TriggerEventInterface::Options options );
+ TriggerEvent(CallbackBase* callback, TriggerEventInterface::Options options);
/**
* Destructor
~TriggerEvent();
public:
-
/**
* Triggers the event.
*
void Trigger();
private:
-
/**
* @brief Called when our event file descriptor has been written to.
* @param[in] eventBitMask bit mask of events that occured on the file descriptor
void Triggered();
private:
-
- CallbackBase* mCallback;
- CallbackBase* mSelfCallback;
- int32_t mThreadID;
+ CallbackBase* mCallback;
+ CallbackBase* mSelfCallback;
+ int32_t mThreadID;
TriggerEventInterface::Options mOptions;
};
#define DALI_INTERNAL_WIDGET_APPLICATION_IMPL_WIN_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
// INTERNAL INCLUDES
#include <dali/internal/adaptor/common/application-impl.h>
-#include <dali/internal/system/common//widget-application-impl.h>
+#include <dali/internal/system/common //widget-application-impl.h>
#include <dali/public-api/adaptor-framework/widget-application.h>
namespace Dali
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Implementation of the WidgetApplicationWin class.
*/
class WidgetApplicationWin : public WidgetApplication
{
public:
-
- typedef std::pair<const std::string, Dali::WidgetApplication::CreateWidgetFunction > CreateWidgetFunctionPair;
- typedef std::vector< CreateWidgetFunctionPair > CreateWidgetFunctionContainer;
+ typedef std::pair<const std::string, Dali::WidgetApplication::CreateWidgetFunction> CreateWidgetFunctionPair;
+ typedef std::vector<CreateWidgetFunctionPair> CreateWidgetFunctionContainer;
/**
* Create a new widget application
* @param[in] argv A pointer to the argument list
* @param[in] stylesheet The path to user defined theme file
*/
- static WidgetApplicationPtr New( int* argc, char **argv[], const std::string& stylesheet );
+ static WidgetApplicationPtr New(int* argc, char** argv[], const std::string& stylesheet);
public:
-
/**
* @copydoc Dali::WidgetApplication::RegisterWidgetCreator()
*/
- void RegisterWidgetCreatingFunction( const std::string& widgetName, Dali::WidgetApplication::CreateWidgetFunction createFunction ) override;
+ void RegisterWidgetCreatingFunction(const std::string& widgetName, Dali::WidgetApplication::CreateWidgetFunction createFunction) override;
protected:
-
/**
* Private Constructor
* @param[in] argc A pointer to the number of arguments
* @param[in] argv A pointer to the argument list
* @param[in] stylesheet The path to user defined theme file
*/
- WidgetApplicationWin( int* argc, char **argv[], const std::string& stylesheet );
+ WidgetApplicationWin(int* argc, char** argv[], const std::string& stylesheet);
/**
* Destructor
#define DALI_WIDGET_CONTROLLER_WIN_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
/**
class WidgetImplWin : public Widget::Impl
{
public:
-
/**
* Constructor
*/
~WidgetImplWin() override;
public:
-
/**
* Set content information to widget framework
*/
- void SetContentInfo( const std::string& contentInfo ) override;
+ void SetContentInfo(const std::string& contentInfo) override;
};
} // namespace Adaptor
#define DALI_INTERNAL_TEXT_ABSTRACTION_BIDIRECTIONAL_SUPPORT_IMPL_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace TextAbstraction
{
-
namespace Internal
{
-
/**
* Implementation of the BidirectionalSupport
*/
class BidirectionalSupport : public BaseObject
{
public:
-
/**
* Constructor
*/
/**
* @copydoc Dali::BidirectionalSupport::CreateInfo()
*/
- BidiInfoIndex CreateInfo( const Character* const paragraph,
- Length numberOfCharacters,
- bool matchSystemLanguageDirection,
- LayoutDirection::Type layoutDirection );
+ BidiInfoIndex CreateInfo(const Character* const paragraph,
+ Length numberOfCharacters,
+ bool matchSystemLanguageDirection,
+ LayoutDirection::Type layoutDirection);
/**
* @copydoc Dali::BidirectionalSupport::DestroyInfo()
*/
- void DestroyInfo( BidiInfoIndex bidiInfoIndex );
+ void DestroyInfo(BidiInfoIndex bidiInfoIndex);
/**
* @copydoc Dali::BidirectionalSupport::Reorder()
*/
- void Reorder( BidiInfoIndex bidiInfoIndex,
- CharacterIndex firstCharacterIndex,
- Length numberOfCharacters,
- CharacterIndex* visualToLogicalMap );
+ void Reorder(BidiInfoIndex bidiInfoIndex,
+ CharacterIndex firstCharacterIndex,
+ Length numberOfCharacters,
+ CharacterIndex* visualToLogicalMap);
/**
* @copydoc Dali::BidirectionalSupport::GetMirroredText()
*/
- bool GetMirroredText( Character* text,
- CharacterDirection* directions,
- Length numberOfCharacters );
+ bool GetMirroredText(Character* text,
+ CharacterDirection* directions,
+ Length numberOfCharacters);
/**
* @copydoc Dali::BidirectionalSupport::GetParagraphDirection()
*/
- bool GetParagraphDirection( BidiInfoIndex bidiInfoIndex ) const;
+ bool GetParagraphDirection(BidiInfoIndex bidiInfoIndex) const;
/**
* @copydoc Dali::BidirectionalSupport::GetCharactersDirection()
*/
- void GetCharactersDirection( BidiInfoIndex bidiInfoIndex,
- CharacterDirection* directions,
- Length numberOfCharacters );
+ void GetCharactersDirection(BidiInfoIndex bidiInfoIndex,
+ CharacterDirection* directions,
+ Length numberOfCharacters);
private:
-
/**
* Helper for lazy initialization.
*/
void CreatePlugin();
private:
-
// Undefined copy constructor.
- BidirectionalSupport( const BidirectionalSupport& );
+ BidirectionalSupport(const BidirectionalSupport&);
// Undefined assignment constructor.
- BidirectionalSupport& operator=( const BidirectionalSupport& );
+ BidirectionalSupport& operator=(const BidirectionalSupport&);
private:
-
struct Plugin;
Plugin* mPlugin;
} // namespace TextAbstraction
-inline static TextAbstraction::Internal::BidirectionalSupport& GetImplementation( TextAbstraction::BidirectionalSupport& bidirectionalSupport )
+inline static TextAbstraction::Internal::BidirectionalSupport& GetImplementation(TextAbstraction::BidirectionalSupport& bidirectionalSupport)
{
- DALI_ASSERT_ALWAYS( bidirectionalSupport && "bidirectional support handle is empty" );
+ DALI_ASSERT_ALWAYS(bidirectionalSupport && "bidirectional support handle is empty");
BaseObject& handle = bidirectionalSupport.GetBaseObject();
return static_cast<TextAbstraction::Internal::BidirectionalSupport&>(handle);
}
-inline static const TextAbstraction::Internal::BidirectionalSupport& GetImplementation( const TextAbstraction::BidirectionalSupport& bidirectionalSupport )
+inline static const TextAbstraction::Internal::BidirectionalSupport& GetImplementation(const TextAbstraction::BidirectionalSupport& bidirectionalSupport)
{
- DALI_ASSERT_ALWAYS( bidirectionalSupport && "bidirectional support handle is empty" );
+ DALI_ASSERT_ALWAYS(bidirectionalSupport && "bidirectional support handle is empty");
const BaseObject& handle = bidirectionalSupport.GetBaseObject();
return static_cast<const TextAbstraction::Internal::BidirectionalSupport&>(handle);
}
#define DALI_INTERNAL_TEXT_ABSTRACTION_CAIRO_RENDERER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace TextAbstraction
{
-
namespace Internal
{
/**
*
* @see Dali::TextAbstraction::TextRenderer.
*/
-Devel::PixelBuffer RenderTextCairo( const TextAbstraction::TextRenderer::Parameters& parameters );
+Devel::PixelBuffer RenderTextCairo(const TextAbstraction::TextRenderer::Parameters& parameters);
} // namespace Internal
} // namespace Dali
#endif // DALI_INTERNAL_TEXT_ABSTRACTION_CAIRO_RENDERER_H
-
#define DALI_INTERNAL_TEXT_ABSTRACTION_FONT_CLIENT_HELPER_H
/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace TextAbstraction
{
-
namespace Internal
{
-
/**
* @brief Retrieves a table index for a given value.
*
*
* @return The index to the closest available value
*/
-int ValueToIndex( int value, const int* const table, unsigned int maxIndex );
+int ValueToIndex(int value, const int* const table, unsigned int maxIndex);
-} // Internal
+} // namespace Internal
-} // TextAbstraction
+} // namespace TextAbstraction
-} // Dali
+} // namespace Dali
#endif // DALI_INTERNAL_TEXT_ABSTRACTION_FONT_CLIENT_HELPER_H
#define DALI_INTERNAL_TEXT_ABSTRACTION_FONT_CLIENT_IMPL_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
// INTERNAL INCLUDES
#include <dali/devel-api/text-abstraction/font-client.h>
-
struct FT_FaceRec_;
namespace Dali
{
-
namespace TextAbstraction
{
-
namespace Internal
{
-
/**
* Implementation of the FontClient
*/
class FontClient : public BaseObject
{
public:
-
/**
* Constructor
*/
/**
* @copydoc Dali::TextAbstraction::FontClient::SetDpi()
*/
- void SetDpi( unsigned int horizontalDpi, unsigned int verticalDpi );
+ void SetDpi(unsigned int horizontalDpi, unsigned int verticalDpi);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetDpi()
*/
- void GetDpi( unsigned int& horizontalDpi, unsigned int& verticalDpi );
+ void GetDpi(unsigned int& horizontalDpi, unsigned int& verticalDpi);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetDefaultFontSize()
/**
* @copydoc Dali::TextAbstraction::FontClient::GetDefaultFonts()
*/
- void GetDefaultFonts( FontList& defaultFonts );
+ void GetDefaultFonts(FontList& defaultFonts);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetDefaultPlatformFontDescription()
*/
- void GetDefaultPlatformFontDescription( FontDescription& fontDescription );
+ void GetDefaultPlatformFontDescription(FontDescription& fontDescription);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetSystemFonts()
*/
- void GetSystemFonts( FontList& systemFonts );
+ void GetSystemFonts(FontList& systemFonts);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetDescription()
*/
- void GetDescription( FontId id, FontDescription& fontDescription );
+ void GetDescription(FontId id, FontDescription& fontDescription);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetPointSize()
*/
- PointSize26Dot6 GetPointSize( FontId id );
+ PointSize26Dot6 GetPointSize(FontId id);
/**
* @copydoc Dali::TextAbstraction::FontClient::IsCharacterSupportedByFont()
*/
- bool IsCharacterSupportedByFont( FontId fontId, Character character );
+ bool IsCharacterSupportedByFont(FontId fontId, Character character);
/**
* @copydoc Dali::TextAbstraction::FontClient::FindDefaultFont()
*/
- FontId FindDefaultFont( Character charcode,
- PointSize26Dot6 requestedPointSize,
- bool preferColor );
+ FontId FindDefaultFont(Character charcode,
+ PointSize26Dot6 requestedPointSize,
+ bool preferColor);
/**
* @copydoc Dali::TextAbstraction::FontClient::FindFallbackFont()
*/
- FontId FindFallbackFont( Character charcode,
- const FontDescription& preferredFontDescription,
- PointSize26Dot6 requestedPointSize,
- bool preferColor );
+ FontId FindFallbackFont(Character charcode,
+ const FontDescription& preferredFontDescription,
+ PointSize26Dot6 requestedPointSize,
+ bool preferColor);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetFontId( const FontPath& path, PointSize26Dot6 requestedPointSize, FaceIndex faceIndex )
*/
- FontId GetFontId( const FontPath& path, PointSize26Dot6 requestedPointSize, FaceIndex faceIndex );
+ FontId GetFontId(const FontPath& path, PointSize26Dot6 requestedPointSize, FaceIndex faceIndex);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetFontId( const FontDescription& fontDescription, PointSize26Dot6 requestedPointSize, FaceIndex faceIndex )
*/
- FontId GetFontId( const FontDescription& fontDescription,
- PointSize26Dot6 requestedPointSize,
- FaceIndex faceIndex );
+ FontId GetFontId(const FontDescription& fontDescription,
+ PointSize26Dot6 requestedPointSize,
+ FaceIndex faceIndex);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetFontId( const BitmapFont& bitmapFont )
*/
- FontId GetFontId( const BitmapFont& bitmapFont );
+ FontId GetFontId(const BitmapFont& bitmapFont);
/**
* @copydoc Dali::TextAbstraction::FontClient::IsScalable( const FontPath& path )
*/
- bool IsScalable( const FontPath& path );
+ bool IsScalable(const FontPath& path);
/**
* @copydoc Dali::TextAbstraction::FontClient::IsScalable( const FontDescription& fontDescription )
*/
- bool IsScalable( const FontDescription& fontDescription );
+ bool IsScalable(const FontDescription& fontDescription);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetFixedSizes( const FontPath& path, Dali::Vector< PointSize26Dot6>& sizes )
*/
- void GetFixedSizes( const FontPath& path, Dali::Vector< PointSize26Dot6>& sizes );
+ void GetFixedSizes(const FontPath& path, Dali::Vector<PointSize26Dot6>& sizes);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetFixedSizes()
*/
- void GetFixedSizes( const FontDescription& fontDescription,
- Dali::Vector< PointSize26Dot6 >& sizes );
+ void GetFixedSizes(const FontDescription& fontDescription,
+ Dali::Vector<PointSize26Dot6>& sizes);
/**
* @copydoc Dali::TextAbstraction::FontClient::HasItalicStyle()
*/
- bool HasItalicStyle( FontId fontId ) const;
+ bool HasItalicStyle(FontId fontId) const;
/**
* @copydoc Dali::TextAbstraction::FontClient::GetFontMetrics()
*/
- void GetFontMetrics( FontId fontId, FontMetrics& metrics );
+ void GetFontMetrics(FontId fontId, FontMetrics& metrics);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetGlyphIndex()
*/
- GlyphIndex GetGlyphIndex( FontId fontId, Character charcode );
+ GlyphIndex GetGlyphIndex(FontId fontId, Character charcode);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetGlyphMetrics()
*/
- bool GetGlyphMetrics( GlyphInfo* array, uint32_t size, GlyphType type, bool horizontal );
+ bool GetGlyphMetrics(GlyphInfo* array, uint32_t size, GlyphType type, bool horizontal);
/**
* @copydoc Dali::TextAbstraction::FontClient::CreateBitmap( FontId fontId, GlyphIndex glyphIndex, bool isItalicRequired, bool isBoldRequired, Dali::TextAbstraction::FontClient::GlyphBufferData& data, int outlineWidth )
*/
- void CreateBitmap( FontId fontId, GlyphIndex glyphIndex, bool isItalicRequired, bool isBoldRequired, Dali::TextAbstraction::FontClient::GlyphBufferData& data, int outlineWidth );
+ void CreateBitmap(FontId fontId, GlyphIndex glyphIndex, bool isItalicRequired, bool isBoldRequired, Dali::TextAbstraction::FontClient::GlyphBufferData& data, int outlineWidth);
/**
* @copydoc Dali::TextAbstraction::FontClient::CreateBitmap( FontId fontId, GlyphIndex glyphIndex, int outlineWidth )
*/
- PixelData CreateBitmap( FontId fontId, GlyphIndex glyphIndex, int outlineWidth );
+ PixelData CreateBitmap(FontId fontId, GlyphIndex glyphIndex, int outlineWidth);
/**
* @copydoc Dali::TextAbstraction::FontClient::CreateVectorBlob()
*/
- void CreateVectorBlob( FontId fontId, GlyphIndex glyphIndex, VectorBlob*& blob, unsigned int& blobLength, unsigned int& nominalWidth, unsigned int& nominalHeight );
+ void CreateVectorBlob(FontId fontId, GlyphIndex glyphIndex, VectorBlob*& blob, unsigned int& blobLength, unsigned int& nominalWidth, unsigned int& nominalHeight);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetEllipsisGlyph()
*/
- const GlyphInfo& GetEllipsisGlyph( PointSize26Dot6 requestedPointSize );
+ const GlyphInfo& GetEllipsisGlyph(PointSize26Dot6 requestedPointSize);
/**
* @copydoc Dali::TextAbstraction::FontClient::IsColorGlyph()
*/
- bool IsColorGlyph( FontId fontId, GlyphIndex glyphIndex );
+ bool IsColorGlyph(FontId fontId, GlyphIndex glyphIndex);
/**
* @copydoc Dali::TextAbstraction::FontClient::CreateEmbeddedItem()
*/
- GlyphIndex CreateEmbeddedItem( const TextAbstraction::FontClient::EmbeddedItemDescription& description, Pixel::Format& pixelFormat );
+ GlyphIndex CreateEmbeddedItem(const TextAbstraction::FontClient::EmbeddedItemDescription& description, Pixel::Format& pixelFormat);
/**
* @brief Retrieves the pointer to the FreeType Font Face for the given @p fontId.
*
* @return The pointer to the FreeType Font Face.
*/
- FT_FaceRec_* GetFreetypeFace( FontId fontId );
+ FT_FaceRec_* GetFreetypeFace(FontId fontId);
/**
* @brief Retrieves the type of font.
*
* @return FACE_FONT if the font has been loaded by FreeType, BITMAP_FONT if it's a font that has been loaded from images or INVALID if it's a non valid font.
*/
- FontDescription::Type GetFontType( FontId fontId );
+ FontDescription::Type GetFontType(FontId fontId);
/**
* @copydoc Dali::TextAbstraction::FontClient::AddCustomFontDirectory()
*/
- bool AddCustomFontDirectory( const FontPath& path );
+ bool AddCustomFontDirectory(const FontPath& path);
private:
-
/**
* Helper for lazy initialization.
*/
void CreatePlugin();
// Undefined copy constructor.
- FontClient( const FontClient& );
+ FontClient(const FontClient&);
// Undefined assignment constructor.
- FontClient& operator=( const FontClient& );
+ FontClient& operator=(const FontClient&);
private:
-
struct Plugin;
Plugin* mPlugin;
inline static Internal::FontClient& GetImplementation(FontClient& fontClient)
{
- DALI_ASSERT_ALWAYS( fontClient && "fontClient handle is empty" );
+ DALI_ASSERT_ALWAYS(fontClient && "fontClient handle is empty");
BaseObject& handle = fontClient.GetBaseObject();
return static_cast<Internal::FontClient&>(handle);
}
inline static const Internal::FontClient& GetImplementation(const FontClient& fontClient)
{
- DALI_ASSERT_ALWAYS( fontClient && "fontClient handle is empty" );
+ DALI_ASSERT_ALWAYS(fontClient && "fontClient handle is empty");
const BaseObject& handle = fontClient.GetBaseObject();
return static_cast<const Internal::FontClient&>(handle);
}
#define DALI_INTERNAL_TEXT_ABSTRACTION_FONT_CLIENT_PLUGIN_IMPL_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// INTERNAL INCLUDES
+#include <dali/devel-api/adaptor-framework/pixel-buffer.h>
#include <dali/devel-api/text-abstraction/bitmap-font.h>
#include <dali/devel-api/text-abstraction/font-metrics.h>
#include <dali/devel-api/text-abstraction/glyph-info.h>
#include <dali/internal/text/text-abstraction/font-client-impl.h>
-#include <dali/devel-api/adaptor-framework/pixel-buffer.h>
#ifdef ENABLE_VECTOR_BASED_TEXT_RENDERING
#include <third-party/glyphy/vector-font-cache.h>
namespace Dali
{
-
namespace TextAbstraction
{
-
namespace Internal
{
-
/**
* @brief Type used for indices addressing the vector with front descriptions of validated fonts.
*/
*/
struct FallbackCacheItem
{
- FallbackCacheItem( FontDescription&& fontDescription, FontList* fallbackFonts, CharacterSetList* characterSets );
+ FallbackCacheItem(FontDescription&& fontDescription, FontList* fallbackFonts, CharacterSetList* characterSets);
- FontDescription fontDescription; ///< The font description.
- FontList* fallbackFonts; ///< The list of fallback fonts for the given font-description.
- CharacterSetList* characterSets; ///< The list of character sets for the given font-description.
+ FontDescription fontDescription; ///< The font description.
+ FontList* fallbackFonts; ///< The list of fallback fonts for the given font-description.
+ CharacterSetList* characterSets; ///< The list of character sets for the given font-description.
};
/**
*/
struct FontDescriptionCacheItem
{
- FontDescriptionCacheItem( const FontDescription& fontDescription,
- FontDescriptionId index );
- FontDescriptionCacheItem( FontDescription&& fontDescription,
- FontDescriptionId index );
+ FontDescriptionCacheItem(const FontDescription& fontDescription,
+ FontDescriptionId index);
+ FontDescriptionCacheItem(FontDescription&& fontDescription,
+ FontDescriptionId index);
- FontDescription fontDescription; ///< The font description.
- FontDescriptionId index; ///< Index to the vector of font descriptions.
+ FontDescription fontDescription; ///< The font description.
+ FontDescriptionId index; ///< Index to the vector of font descriptions.
};
/**
*/
struct FontDescriptionSizeCacheItem
{
- FontDescriptionSizeCacheItem( FontDescriptionId validatedFontId,
- PointSize26Dot6 requestedPointSize,
- FontId fontId );
+ FontDescriptionSizeCacheItem(FontDescriptionId validatedFontId,
+ PointSize26Dot6 requestedPointSize,
+ FontId fontId);
FontDescriptionId validatedFontId; ///< Index to the vector with font descriptions.
PointSize26Dot6 requestedPointSize; ///< The font point size.
*/
struct FontFaceCacheItem
{
- FontFaceCacheItem( FT_Face ftFace,
- const FontPath& path,
- PointSize26Dot6 requestedPointSize,
- FaceIndex face,
- const FontMetrics& metrics );
-
- FontFaceCacheItem( FT_Face ftFace,
- const FontPath& path,
- PointSize26Dot6 requestedPointSize,
- FaceIndex face,
- const FontMetrics& metrics,
- int fixedSizeIndex,
- float fixedWidth,
- float fixedHeight,
- bool hasColorTables );
-
- FT_Face mFreeTypeFace; ///< The FreeType face.
- FontPath mPath; ///< The path to the font file name.
- PointSize26Dot6 mRequestedPointSize; ///< The font point size.
- FaceIndex mFaceIndex; ///< The face index.
- FontMetrics mMetrics; ///< The font metrics.
- _FcCharSet* mCharacterSet; ///< Pointer with the range of characters.
- int mFixedSizeIndex; ///< Index to the fixed size table for the requested size.
- float mFixedWidthPixels; ///< The height in pixels (fixed size bitmaps only)
- float mFixedHeightPixels; ///< The height in pixels (fixed size bitmaps only)
- unsigned int mVectorFontId; ///< The ID of the equivalent vector-based font
- FontId mFontId; ///< Index to the vector with the cache of font's ids.
- bool mIsFixedSizeBitmap : 1; ///< Whether the font has fixed size bitmaps.
- bool mHasColorTables : 1; ///< Whether the font has color tables.
+ FontFaceCacheItem(FT_Face ftFace,
+ const FontPath& path,
+ PointSize26Dot6 requestedPointSize,
+ FaceIndex face,
+ const FontMetrics& metrics);
+
+ FontFaceCacheItem(FT_Face ftFace,
+ const FontPath& path,
+ PointSize26Dot6 requestedPointSize,
+ FaceIndex face,
+ const FontMetrics& metrics,
+ int fixedSizeIndex,
+ float fixedWidth,
+ float fixedHeight,
+ bool hasColorTables);
+
+ FT_Face mFreeTypeFace; ///< The FreeType face.
+ FontPath mPath; ///< The path to the font file name.
+ PointSize26Dot6 mRequestedPointSize; ///< The font point size.
+ FaceIndex mFaceIndex; ///< The face index.
+ FontMetrics mMetrics; ///< The font metrics.
+ _FcCharSet* mCharacterSet; ///< Pointer with the range of characters.
+ int mFixedSizeIndex; ///< Index to the fixed size table for the requested size.
+ float mFixedWidthPixels; ///< The height in pixels (fixed size bitmaps only)
+ float mFixedHeightPixels; ///< The height in pixels (fixed size bitmaps only)
+ unsigned int mVectorFontId; ///< The ID of the equivalent vector-based font
+ FontId mFontId; ///< Index to the vector with the cache of font's ids.
+ bool mIsFixedSizeBitmap : 1; ///< Whether the font has fixed size bitmaps.
+ bool mHasColorTables : 1; ///< Whether the font has color tables.
};
struct EllipsisItem
{
PointSize26Dot6 requestedPointSize;
- GlyphInfo glyph;
+ GlyphInfo glyph;
};
/**
struct PixelBufferCacheItem
{
Devel::PixelBuffer pixelBuffer; ///< The pixel buffer loaded from the url.
- std::string url; ///< The url.
+ std::string url; ///< The url.
};
/**
struct EmbeddedItem
{
PixelBufferId pixelBufferId; ///< Index to the vector of pixel buffers
- unsigned int width; ///< The desired width.
- unsigned int height; ///< The desired height.
+ unsigned int width; ///< The desired width.
+ unsigned int height; ///< The desired height.
};
/**
*/
struct BitmapFontCacheItem
{
- BitmapFont font; ///< The bitmap font.
+ BitmapFont font; ///< The bitmap font.
std::vector<Devel::PixelBuffer> pixelBuffers; ///< The pixel buffers of the glyphs.
- FontId id; ///< Index to the vector with the cache of font's ids.
+ FontId id; ///< Index to the vector with the cache of font's ids.
};
/**
* @param[in] horizontalDpi The horizontal dpi.
* @param[in] verticalDpi The vertical dpi.
*/
- Plugin( unsigned int horizontalDpi, unsigned int verticalDpi );
+ Plugin(unsigned int horizontalDpi, unsigned int verticalDpi);
/**
* Default destructor.
/**
* @copydoc Dali::TextAbstraction::FontClient::SetDpi()
*/
- void SetDpi( unsigned int horizontalDpi, unsigned int verticalDpi );
+ void SetDpi(unsigned int horizontalDpi, unsigned int verticalDpi);
/**
* @copydoc Dali::TextAbstraction::FontClient::ResetSystemDefaults()
/**
* @copydoc Dali::TextAbstraction::FontClient::SetDefaultFont()
*/
- void SetDefaultFont( const FontDescription& preferredFontDescription );
+ void SetDefaultFont(const FontDescription& preferredFontDescription);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetDefaultPlatformFontDescription()
*/
- void GetDefaultPlatformFontDescription( FontDescription& fontDescription );
+ void GetDefaultPlatformFontDescription(FontDescription& fontDescription);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetDefaultFonts()
*/
- void GetDefaultFonts( FontList& defaultFonts );
+ void GetDefaultFonts(FontList& defaultFonts);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetSystemFonts()
*/
- void GetSystemFonts( FontList& systemFonts );
+ void GetSystemFonts(FontList& systemFonts);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetDescription()
*/
- void GetDescription( FontId id, FontDescription& fontDescription ) const;
+ void GetDescription(FontId id, FontDescription& fontDescription) const;
/**
* @copydoc Dali::TextAbstraction::FontClient::GetPointSize()
*/
- PointSize26Dot6 GetPointSize( FontId id );
+ PointSize26Dot6 GetPointSize(FontId id);
/**
* @copydoc Dali::TextAbstraction::FontClient::IsCharacterSupportedByFont()
*/
- bool IsCharacterSupportedByFont( FontId fontId, Character character );
+ bool IsCharacterSupportedByFont(FontId fontId, Character character);
/**
* @brief Finds within the @p fontList a font which support the @p carcode.
*
* @return A valid font identifier, or zero if no font is found.
*/
- FontId FindFontForCharacter( const FontList& fontList,
- const CharacterSetList& characterSetList,
- Character charcode,
- PointSize26Dot6 requestedPointSize,
- bool preferColor );
+ FontId FindFontForCharacter(const FontList& fontList,
+ const CharacterSetList& characterSetList,
+ Character charcode,
+ PointSize26Dot6 requestedPointSize,
+ bool preferColor);
/**
* @copydoc Dali::TextAbstraction::FontClient::FindDefaultFont()
*/
- FontId FindDefaultFont( Character charcode,
- PointSize26Dot6 requestedPointSize,
- bool preferColor );
+ FontId FindDefaultFont(Character charcode,
+ PointSize26Dot6 requestedPointSize,
+ bool preferColor);
/**
* @copydoc Dali::TextAbstraction::FontClient::FindFallbackFont()
*/
- FontId FindFallbackFont( Character charcode,
- const FontDescription& preferredFontDescription,
- PointSize26Dot6 requestedPointSize,
- bool preferColor );
+ FontId FindFallbackFont(Character charcode,
+ const FontDescription& preferredFontDescription,
+ PointSize26Dot6 requestedPointSize,
+ bool preferColor);
/**
* @see Dali::TextAbstraction::FontClient::GetFontId( const FontPath& path, PointSize26Dot6 requestedPointSize, FaceIndex faceIndex )
*
* @param[in] cacheDescription Whether to cache the font description.
*/
- FontId GetFontId( const FontPath& path,
- PointSize26Dot6 requestedPointSize,
- FaceIndex faceIndex,
- bool cacheDescription );
+ FontId GetFontId(const FontPath& path,
+ PointSize26Dot6 requestedPointSize,
+ FaceIndex faceIndex,
+ bool cacheDescription);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetFontId( const FontDescription& preferredFontDescription, PointSize26Dot6 requestedPointSize, FaceIndex faceIndex )
*/
- FontId GetFontId( const FontDescription& fontDescription,
- PointSize26Dot6 requestedPointSize,
- FaceIndex faceIndex );
+ FontId GetFontId(const FontDescription& fontDescription,
+ PointSize26Dot6 requestedPointSize,
+ FaceIndex faceIndex);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetFontId( const BitmapFont& bitmapFont )
*/
- FontId GetFontId( const BitmapFont& bitmapFont );
+ FontId GetFontId(const BitmapFont& bitmapFont);
/**
* @copydoc Dali::TextAbstraction::FontClient::IsScalable( const FontPath& path )
*/
- bool IsScalable( const FontPath& path );
+ bool IsScalable(const FontPath& path);
/**
* @copydoc Dali::TextAbstraction::FontClient::IsScalable( const FontDescription& fontDescription )
*/
- bool IsScalable( const FontDescription& fontDescription );
+ bool IsScalable(const FontDescription& fontDescription);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetFixedSizes()
*/
- void GetFixedSizes( const FontPath& path, Dali::Vector< PointSize26Dot6>& sizes );
+ void GetFixedSizes(const FontPath& path, Dali::Vector<PointSize26Dot6>& sizes);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetFixedSizes()
*/
- void GetFixedSizes( const FontDescription& fontDescription,
- Dali::Vector< PointSize26Dot6 >& sizes );
+ void GetFixedSizes(const FontDescription& fontDescription,
+ Dali::Vector<PointSize26Dot6>& sizes);
/**
* @copydoc Dali::TextAbstraction::FontClient::HasItalicStyle()
*/
- bool HasItalicStyle( FontId fontId ) const;
+ bool HasItalicStyle(FontId fontId) const;
/**
* @copydoc Dali::TextAbstraction::FontClient::GetFontMetrics()
*/
- void GetFontMetrics( FontId fontId, FontMetrics& metrics );
+ void GetFontMetrics(FontId fontId, FontMetrics& metrics);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetGlyphIndex()
*/
- GlyphIndex GetGlyphIndex( FontId fontId, Character charcode );
+ GlyphIndex GetGlyphIndex(FontId fontId, Character charcode);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetGlyphMetrics()
*/
- bool GetGlyphMetrics( GlyphInfo* array, uint32_t size, GlyphType type, bool horizontal );
+ bool GetGlyphMetrics(GlyphInfo* array, uint32_t size, GlyphType type, bool horizontal);
/**
* Helper for GetGlyphMetrics when using bitmaps
*/
- bool GetBitmapMetrics( GlyphInfo* array, uint32_t size, bool horizontal );
+ bool GetBitmapMetrics(GlyphInfo* array, uint32_t size, bool horizontal);
/**
* Helper for GetGlyphMetrics when using vectors
*/
- bool GetVectorMetrics( GlyphInfo* array, uint32_t size, bool horizontal );
+ bool GetVectorMetrics(GlyphInfo* array, uint32_t size, bool horizontal);
/**
* @copydoc Dali::TextAbstraction::FontClient::CreateBitmap( FontId fontId, GlyphIndex glyphIndex, bool isItalicRequired, bool isBoldRequired, Dali::TextAbstraction::FontClient::GlyphBufferData& data, int outlineWidth )
*/
- void CreateBitmap( FontId fontId, GlyphIndex glyphIndex, bool isItalicRequired, bool isBoldRequired, Dali::TextAbstraction::FontClient::GlyphBufferData& data, int outlineWidth );
+ void CreateBitmap(FontId fontId, GlyphIndex glyphIndex, bool isItalicRequired, bool isBoldRequired, Dali::TextAbstraction::FontClient::GlyphBufferData& data, int outlineWidth);
/**
* @copydoc Dali::TextAbstraction::FontClient::CreateBitmap( FontId fontId, GlyphIndex glyphIndex, int outlineWidth )
*/
- PixelData CreateBitmap( FontId fontId, GlyphIndex glyphIndex, int outlineWidth );
+ PixelData CreateBitmap(FontId fontId, GlyphIndex glyphIndex, int outlineWidth);
/**
* @copydoc Dali::TextAbstraction::FontClient::CreateVectorBlob()
*/
- void CreateVectorBlob( FontId fontId, GlyphIndex glyphIndex, VectorBlob*& blob, unsigned int& blobLength, unsigned int& nominalWidth, unsigned int& nominalHeight );
+ void CreateVectorBlob(FontId fontId, GlyphIndex glyphIndex, VectorBlob*& blob, unsigned int& blobLength, unsigned int& nominalWidth, unsigned int& nominalHeight);
/**
* @copydoc Dali::TextAbstraction::FontClient::GetEllipsisGlyph()
*/
- const GlyphInfo& GetEllipsisGlyph( PointSize26Dot6 requestedPointSize );
+ const GlyphInfo& GetEllipsisGlyph(PointSize26Dot6 requestedPointSize);
/**
* @copydoc Dali::TextAbstraction::FontClient::IsColorGlyph()
*/
- bool IsColorGlyph( FontId fontId, GlyphIndex glyphIndex );
+ bool IsColorGlyph(FontId fontId, GlyphIndex glyphIndex);
/**
* @copydoc Dali::TextAbstraction::FontClient::CreateEmbeddedItem()
*/
- GlyphIndex CreateEmbeddedItem( const TextAbstraction::FontClient::EmbeddedItemDescription& description, Pixel::Format& pixelFormat );
+ GlyphIndex CreateEmbeddedItem(const TextAbstraction::FontClient::EmbeddedItemDescription& description, Pixel::Format& pixelFormat);
/**
* @copydoc Dali::TextAbstraction::Internal::FontClient::GetFreetypeFace()
*/
- FT_FaceRec_* GetFreetypeFace( FontId fontId );
+ FT_FaceRec_* GetFreetypeFace(FontId fontId);
/**
* @copydoc Dali::TextAbstraction::Internal::FontClient::GetFontType()
*/
- FontDescription::Type GetFontType( FontId fontId );
+ FontDescription::Type GetFontType(FontId fontId);
/**
* @copydoc Dali::TextAbstraction::FontClient::AddCustomFontDirectory()
*/
- bool AddCustomFontDirectory( const FontPath& path );
+ bool AddCustomFontDirectory(const FontPath& path);
private:
-
/**
* @brief Caches the fonts present in the platform.
*
* @param[out] characterSet The character set for that pattern.
* @return true if match found.
*/
- bool MatchFontDescriptionToPattern( _FcPattern* pattern, Dali::TextAbstraction::FontDescription& fontDescription, _FcCharSet** characterSet );
+ bool MatchFontDescriptionToPattern(_FcPattern* pattern, Dali::TextAbstraction::FontDescription& fontDescription, _FcCharSet** characterSet);
/**
* @brief Creates a font family pattern used to match fonts.
*
* @return The pattern.
*/
- _FcPattern* CreateFontFamilyPattern( const FontDescription& fontDescription ) const;
+ _FcPattern* CreateFontFamilyPattern(const FontDescription& fontDescription) const;
/**
* @brief Retrieves the fonts present in the platform.
*
* @return @e true if the operation is successful.
*/
- bool GetFcString( const _FcPattern* const pattern, const char* const n, std::string& string );
+ bool GetFcString(const _FcPattern* const pattern, const char* const n, std::string& string);
/**
* @brief Retrieves a font config object's value from a pattern.
*
* @return @e true if the operation is successful.
*/
- bool GetFcInt( const _FcPattern* const pattern, const char* const n, int& intVal );
+ bool GetFcInt(const _FcPattern* const pattern, const char* const n, int& intVal);
/**
* @brief Creates a font.
*
* @return The font identifier.
*/
- FontId CreateFont( const FontPath& path,
- PointSize26Dot6 requestedPointSize,
- FaceIndex faceIndex,
- bool cacheDescription );
+ FontId CreateFont(const FontPath& path,
+ PointSize26Dot6 requestedPointSize,
+ FaceIndex faceIndex,
+ bool cacheDescription);
/**
* @brief Copy the color bitmap given in @p srcBuffer to @p data.
* @param[in] srcHeight The height of the bitmap.
* @param[in] srcBuffer The buffer of the bitmap.
*/
- void ConvertBitmap( TextAbstraction::FontClient::GlyphBufferData& data, unsigned int srcWidth, unsigned int srcHeight, const unsigned char* const srcBuffer );
+ void ConvertBitmap(TextAbstraction::FontClient::GlyphBufferData& data, unsigned int srcWidth, unsigned int srcHeight, const unsigned char* const srcBuffer);
/**
* @brief Copy the FreeType bitmap to the given buffer.
* @param[in] srcBitmap The FreeType bitmap.
* @param[in] isShearRequired Whether the bitmap needs a shear transform (for software italics).
*/
- void ConvertBitmap( TextAbstraction::FontClient::GlyphBufferData& data, FT_Bitmap srcBitmap, bool isShearRequired );
+ void ConvertBitmap(TextAbstraction::FontClient::GlyphBufferData& data, FT_Bitmap srcBitmap, bool isShearRequired);
/**
* @brief Finds in the cache if there is a triplet with the path to the font file name, the font point size and the face index.
*
* @return @e true if there triplet is found.
*/
- bool FindFont( const FontPath& path, PointSize26Dot6 requestedPointSize, FaceIndex faceIndex, FontId& fontId ) const;
+ bool FindFont(const FontPath& path, PointSize26Dot6 requestedPointSize, FaceIndex faceIndex, FontId& fontId) const;
/**
* @brief Finds in the cache a cluster 'font family, font width, font weight, font slant'
*
* @return @e true if the pair is found.
*/
- bool FindValidatedFont( const FontDescription& fontDescription,
- FontDescriptionId& validatedFontId );
+ bool FindValidatedFont(const FontDescription& fontDescription,
+ FontDescriptionId& validatedFontId);
/**
* @brief Finds a fallback font list from the cache for a given font-description
* @param[out] A valid pointer to a font list, or @e nullptr if not found.
* @param[out] characterSetList A valid pointer to a character set list, or @e nullptr if not found.
*/
- bool FindFallbackFontList( const FontDescription& fontDescription,
- FontList*& fontList,
- CharacterSetList*& characterSetList );
+ bool FindFallbackFontList(const FontDescription& fontDescription,
+ FontList*& fontList,
+ CharacterSetList*& characterSetList);
/**
* @brief Finds in the cache a pair 'validated font identifier and font point size'.
*
* @return @e true if the pair is found.
*/
- bool FindFont( FontDescriptionId validatedFontId,
- PointSize26Dot6 requestedPointSize,
- FontId& fontId );
+ bool FindFont(FontDescriptionId validatedFontId,
+ PointSize26Dot6 requestedPointSize,
+ FontId& fontId);
/**
* @brief Finds in the cache a bitmap font with the @p bitmapFont family name.
*
* @return Whether the font has been found.
*/
- bool FindBitmapFont( const FontFamily& bitmapFont, FontId& fontId ) const;
+ bool FindBitmapFont(const FontFamily& bitmapFont, FontId& fontId) const;
/**
* @brief Validate a font description.
* @param[in] fontDescription The font to validate.
* @param[out] validatedFontId Result of validation
*/
- void ValidateFont( const FontDescription& fontDescription,
- FontDescriptionId& validatedFontId );
+ void ValidateFont(const FontDescription& fontDescription,
+ FontDescriptionId& validatedFontId);
/**
* @brief Helper for GetDefaultFonts etc.
* @param[out] fontList A list of the fonts which are a close match for fontDescription.
* @param[out] characterSetList A list of character sets which are a close match for fontDescription.
*/
- void SetFontList( const FontDescription& fontDescription, FontList& fontList, CharacterSetList& characterSetList );
+ void SetFontList(const FontDescription& fontDescription, FontList& fontList, CharacterSetList& characterSetList);
/**
* Caches a font path.
* @param[in] requestedPointSize The font point size.
* @param[in] path Path to the font file name.
*/
- void CacheFontPath( FT_Face ftFace, FontId id, PointSize26Dot6 requestedPointSize, const FontPath& path );
+ void CacheFontPath(FT_Face ftFace, FontId id, PointSize26Dot6 requestedPointSize, const FontPath& path);
/**
* @brief Creates a character set from a given font's @p description.
*
* @return A character set.
*/
- _FcCharSet* CreateCharacterSetFromDescription( const FontDescription& description );
+ _FcCharSet* CreateCharacterSetFromDescription(const FontDescription& description);
/**
* @brief Free the resources allocated in the fallback cache.
*
* @param[in] fallbackCache The fallback cache.
*/
- void ClearFallbackCache( std::vector<FallbackCacheItem>& fallbackCache );
+ void ClearFallbackCache(std::vector<FallbackCacheItem>& fallbackCache);
/**
* @brief Free the resources allocated by the FcCharSet objects.
void ClearCharacterSetFromFontFaceCache();
private:
-
// Declared private and left undefined to avoid copies.
- Plugin( const Plugin& );
+ Plugin(const Plugin&);
// Declared private and left undefined to avoid copies.
- Plugin& operator=( const Plugin& );
+ Plugin& operator=(const Plugin&);
private:
-
FT_Library mFreeTypeLibrary; ///< A handle to a FreeType library instance.
unsigned int mDpiHorizontal; ///< Horizontal dpi.
FontDescription mDefaultFontDescription; ///< The cached default font from the system
- FontList mSystemFonts; ///< Cached system fonts.
- FontList mDefaultFonts; ///< Cached default fonts.
+ FontList mSystemFonts; ///< Cached system fonts.
+ FontList mDefaultFonts; ///< Cached default fonts.
CharacterSetList mDefaultFontCharacterSets;
std::vector<FallbackCacheItem> mFallbackCache; ///< Cached fallback font lists.
VectorFontCache* mVectorFontCache; ///< Separate cache for vector data blobs etc.
- Vector<EllipsisItem> mEllipsisCache; ///< Caches ellipsis glyphs for a particular point size.
- std::vector<PixelBufferCacheItem> mPixelBufferCache; ///< Caches the pixel buffer of a url.
- Vector<EmbeddedItem> mEmbeddedItemCache; ///< Cache embedded items.
- std::vector<BitmapFontCacheItem> mBitmapFontCache; ///< Stores bitmap fonts.
+ Vector<EllipsisItem> mEllipsisCache; ///< Caches ellipsis glyphs for a particular point size.
+ std::vector<PixelBufferCacheItem> mPixelBufferCache; ///< Caches the pixel buffer of a url.
+ Vector<EmbeddedItem> mEmbeddedItemCache; ///< Cache embedded items.
+ std::vector<BitmapFontCacheItem> mBitmapFontCache; ///< Stores bitmap fonts.
bool mDefaultFontDescriptionCached : 1; ///< Whether the default font is cached or not
};
#define DALI_INTERNAL_TEXT_ABSTRACTION_SEGMENTATION_IMPL_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace TextAbstraction
{
-
namespace Internal
{
-
/**
* Implementation of the Segmentation
*/
class Segmentation : public BaseObject
{
public:
-
/**
* Constructor
*/
/**
* @copydoc Dali::Segmentation::GetLineBreakPositions()
*/
- void GetLineBreakPositions( const Character* const text,
- Length numberOfCharacters,
- LineBreakInfo* breakInfo );
-
+ void GetLineBreakPositions(const Character* const text,
+ Length numberOfCharacters,
+ LineBreakInfo* breakInfo);
/**
* @copydoc Dali::Segmentation::GetWordBreakPositions()
*/
- void GetWordBreakPositions( const Character* const text,
- Length numberOfCharacters,
- WordBreakInfo* breakInfo );
+ void GetWordBreakPositions(const Character* const text,
+ Length numberOfCharacters,
+ WordBreakInfo* breakInfo);
private:
-
/**
* Helper for lazy initialization.
*/
void CreatePlugin();
private:
-
// Undefined copy constructor.
- Segmentation( const Segmentation& );
+ Segmentation(const Segmentation&);
// Undefined assignment constructor.
- Segmentation& operator=( Segmentation& );
+ Segmentation& operator=(Segmentation&);
private:
-
struct Plugin;
Plugin* mPlugin;
} // namespace TextAbstraction
-inline static TextAbstraction::Internal::Segmentation& GetImplementation( TextAbstraction::Segmentation& segmentation )
+inline static TextAbstraction::Internal::Segmentation& GetImplementation(TextAbstraction::Segmentation& segmentation)
{
- DALI_ASSERT_ALWAYS( segmentation && "segmentation handle is empty" );
+ DALI_ASSERT_ALWAYS(segmentation && "segmentation handle is empty");
BaseObject& handle = segmentation.GetBaseObject();
- return static_cast<TextAbstraction::Internal::Segmentation&>( handle );
+ return static_cast<TextAbstraction::Internal::Segmentation&>(handle);
}
-inline static const TextAbstraction::Internal::Segmentation& GetImplementation( const TextAbstraction::Segmentation& segmentation )
+inline static const TextAbstraction::Internal::Segmentation& GetImplementation(const TextAbstraction::Segmentation& segmentation)
{
- DALI_ASSERT_ALWAYS( segmentation && "segmentation handle is empty" );
+ DALI_ASSERT_ALWAYS(segmentation && "segmentation handle is empty");
const BaseObject& handle = segmentation.GetBaseObject();
- return static_cast<const TextAbstraction::Internal::Segmentation&>( handle );
+ return static_cast<const TextAbstraction::Internal::Segmentation&>(handle);
}
} // namespace Dali
#define DALI_INTERNAL_TEXT_ABSTRACTION_SHAPING_IMPL_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/public-api/object/base-object.h>
// INTERNAL INCLUDES
-#include <dali/public-api/common/dali-vector.h>
#include <dali/devel-api/text-abstraction/shaping.h>
+#include <dali/public-api/common/dali-vector.h>
namespace Dali
{
-
namespace TextAbstraction
{
-
namespace Internal
{
-
/**
* Implementation of the Shaping
*/
class Shaping : public BaseObject
{
public:
-
/**
* Constructor
*/
/**
* @copydoc Dali::Shaping::Shape()
*/
- Length Shape( const Character* const text,
- Length numberOfCharacters,
- FontId fontId,
- Script script );
+ Length Shape(const Character* const text,
+ Length numberOfCharacters,
+ FontId fontId,
+ Script script);
/**
* @copydoc Dali::Shaping::GetGlyphs()
*/
- void GetGlyphs( GlyphInfo* glyphInfo,
- CharacterIndex* glyphToCharacterMap );
+ void GetGlyphs(GlyphInfo* glyphInfo,
+ CharacterIndex* glyphToCharacterMap);
private:
-
/**
* Helper for lazy initialization.
*/
void CreatePlugin();
private:
-
// Undefined copy constructor.
- Shaping( const Shaping& );
+ Shaping(const Shaping&);
// Undefined assignment constructor.
- Shaping& operator=( const Shaping& );
+ Shaping& operator=(const Shaping&);
struct Plugin;
Plugin* mPlugin;
} // namespace TextAbstraction
-inline static TextAbstraction::Internal::Shaping& GetImplementation( TextAbstraction::Shaping& shaping )
+inline static TextAbstraction::Internal::Shaping& GetImplementation(TextAbstraction::Shaping& shaping)
{
- DALI_ASSERT_ALWAYS( shaping && "shaping handle is empty" );
+ DALI_ASSERT_ALWAYS(shaping && "shaping handle is empty");
BaseObject& handle = shaping.GetBaseObject();
- return static_cast<TextAbstraction::Internal::Shaping&>( handle );
+ return static_cast<TextAbstraction::Internal::Shaping&>(handle);
}
-inline static const TextAbstraction::Internal::Shaping& GetImplementation( const TextAbstraction::Shaping& shaping )
+inline static const TextAbstraction::Internal::Shaping& GetImplementation(const TextAbstraction::Shaping& shaping)
{
- DALI_ASSERT_ALWAYS( shaping && "shaping handle is empty" );
+ DALI_ASSERT_ALWAYS(shaping && "shaping handle is empty");
const BaseObject& handle = shaping.GetBaseObject();
- return static_cast<const TextAbstraction::Internal::Shaping&>( handle );
+ return static_cast<const TextAbstraction::Internal::Shaping&>(handle);
}
} // namespace Dali
#define DALI_INTERNAL_TEXT_ABSTRACTION_TEXT_RENDERER_IMPL_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace TextAbstraction
{
-
namespace Internal
{
-
/**
* Implementation of the TextRenderer
*/
class TextRenderer : public BaseObject
{
public:
-
/**
* Constructor
*/
Devel::PixelBuffer Render(const TextAbstraction::TextRenderer::Parameters& parameters);
private:
-
// Undefined copy constructor.
TextRenderer(const TextRenderer&);
#define DALI_INTERNAL_THREAD_SETTINGS_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <string>
#include <sys/prctl.h>
+#include <string>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Implementation of the Thread Settings
*/
namespace ThreadSettings
{
-
/**
* @brief Set the thread name.
*
#define DALI_INTERNAL_TRACE_MANAGER_IMPL_ANDROID_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
class PerformanceInterface;
/**
* Explicit Constructor
*/
- explicit TraceManagerAndroid( PerformanceInterface* performanceInterface );
+ explicit TraceManagerAndroid(PerformanceInterface* performanceInterface);
protected:
/**
Dali::Integration::Trace::LogContextFunction GetLogContextFunction() final;
private:
-
/**
* LogContext method (Android specific) used for tracing
*/
- static void LogContext( bool start, const char* tag );
+ static void LogContext(bool start, const char* tag);
};
} // namespace Adaptor
#define DALI_INTERNAL_TRACE_FACTORY_H
/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
namespace TraceManagerFactory
{
-
using TraceManagerUPtr = std::unique_ptr<TraceManager>;
// Factory function creating new TraceFactory
// Symbol exists but may be overriden during linking
-TraceManagerUPtr CreateTraceFactory( PerformanceInterface* performanceInterface );
+TraceManagerUPtr CreateTraceFactory(PerformanceInterface* performanceInterface);
} // namespace TraceManagerFactory
#define DALI_INTERNAL_TRACE_MANAGER_IMPL_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
// INTERNAL INCLUDES
-
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
class PerformanceInterface;
class TraceManager
{
public:
-
/**
* Explicit Constructor
*/
- explicit TraceManager( PerformanceInterface* performanceInterface );
+ explicit TraceManager(PerformanceInterface* performanceInterface);
/**
* Constructor
PerformanceInterface* mPerformanceInterface;
protected:
-
/**
* Obtain the platform dependent LogContextFunction method used for tracing
*/
- virtual Dali::Integration::Trace::LogContextFunction GetLogContextFunction() { return nullptr; };
+ virtual Dali::Integration::Trace::LogContextFunction GetLogContextFunction()
+ {
+ return nullptr;
+ };
private:
-
/**
* Set / Install the platform dependent trace function
* @param logContextFunction - Platform dependent trace function
*/
- void SetTraceLogContextFunction( const Dali::Integration::Trace::LogContextFunction& logContextFunction );
+ void SetTraceLogContextFunction(const Dali::Integration::Trace::LogContextFunction& logContextFunction);
- TraceManager( const TraceManager& ) = delete;
- TraceManager& operator=( TraceManager& ) = delete;
+ TraceManager(const TraceManager&) = delete;
+ TraceManager& operator=(TraceManager&) = delete;
};
} // namespace Adaptor
#define DALI_INTERNAL_TRACE_MANAGER_IMPL_GENERIC_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
class PerformanceInterface;
/**
* Explicit Constructor
*/
- explicit TraceManagerGeneric( PerformanceInterface* performanceInterface );
+ explicit TraceManagerGeneric(PerformanceInterface* performanceInterface);
protected:
/**
Dali::Integration::Trace::LogContextFunction GetLogContextFunction() final;
private:
-
/**
* LogContext method (Generic specific) used for tracing
*/
- static void LogContext( bool start, const char* tag );
+ static void LogContext(bool start, const char* tag);
};
} // namespace Adaptor
#define DALI_INTERNAL_TRACE_MANAGER_IMPL_TIZEN_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
class PerformanceInterface;
/**
* Explicit Constructor
*/
- explicit TraceManagerTizen( PerformanceInterface* performanceInterface );
+ explicit TraceManagerTizen(PerformanceInterface* performanceInterface);
protected:
-
/**
* Destructor
*/
Dali::Integration::Trace::LogContextFunction GetLogContextFunction() final;
private:
-
/**
* LogContext method (Tizen specific) used for tracing
*/
- static void LogContext( bool start, const char* tag );
+ static void LogContext(bool start, const char* tag);
};
} // namespace Adaptor
#define DALI_INTERNAL_VECTOR_ANIMATION_RENDERER_IMPL_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class VectorAnimationRenderer;
-using VectorAnimationRendererPtr = IntrusivePtr< VectorAnimationRenderer >;
+using VectorAnimationRendererPtr = IntrusivePtr<VectorAnimationRenderer>;
/**
* Dali internal VectorAnimationRenderer.
class VectorAnimationRenderer : public BaseObject, public ConnectionTracker
{
public:
-
/**
* @brief Creates a VectorAnimationRenderer object.
*
/**
* @brief Initializes member data.
*/
- void Initialize( const std::string& url );
+ void Initialize(const std::string& url);
/**
* @copydoc Dali::VectorAnimationRenderer::Finalize()
/**
* @copydoc Dali::VectorAnimationRenderer::SetRenderer()
*/
- void SetRenderer( Dali::Renderer renderer );
+ void SetRenderer(Dali::Renderer renderer);
/**
* @copydoc Dali::VectorAnimationRenderer::SetSize()
*/
- void SetSize( uint32_t width, uint32_t height );
+ void SetSize(uint32_t width, uint32_t height);
/**
* @copydoc Dali::VectorAnimationRenderer::Render()
*/
- bool Render( uint32_t frameNumber );
+ bool Render(uint32_t frameNumber);
/**
* @copydoc Dali::VectorAnimationRenderer::GetTotalFrameNumber()
/**
* @copydoc Dali::VectorAnimationRenderer::GetDefaultSize()
*/
- void GetDefaultSize( uint32_t& width, uint32_t& height ) const;
+ void GetDefaultSize(uint32_t& width, uint32_t& height) const;
/**
* @copydoc Dali::VectorAnimationRenderer::GetLayerInfo()
*/
- void GetLayerInfo( Property::Map& map ) const;
+ void GetLayerInfo(Property::Map& map) const;
/**
* @copydoc Dali::VectorAnimationRenderer::GetMarkerInfo()
*/
- bool GetMarkerInfo( const std::string& marker, uint32_t& startFrame, uint32_t& endFrame ) const;
+ bool GetMarkerInfo(const std::string& marker, uint32_t& startFrame, uint32_t& endFrame) const;
/**
* @copydoc Dali::VectorAnimationRenderer::IgnoreRenderedFrame()
Dali::VectorAnimationRenderer::UploadCompletedSignalType& UploadCompletedSignal();
private:
-
/**
* @brief Constructor
*/
~VectorAnimationRenderer();
private:
-
- VectorAnimationRenderer( const VectorAnimationRenderer& ) = delete;
- VectorAnimationRenderer& operator=( VectorAnimationRenderer& ) = delete;
+ VectorAnimationRenderer(const VectorAnimationRenderer&) = delete;
+ VectorAnimationRenderer& operator=(VectorAnimationRenderer&) = delete;
private:
-
VectorAnimationRendererPluginProxy mPlugin;
};
} // namespace Internal
-inline static Internal::Adaptor::VectorAnimationRenderer& GetImplementation( Dali::VectorAnimationRenderer& renderer )
+inline static Internal::Adaptor::VectorAnimationRenderer& GetImplementation(Dali::VectorAnimationRenderer& renderer)
{
- DALI_ASSERT_ALWAYS( renderer && "VectorAnimationRenderer handle is empty." );
+ DALI_ASSERT_ALWAYS(renderer && "VectorAnimationRenderer handle is empty.");
BaseObject& handle = renderer.GetBaseObject();
- return static_cast< Internal::Adaptor::VectorAnimationRenderer& >( handle );
+ return static_cast<Internal::Adaptor::VectorAnimationRenderer&>(handle);
}
-inline static const Internal::Adaptor::VectorAnimationRenderer& GetImplementation( const Dali::VectorAnimationRenderer& renderer )
+inline static const Internal::Adaptor::VectorAnimationRenderer& GetImplementation(const Dali::VectorAnimationRenderer& renderer)
{
- DALI_ASSERT_ALWAYS( renderer && "VectorAnimationRenderer handle is empty." );
+ DALI_ASSERT_ALWAYS(renderer && "VectorAnimationRenderer handle is empty.");
const BaseObject& handle = renderer.GetBaseObject();
- return static_cast< const Internal::Adaptor::VectorAnimationRenderer& >( handle );
+ return static_cast<const Internal::Adaptor::VectorAnimationRenderer&>(handle);
}
} // namespace Dali
#define DALI_INTERNAL_VECTOR_ANIMATION_RENDERER_PLUGIN_PROXY_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Proxy class to dynamically load, use and unload vector animation renderer plugin.
*/
class VectorAnimationRendererPluginProxy
{
public:
-
/**
* @brief Constructor
*/
- VectorAnimationRendererPluginProxy( const std::string& sharedObjectName );
+ VectorAnimationRendererPluginProxy(const std::string& sharedObjectName);
/**
* @brief Destructor
/**
* @copydoc Dali::VectorAnimationRendererPlugin::Initialize()
*/
- bool Initialize( const std::string& url );
+ bool Initialize(const std::string& url);
/**
* @copydoc Dali::VectorAnimationRendererPlugin::Finalize()
/**
* @copydoc Dali::VectorAnimationRendererPlugin::SetRenderer()
*/
- void SetRenderer( Dali::Renderer renderer );
+ void SetRenderer(Dali::Renderer renderer);
/**
* @copydoc Dali::VectorAnimationRendererPlugin::SetSize()
*/
- void SetSize( uint32_t width, uint32_t height );
+ void SetSize(uint32_t width, uint32_t height);
/**
* @copydoc Dali::VectorAnimationRendererPlugin::Render()
*/
- bool Render( uint32_t frameNumber );
+ bool Render(uint32_t frameNumber);
/**
* @copydoc Dali::VectorAnimationRendererPlugin::GetTotalFrameNumber()
/**
* @copydoc Dali::VectorAnimationRendererPlugin::GetDefaultSize()
*/
- void GetDefaultSize( uint32_t& width, uint32_t& height ) const;
+ void GetDefaultSize(uint32_t& width, uint32_t& height) const;
/**
* @copydoc Dali::VectorAnimationRendererPlugin::GetLayerInfo()
*/
- void GetLayerInfo( Property::Map& map ) const;
+ void GetLayerInfo(Property::Map& map) const;
/**
* @copydoc Dali::VectorAnimationRendererPlugin::GetMarkerInfo()
*/
- bool GetMarkerInfo( const std::string& marker, uint32_t& startFrame, uint32_t& endFrame ) const;
+ bool GetMarkerInfo(const std::string& marker, uint32_t& startFrame, uint32_t& endFrame) const;
/**
* @copydoc Dali::VectorAnimationRendererPlugin::IgnoreRenderedFrame()
VectorAnimationRendererPlugin::UploadCompletedSignalType& UploadCompletedSignal();
// Not copyable or movable
- VectorAnimationRendererPluginProxy( const VectorAnimationRendererPluginProxy& ) = delete; ///< Deleted copy constructor
- VectorAnimationRendererPluginProxy( VectorAnimationRendererPluginProxy&& ) = delete; ///< Deleted move constructor
- VectorAnimationRendererPluginProxy& operator=( const VectorAnimationRendererPluginProxy& ) = delete; ///< Deleted copy assignment operator
- VectorAnimationRendererPluginProxy& operator=( VectorAnimationRendererPluginProxy&& ) = delete; ///< Deleted move assignment operator
+ VectorAnimationRendererPluginProxy(const VectorAnimationRendererPluginProxy&) = delete; ///< Deleted copy constructor
+ VectorAnimationRendererPluginProxy(VectorAnimationRendererPluginProxy&&) = delete; ///< Deleted move constructor
+ VectorAnimationRendererPluginProxy& operator=(const VectorAnimationRendererPluginProxy&) = delete; ///< Deleted copy assignment operator
+ VectorAnimationRendererPluginProxy& operator=(VectorAnimationRendererPluginProxy&&) = delete; ///< Deleted move assignment operator
private:
-
/**
* Dynamically loads the plugin.
*/
void Initialize();
private:
-
using CreateVectorAnimationRendererFunction = Dali::VectorAnimationRendererPlugin* (*)();
- std::string mSharedObjectName; ///< Shared object name
- void* mLibHandle; ///< Handle for the loaded library
- Dali::VectorAnimationRendererPlugin* mPlugin; ///< Plugin handle
+ std::string mSharedObjectName; ///< Shared object name
+ void* mLibHandle; ///< Handle for the loaded library
+ Dali::VectorAnimationRendererPlugin* mPlugin; ///< Plugin handle
- CreateVectorAnimationRendererFunction mCreateVectorAnimationRendererPtr; ///< Function pointer called in adaptor to create a plugin instance
+ CreateVectorAnimationRendererFunction mCreateVectorAnimationRendererPtr; ///< Function pointer called in adaptor to create a plugin instance
VectorAnimationRendererPlugin::UploadCompletedSignalType mDefaultSignal;
-
};
} // namespace Adaptor
#define DALI_INTERNAL_VECTOR_IMAGE_RENDERER_IMPL_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/public-api/signals/connection-tracker.h>
// INTERNAL INCLUDES
+#include <dali/devel-api/adaptor-framework/pixel-buffer.h>
#include <dali/devel-api/adaptor-framework/vector-image-renderer.h>
#include <dali/internal/vector-image/common/vector-image-renderer-plugin-proxy.h>
-#include <dali/devel-api/adaptor-framework/pixel-buffer.h>
struct NSVGrasterizer;
struct NSVGimage;
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class VectorImageRenderer;
-using VectorImageRendererPtr = IntrusivePtr< VectorImageRenderer >;
+using VectorImageRendererPtr = IntrusivePtr<VectorImageRenderer>;
/**
* Dali internal VectorImageRenderer.
class VectorImageRenderer : public BaseObject
{
public:
-
/**
* @brief Creates a VectorImageRenderer object.
*
/**
* @copydoc Dali::VectorImageRenderer::GetDefaultSize()
*/
- void GetDefaultSize( uint32_t& width, uint32_t& height ) const;
+ void GetDefaultSize(uint32_t& width, uint32_t& height) const;
- VectorImageRenderer( const VectorImageRenderer& ) = delete;
- VectorImageRenderer& operator=( VectorImageRenderer& ) = delete;
- VectorImageRenderer( VectorImageRenderer&& ) = delete;
- VectorImageRenderer& operator=( VectorImageRenderer&& ) = delete;
+ VectorImageRenderer(const VectorImageRenderer&) = delete;
+ VectorImageRenderer& operator=(VectorImageRenderer&) = delete;
+ VectorImageRenderer(VectorImageRenderer&&) = delete;
+ VectorImageRenderer& operator=(VectorImageRenderer&&) = delete;
private:
-
/**
* @brief Constructor
*/
void Initialize();
private:
-
VectorImageRendererPluginProxy mPlugin;
NSVGimage* mParsedImage;
NSVGrasterizer* mRasterizer;
} // namespace Internal
-inline static Internal::Adaptor::VectorImageRenderer& GetImplementation( Dali::VectorImageRenderer& renderer )
+inline static Internal::Adaptor::VectorImageRenderer& GetImplementation(Dali::VectorImageRenderer& renderer)
{
- DALI_ASSERT_ALWAYS( renderer && "VectorImageRenderer handle is empty." );
+ DALI_ASSERT_ALWAYS(renderer && "VectorImageRenderer handle is empty.");
BaseObject& handle = renderer.GetBaseObject();
- return static_cast< Internal::Adaptor::VectorImageRenderer& >( handle );
+ return static_cast<Internal::Adaptor::VectorImageRenderer&>(handle);
}
-inline static const Internal::Adaptor::VectorImageRenderer& GetImplementation( const Dali::VectorImageRenderer& renderer )
+inline static const Internal::Adaptor::VectorImageRenderer& GetImplementation(const Dali::VectorImageRenderer& renderer)
{
- DALI_ASSERT_ALWAYS( renderer && "VectorImageRenderer handle is empty." );
+ DALI_ASSERT_ALWAYS(renderer && "VectorImageRenderer handle is empty.");
const BaseObject& handle = renderer.GetBaseObject();
- return static_cast< const Internal::Adaptor::VectorImageRenderer& >( handle );
+ return static_cast<const Internal::Adaptor::VectorImageRenderer&>(handle);
}
} // namespace Dali
#define DALI_INTERNAL_VECTOR_IMAGE_RENDERER_PLUGIN_PROXY_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// INTERNAL INCLUDES
-#include <dali/devel-api/adaptor-framework/vector-image-renderer-plugin.h>
#include <dali/devel-api/adaptor-framework/pixel-buffer.h>
+#include <dali/devel-api/adaptor-framework/vector-image-renderer-plugin.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* Proxy class to dynamically load, use and unload vector image renderer plugin.
*/
class VectorImageRendererPluginProxy
{
public:
-
/**
* @brief Constructor
*/
- VectorImageRendererPluginProxy( std::string sharedObjectName );
+ VectorImageRendererPluginProxy(std::string sharedObjectName);
/**
* @brief Destructor
void GetDefaultSize(uint32_t& width, uint32_t& height) const;
// Not copyable or movable
- VectorImageRendererPluginProxy( const VectorImageRendererPluginProxy& ) = delete; ///< Deleted copy constructor
- VectorImageRendererPluginProxy( VectorImageRendererPluginProxy&& ) = delete; ///< Deleted move constructor
- VectorImageRendererPluginProxy& operator=( const VectorImageRendererPluginProxy& ) = delete; ///< Deleted copy assignment operator
- VectorImageRendererPluginProxy& operator=( VectorImageRendererPluginProxy&& ) = delete; ///< Deleted move assignment operator
+ VectorImageRendererPluginProxy(const VectorImageRendererPluginProxy&) = delete; ///< Deleted copy constructor
+ VectorImageRendererPluginProxy(VectorImageRendererPluginProxy&&) = delete; ///< Deleted move constructor
+ VectorImageRendererPluginProxy& operator=(const VectorImageRendererPluginProxy&) = delete; ///< Deleted copy assignment operator
+ VectorImageRendererPluginProxy& operator=(VectorImageRendererPluginProxy&&) = delete; ///< Deleted move assignment operator
private:
-
/**
* Dynamically loads the plugin.
*/
void InitializePlugin();
private:
-
using CreateVectorImageRendererFunction = Dali::VectorImageRendererPlugin* (*)();
- std::string mSharedObjectName; ///< Shared object name
- void* mLibHandle; ///< Handle for the loaded library
- Dali::VectorImageRendererPlugin* mPlugin; ///< Plugin handle
-
- CreateVectorImageRendererFunction mCreateVectorImageRendererPtr; ///< Function pointer called in adaptor to create a plugin instance
+ std::string mSharedObjectName; ///< Shared object name
+ void* mLibHandle; ///< Handle for the loaded library
+ Dali::VectorImageRendererPlugin* mPlugin; ///< Plugin handle
+ CreateVectorImageRendererFunction mCreateVectorImageRendererPtr; ///< Function pointer called in adaptor to create a plugin instance
};
} // namespace Adaptor
#define DALI_VIDEO_PLAYER_IMPL_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <dali/public-api/object/base-object.h>
#include <dali/devel-api/adaptor-framework/video-sync-mode.h>
+#include <dali/public-api/object/base-object.h>
// INTERNAL INCLUDES
-#include <dali/devel-api/adaptor-framework/video-player.h>
#include <dali/devel-api/adaptor-framework/video-player-plugin.h>
+#include <dali/devel-api/adaptor-framework/video-player.h>
namespace Dali
{
namespace Internal
{
-
namespace Adaptor
{
-
class VideoPlayer;
-typedef IntrusivePtr< VideoPlayer > VideoPlayerPtr;
+typedef IntrusivePtr<VideoPlayer> VideoPlayerPtr;
/**
* @brief VideoPlayer class is used for video playback.
* @SINCE_1_1.24
*/
-class VideoPlayer: public Dali::BaseObject
+class VideoPlayer : public Dali::BaseObject
{
public:
-
/**
* @brief Creates a new VideoPlayer handle
* @SINCE_1_1.24
/**
* @copydoc Dali::VideoPlayer::SetUrl()
*/
- void SetUrl( const std::string& url );
+ void SetUrl(const std::string& url);
/**
* @copydoc Dali::VideoPlayer::GetUrl()
/**
* @copydoc Dali::VideoPlayer::SetMute()
*/
- void SetMute( bool mute );
+ void SetMute(bool mute);
/**
* @copydoc Dali::VideoPlayer::IsMuted()
/**
* @copydoc Dali::VideoPlayer::SetVolume()
*/
- void SetVolume( float left, float right );
+ void SetVolume(float left, float right);
/**
* @copydoc Dali::VideoPlayer::GetVolume()
*/
- void GetVolume( float& left, float& right );
+ void GetVolume(float& left, float& right);
/**
* @copydoc Dali::VideoPlayer::SetRenderingTarget()
*/
- void SetRenderingTarget( Dali::Any target );
+ void SetRenderingTarget(Dali::Any target);
/**
* @copydoc Dali::VideoPlayer::SetPlayPosition()
*/
- void SetPlayPosition( int millisecond );
+ void SetPlayPosition(int millisecond);
/**
* @copydoc Dali::VideoPlayer::GetPlayPosition()
/**
* @copydoc Dali::VideoPlayer::SetDisplayArea()
*/
- void SetDisplayArea( DisplayArea area );
+ void SetDisplayArea(DisplayArea area);
/**
* @copydoc Dali::VideoPlayer::SetSetDisplayRotation()
*/
- void SetDisplayRotation( Dali::VideoPlayerPlugin::DisplayRotation rotation );
+ void SetDisplayRotation(Dali::VideoPlayerPlugin::DisplayRotation rotation);
/**
* @copydoc Dali::VideoPlayer::GetDisplayRotation()
/**
* @brief Initializes member data.
*/
- void Initialize( Dali::Actor actor, VideoSyncMode syncMode );
+ void Initialize(Dali::Actor actor, VideoSyncMode syncMode);
/**
* @brief Dali::VideoPlayer::Forward()
*/
- void Forward( int millisecond );
+ void Forward(int millisecond);
/**
* @brief Dali::VideoPlayer::Backward()
*/
- void Backward( int millisecond );
+ void Backward(int millisecond);
/**
* @brief Dali::VideoPlayer::IsVideoTextureSupported()
/**
* @brief Dali::VideoPlayer::SetCodecType()
*/
- void SetCodecType( Dali::VideoPlayerPlugin::CodecType type );
+ void SetCodecType(Dali::VideoPlayerPlugin::CodecType type);
/**
* @brief Dali::VideoPlayer::GetCodecType()
/**
* @copydoc Dali::VideoPlayer::SetDisplayMode()
*/
- void SetDisplayMode( Dali::VideoPlayerPlugin::DisplayMode::Type mode );
+ void SetDisplayMode(Dali::VideoPlayerPlugin::DisplayMode::Type mode);
/**
* @brief Dali::VideoPlayer::GetDisplayMode()
void FinishSynchronization();
private:
-
/**
* @brief Constructor.
* @SINCE_1_1.24
virtual ~VideoPlayer();
// Undefined copy constructor
- VideoPlayer( const VideoPlayer& player );
+ VideoPlayer(const VideoPlayer& player);
// Undefined assignment operator
- VideoPlayer& operator=( const VideoPlayer& player );
+ VideoPlayer& operator=(const VideoPlayer& player);
private:
-
Dali::VideoPlayerPlugin* mPlugin; ///< Videoplayer plugin handle
- void* mHandle; ///< Handle for the loaded library
+ void* mHandle; ///< Handle for the loaded library
- typedef Dali::VideoPlayerPlugin* (*CreateVideoPlayerFunction)( Dali::Actor actor, Dali::VideoSyncMode syncMode );
- typedef void (*DestroyVideoPlayerFunction)( Dali::VideoPlayerPlugin* plugin );
+ typedef Dali::VideoPlayerPlugin* (*CreateVideoPlayerFunction)(Dali::Actor actor, Dali::VideoSyncMode syncMode);
+ typedef void (*DestroyVideoPlayerFunction)(Dali::VideoPlayerPlugin* plugin);
- CreateVideoPlayerFunction mCreateVideoPlayerPtr;
+ CreateVideoPlayerFunction mCreateVideoPlayerPtr;
DestroyVideoPlayerFunction mDestroyVideoPlayerPtr;
Dali::VideoPlayerPlugin::VideoPlayerSignalType mFinishedSignal;
} // namespace Adaptor
} // namespace Internal
-inline static Internal::Adaptor::VideoPlayer& GetImplementation( Dali::VideoPlayer& player )
+inline static Internal::Adaptor::VideoPlayer& GetImplementation(Dali::VideoPlayer& player)
{
- DALI_ASSERT_ALWAYS( player && "VideoPlayer handle is empty." );
+ DALI_ASSERT_ALWAYS(player && "VideoPlayer handle is empty.");
BaseObject& handle = player.GetBaseObject();
- return static_cast< Internal::Adaptor::VideoPlayer& >( handle );
+ return static_cast<Internal::Adaptor::VideoPlayer&>(handle);
}
-inline static const Internal::Adaptor::VideoPlayer& GetImplementation( const Dali::VideoPlayer& player )
+inline static const Internal::Adaptor::VideoPlayer& GetImplementation(const Dali::VideoPlayer& player)
{
- DALI_ASSERT_ALWAYS( player && "VideoPlayer handle is empty." );
+ DALI_ASSERT_ALWAYS(player && "VideoPlayer handle is empty.");
const BaseObject& handle = player.GetBaseObject();
- return static_cast< const Internal::Adaptor::VideoPlayer& >( handle );
+ return static_cast<const Internal::Adaptor::VideoPlayer&>(handle);
}
-} // namespace Dali;
+} // namespace Dali
#endif // DALI_VIDEO_PLAYER_IMPL_H
-
#define DALI_WEB_ENGINE_IMPL_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/public-api/object/base-object.h>
// INTERNAL INCLUDES
-#include <dali/devel-api/adaptor-framework/web-engine.h>
#include <dali/devel-api/adaptor-framework/web-engine-plugin.h>
+#include <dali/devel-api/adaptor-framework/web-engine.h>
namespace Dali
{
-
// forward declaration
class WebEngineBackForwardList;
class WebEngineContext;
namespace Internal
{
-
namespace Adaptor
{
-
class WebEngine;
-typedef IntrusivePtr< WebEngine > WebEnginePtr;
+typedef IntrusivePtr<WebEngine> WebEnginePtr;
/**
* @brief WebEngine class is used for Web.
class WebEngine : public Dali::BaseObject
{
public:
-
/**
* @brief Creates a new WebEngine handle
*
/**
* @copydoc Dali::WebEngine::Create()
*/
- void Create( int width, int height, const std::string& locale, const std::string& timezoneId );
+ void Create(int width, int height, const std::string& locale, const std::string& timezoneId);
/**
* @copydoc Dali::WebEngine::Create()
*/
- void Create( int width, int height, int argc, char** argv );
+ void Create(int width, int height, int argc, char** argv);
/**
* @copydoc Dali::WebEngine::Destroy()
/**
* @copydoc Dali::WebEngine::LoadUrl()
*/
- void LoadUrl( const std::string& url );
+ void LoadUrl(const std::string& url);
/**
* @copydoc Dali::WebEngine::GetTitle()
/**
* @copydoc Dali::WebEngine::SetUserAgent()
*/
- void SetUserAgent( const std::string& userAgent );
+ void SetUserAgent(const std::string& userAgent);
/**
* @copydoc Dali::WebEngine::LoadHtmlString()
*/
- void LoadHtmlString( const std::string& htmlString );
+ void LoadHtmlString(const std::string& htmlString);
/**
* @copydoc Dali::WebEngine::Reload()
/**
* @copydoc Dali::WebEngine::ScrollBy()
*/
- void ScrollBy( int deltaX, int deltaY );
+ void ScrollBy(int deltaX, int deltaY);
/**
* @copydoc Dali::WebEngine::SetScrollPosition()
*/
- void SetScrollPosition( int x, int y );
+ void SetScrollPosition(int x, int y);
/**
* @copydoc Dali::WebEngine::GetScrollPosition()
/**
* @copydoc Dali::WebEngine::EvaluateJavaScript()
*/
- void EvaluateJavaScript( const std::string& script, std::function< void(const std::string&) > resultHandler );
+ void EvaluateJavaScript(const std::string& script, std::function<void(const std::string&)> resultHandler);
/**
* @copydoc Dali::WebEngine::AddJavaScriptMessageHandler()
*/
- void AddJavaScriptMessageHandler( const std::string& exposedObjectName, std::function< void(const std::string&) > handler );
+ void AddJavaScriptMessageHandler(const std::string& exposedObjectName, std::function<void(const std::string&)> handler);
/**
* @copydoc Dali::WebEngine::ClearAllTilesResources()
/**
* @copydoc Dali::WebEngine::SetSize()
*/
- void SetSize( int width, int height );
+ void SetSize(int width, int height);
/**
* @copydoc Dali::WebEngine::SendTouchEvent()
*/
- bool SendTouchEvent( const Dali::TouchEvent& touch );
+ bool SendTouchEvent(const Dali::TouchEvent& touch);
/**
* @copydoc Dali::WebEngine::SendKeyEvent()
*/
- bool SendKeyEvent( const Dali::KeyEvent& event );
+ bool SendKeyEvent(const Dali::KeyEvent& event);
/**
* @copydoc Dali::WebEngine::SetFocus()
*/
- void SetFocus( bool focused );
+ void SetFocus(bool focused);
/**
* @copydoc Dali::WebEngine::UpdateDisplayArea()
*/
- void UpdateDisplayArea( Dali::Rect< int > displayArea );
+ void UpdateDisplayArea(Dali::Rect<int> displayArea);
/**
* @copydoc Dali::WebEngine::EnableVideoHole()
*/
- void EnableVideoHole( bool enabled );
+ void EnableVideoHole(bool enabled);
/**
* @copydoc Dali::WebEngine::PageLoadStartedSignal()
Dali::WebEnginePlugin::WebEngineScrollEdgeReachedSignalType& ScrollEdgeReachedSignal();
private:
-
/**
* @brief Constructor.
*/
virtual ~WebEngine();
// Undefined copy constructor
- WebEngine( const WebEngine& WebEngine );
+ WebEngine(const WebEngine& WebEngine);
// Undefined assignment operator
- WebEngine& operator=( const WebEngine& WebEngine );
+ WebEngine& operator=(const WebEngine& WebEngine);
/**
* @brief Initializes member data.
bool InitializePluginHandle();
private:
-
typedef Dali::WebEnginePlugin* (*CreateWebEngineFunction)();
- typedef void (*DestroyWebEngineFunction)( Dali::WebEnginePlugin* plugin );
+ typedef void (*DestroyWebEngineFunction)(Dali::WebEnginePlugin* plugin);
- Dali::WebEnginePlugin* mPlugin; ///< WebEnginePlugin instance
- void* mHandle; ///< Handle for the loaded library
- CreateWebEngineFunction mCreateWebEnginePtr; ///< Function to create plugin instance
- DestroyWebEngineFunction mDestroyWebEnginePtr; ///< Function to destroy plugin instance
+ Dali::WebEnginePlugin* mPlugin; ///< WebEnginePlugin instance
+ void* mHandle; ///< Handle for the loaded library
+ CreateWebEngineFunction mCreateWebEnginePtr; ///< Function to create plugin instance
+ DestroyWebEngineFunction mDestroyWebEnginePtr; ///< Function to destroy plugin instance
};
} // namespace Adaptor
} // namespace Internal
-inline static Internal::Adaptor::WebEngine& GetImplementation( Dali::WebEngine& webEngine )
+inline static Internal::Adaptor::WebEngine& GetImplementation(Dali::WebEngine& webEngine)
{
- DALI_ASSERT_ALWAYS( webEngine && "WebEngine handle is empty." );
+ DALI_ASSERT_ALWAYS(webEngine && "WebEngine handle is empty.");
BaseObject& handle = webEngine.GetBaseObject();
- return static_cast< Internal::Adaptor::WebEngine& >( handle );
+ return static_cast<Internal::Adaptor::WebEngine&>(handle);
}
-inline static const Internal::Adaptor::WebEngine& GetImplementation( const Dali::WebEngine& webEngine )
+inline static const Internal::Adaptor::WebEngine& GetImplementation(const Dali::WebEngine& webEngine)
{
- DALI_ASSERT_ALWAYS( webEngine && "WebEngine handle is empty." );
+ DALI_ASSERT_ALWAYS(webEngine && "WebEngine handle is empty.");
const BaseObject& handle = webEngine.GetBaseObject();
- return static_cast< const Internal::Adaptor::WebEngine& >( handle );
+ return static_cast<const Internal::Adaptor::WebEngine&>(handle);
}
-} // namespace Dali;
+} // namespace Dali
#endif
-
#define DALI_INTERNAL_WINDOWSYSTEM_ANDROID_DISPLAY_CONNECTION_FACTORY_ANDROID_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class DisplayConnectionFactoryAndroid : public DisplayConnectionFactory
{
public:
} // namespace Dali
-
#endif // DALI_INTERNAL_WINDOWSYSTEM_ANDROID_DISPLAY_CONNECTION_FACTORY_ANDROID_H
#define DALI_INTERNAL_WINDOWSYSTEM_DISPLAY_CONNECTION_IMPL_ANDROID_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
class DisplayConnection;
namespace Internal
{
-
namespace Adaptor
{
-
/**
* DisplayConnection implementation
*/
class DisplayConnectionAndroid : public Dali::Internal::Adaptor::DisplayConnection
{
public:
-
/**
* @brief Default constructor
*/
static DisplayConnection* New();
public:
-
/**
* @copydoc Dali::DisplayConnection::GetDisplay
*/
* @brief Sets the surface type
* @param[in] type The surface type
*/
- void SetSurfaceType( Dali::RenderSurfaceInterface::Type type );
+ void SetSurfaceType(Dali::RenderSurfaceInterface::Type type);
/**
* @brief Sets the graphics interface
* @param[in] graphics The graphics interface
*/
- void SetGraphicsInterface( GraphicsInterface& graphics );
+ void SetGraphicsInterface(GraphicsInterface& graphics);
public:
-
/**
* Destructor
*/
virtual ~DisplayConnectionAndroid();
protected:
-
// Undefined
DisplayConnectionAndroid(const DisplayConnectionAndroid&);
DisplayConnectionAndroid& operator=(const DisplayConnectionAndroid& rhs);
private:
- EGLNativeDisplayType mDisplay; ///< EGL display for rendering
- Dali::RenderSurfaceInterface::Type mSurfaceType; ///< The surface type
- GraphicsInterface* mGraphics; ///< The graphics interface
+ EGLNativeDisplayType mDisplay; ///< EGL display for rendering
+ Dali::RenderSurfaceInterface::Type mSurfaceType; ///< The surface type
+ GraphicsInterface* mGraphics; ///< The graphics interface
};
} // namespace Adaptor
-} // namespace internal
+} // namespace Internal
} // namespace Dali
#define DALI_INTERNAL_WINDOWSYSTEM_ANDROID_RENDER_SURFACE_FACTORY_ANDROID_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
class RenderSurfaceFactoryAndroid : public RenderSurfaceFactory
{
public:
- std::unique_ptr< WindowRenderSurface > CreateWindowRenderSurface( Dali::PositionSize positionSize, Any surface, bool isTransparent = false ) override;
+ std::unique_ptr<WindowRenderSurface> CreateWindowRenderSurface(Dali::PositionSize positionSize, Any surface, bool isTransparent = false) override;
- std::unique_ptr< PixmapRenderSurface > CreatePixmapRenderSurface( Dali::PositionSize positionSize, Any surface, bool isTransparent = false ) override;
+ std::unique_ptr<PixmapRenderSurface> CreatePixmapRenderSurface(Dali::PositionSize positionSize, Any surface, bool isTransparent = false) override;
- std::unique_ptr< NativeRenderSurface > CreateNativeRenderSurface( SurfaceSize surfaceSize, Any surface, bool isTransparent = false ) override;
+ std::unique_ptr<NativeRenderSurface> CreateNativeRenderSurface(SurfaceSize surfaceSize, Any surface, bool isTransparent = false) override;
};
} // namespace Adaptor
#define DALI_INTERNAL_WINDOWSYSTEM_ANDROID_WINDOW_BASE_ANDROID_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
/**
* WindowBaseAndroid class provides an WindowBase Android implementation.
*/
class WindowBaseAndroid : public WindowBase
{
public:
-
/**
* @brief Constructor
*/
- WindowBaseAndroid( PositionSize positionSize, Any surface, bool isTransparent );
+ WindowBaseAndroid(PositionSize positionSize, Any surface, bool isTransparent);
/**
* @brief Destructor
virtual ~WindowBaseAndroid();
public:
-
/**
* @brief Called when the window property is changed.
*/
- bool OnWindowPropertyChanged( void* data, int type, void* event );
+ bool OnWindowPropertyChanged(void* data, int type, void* event);
/**
* @brief Called when the window receives a delete request
/**
* @brief Called when the window gains focus.
*/
- void OnFocusIn( void* data, int type, void* event );
+ void OnFocusIn(void* data, int type, void* event);
/**
* @brief Called when the window loses focus.
*/
- void OnFocusOut( void* data, int type, void* event );
+ void OnFocusOut(void* data, int type, void* event);
/**
* @brief Called when the window is damaged.
*/
- void OnWindowDamaged( void* data, int type, void* event );
+ void OnWindowDamaged(void* data, int type, void* event);
/**
* @brief Called when a touch down is received.
*/
- void OnMouseButtonDown( void* data, int type, void* event );
+ void OnMouseButtonDown(void* data, int type, void* event);
/**
* @brief Called when a touch up is received.
*/
- void OnMouseButtonUp( void* data, int type, void* event );
+ void OnMouseButtonUp(void* data, int type, void* event);
/**
* @brief Called when a touch motion is received.
*/
- void OnMouseButtonMove( void* data, int type, void* event );
+ void OnMouseButtonMove(void* data, int type, void* event);
/**
* @brief Called when a mouse wheel is received.
*/
- void OnMouseWheel( void* data, int type, void* event );
+ void OnMouseWheel(void* data, int type, void* event);
/**
* @brief Called when a key down is received.
*/
- void OnKeyDown( void* data, int type, void* event );
+ void OnKeyDown(void* data, int type, void* event);
/**
* @brief Called when a key up is received.
*/
- void OnKeyUp( void* data, int type, void* event );
+ void OnKeyUp(void* data, int type, void* event);
/**
* @brief Called when the source window notifies us the content in clipboard is selected.
*/
- void OnSelectionClear( void* data, int type, void* event );
+ void OnSelectionClear(void* data, int type, void* event);
/**
* @brief Called when the source window sends us about the selected content.
*/
- void OnSelectionNotify( void* data, int type, void* event );
+ void OnSelectionNotify(void* data, int type, void* event);
public:
-
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetNativeWindow()
*/
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::CreateEglWindow()
*/
- EGLNativeWindowType CreateEglWindow( int width, int height ) override;
+ EGLNativeWindowType CreateEglWindow(int width, int height) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::DestroyEglWindow()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetEglWindowRotation()
*/
- void SetEglWindowRotation( int angle ) override;
+ void SetEglWindowRotation(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetEglWindowBufferTransform()
*/
- void SetEglWindowBufferTransform( int angle ) override;
+ void SetEglWindowBufferTransform(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetEglWindowTransform()
*/
- void SetEglWindowTransform( int angle ) override;
+ void SetEglWindowTransform(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::ResizeEglWindow()
*/
- void ResizeEglWindow( PositionSize positionSize ) override;
+ void ResizeEglWindow(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::IsEglWindowRotationSupported()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Move()
*/
- void Move( PositionSize positionSize ) override;
+ void Move(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Resize()
*/
- void Resize( PositionSize positionSize ) override;
+ void Resize(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::MoveResize()
*/
- void MoveResize( PositionSize positionSize ) override;
+ void MoveResize(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetClass()
*/
- void SetClass( const std::string& name, const std::string& className ) override;
+ void SetClass(const std::string& name, const std::string& className) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Raise()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetAvailableAnlges()
*/
- void SetAvailableAnlges( const std::vector< int >& angles ) override;
+ void SetAvailableAnlges(const std::vector<int>& angles) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetPreferredAngle()
*/
- void SetPreferredAngle( int angle ) override;
+ void SetPreferredAngle(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetAcceptFocus()
*/
- void SetAcceptFocus( bool accept ) override;
+ void SetAcceptFocus(bool accept) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Show()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetSupportedAuxiliaryHint()
*/
- std::string GetSupportedAuxiliaryHint( unsigned int index ) const override;
+ std::string GetSupportedAuxiliaryHint(unsigned int index) const override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::AddAuxiliaryHint()
*/
- unsigned int AddAuxiliaryHint( const std::string& hint, const std::string& value ) override;
+ unsigned int AddAuxiliaryHint(const std::string& hint, const std::string& value) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::RemoveAuxiliaryHint()
*/
- bool RemoveAuxiliaryHint( unsigned int id ) override;
+ bool RemoveAuxiliaryHint(unsigned int id) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetAuxiliaryHintValue()
*/
- bool SetAuxiliaryHintValue( unsigned int id, const std::string& value ) override;
+ bool SetAuxiliaryHintValue(unsigned int id, const std::string& value) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetAuxiliaryHintValue()
*/
- std::string GetAuxiliaryHintValue( unsigned int id ) const override;
+ std::string GetAuxiliaryHintValue(unsigned int id) const override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetAuxiliaryHintId()
*/
- unsigned int GetAuxiliaryHintId( const std::string& hint ) const override;
+ unsigned int GetAuxiliaryHintId(const std::string& hint) const override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetInputRegion()
*/
- void SetInputRegion( const Rect< int >& inputRegion ) override;
+ void SetInputRegion(const Rect<int>& inputRegion) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetType()
*/
- void SetType( Dali::WindowType type ) override;
+ void SetType(Dali::WindowType type) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetNotificationLevel()
*/
- bool SetNotificationLevel( Dali::WindowNotificationLevel level ) override;
+ bool SetNotificationLevel(Dali::WindowNotificationLevel level) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetNotificationLevel()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetOpaqueState()
*/
- void SetOpaqueState( bool opaque ) override;
+ void SetOpaqueState(bool opaque) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetScreenOffMode()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetBrightness()
*/
- bool SetBrightness( int brightness ) override;
+ bool SetBrightness(int brightness) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetBrightness()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GrabKey()
*/
- bool GrabKey( Dali::KEY key, KeyGrab::KeyGrabMode grabMode ) override;
+ bool GrabKey(Dali::KEY key, KeyGrab::KeyGrabMode grabMode) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::UngrabKey()
*/
- bool UngrabKey( Dali::KEY key ) override;
+ bool UngrabKey(Dali::KEY key) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GrabKeyList()
*/
- bool GrabKeyList( const Dali::Vector< Dali::KEY >& key, const Dali::Vector< KeyGrab::KeyGrabMode >& grabMode, Dali::Vector< bool >& result ) override;
+ bool GrabKeyList(const Dali::Vector<Dali::KEY>& key, const Dali::Vector<KeyGrab::KeyGrabMode>& grabMode, Dali::Vector<bool>& result) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::UngrabKeyList()
*/
- bool UngrabKeyList( const Dali::Vector< Dali::KEY >& key, Dali::Vector< bool >& result ) override;
+ bool UngrabKeyList(const Dali::Vector<Dali::KEY>& key, Dali::Vector<bool>& result) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetDpi()
*/
- void GetDpi( unsigned int& dpiHorizontal, unsigned int& dpiVertical ) override;
+ void GetDpi(unsigned int& dpiHorizontal, unsigned int& dpiVertical) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetScreenRotationAngle()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetWindowRotationAngle()
*/
- void SetWindowRotationAngle( int degree ) override;
+ void SetWindowRotationAngle(int degree) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::WindowRotationCompleted()
*/
- void WindowRotationCompleted( int degree, int width, int height ) override;
+ void WindowRotationCompleted(int degree, int width, int height) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetTransparency()
*/
- void SetTransparency( bool transparent ) override;
+ void SetTransparency(bool transparent) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetParent()
*/
- void SetParent( WindowBase* parentWinBase ) override;
+ void SetParent(WindowBase* parentWinBase) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::CreateFrameRenderedSyncFence()
int GetOrientation() const override;
private:
-
/**
* Second stage initialization
*/
- void Initialize( PositionSize positionSize, Any surface, bool isTransparent );
+ void Initialize(PositionSize positionSize, Any surface, bool isTransparent);
/**
* @brief Get the surface id if the surface parameter is not empty
* @param surface Any containing a surface id, or can be empty
* @return surface id, or zero if surface is empty
*/
- unsigned int GetSurfaceId( Any surface ) const;
+ unsigned int GetSurfaceId(Any surface) const;
protected:
-
// Undefined
WindowBaseAndroid(const WindowBaseAndroid&) = delete;
WindowBaseAndroid& operator=(const WindowBaseAndroid& rhs) = delete;
private:
-
- ANativeWindow* mWindow; ///< Native window handle
- bool mOwnSurface:1; ///< Whether we own the surface (responsible for deleting it)
- bool mIsTransparent; ///< Whether the window is transparent (32 bit or 24 bit)
- bool mRotationAppSet:1;
+ ANativeWindow* mWindow; ///< Native window handle
+ bool mOwnSurface : 1; ///< Whether we own the surface (responsible for deleting it)
+ bool mIsTransparent; ///< Whether the window is transparent (32 bit or 24 bit)
+ bool mRotationAppSet : 1;
};
} // namespace Adaptor
-} // namespace internal
+} // namespace Internal
} // namespace Dali
#define DALI_INTERNAL_WINDOWSYSTEM_ANDROID_WINDOW_FACTORY_ANDROID_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
class WindowFactoryAndroid : public WindowFactory
{
public:
- std::unique_ptr< WindowBase > CreateWindowBase( Dali::PositionSize positionSize, Any surface, bool isTransparent ) override;
+ std::unique_ptr<WindowBase> CreateWindowBase(Dali::PositionSize positionSize, Any surface, bool isTransparent) override;
};
} // namespace Adaptor
#define DALI_INTERNAL_DAMAGE_OBSERVER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
typedef Rect<int> DamageArea;
/**
class DamageObserver
{
public:
-
/**
* Deriving classes should override this to be notified when we receive a damage event.
* @param[in] area The area that has been damaged.
*/
- virtual void OnDamaged( const DamageArea& area ) = 0;
+ virtual void OnDamaged(const DamageArea& area) = 0;
protected:
-
/**
* Protected Constructor.
*/
#define DALI_INTERNAL_WINDOWSYSTEM_COMMON_DISPLAY_CONNECTION_FACTORY_H
/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
class DisplayConnection;
class DisplayConnectionFactory
{
public:
-
- DisplayConnectionFactory() = default;
+ DisplayConnectionFactory() = default;
virtual ~DisplayConnectionFactory() = default;
virtual std::unique_ptr<Dali::Internal::Adaptor::DisplayConnection> CreateDisplayConnection() = 0;
-
};
extern std::unique_ptr<DisplayConnectionFactory> GetDisplayConnectionFactory();
#define DALI_INTERNAL_WINDOWSYSTEM_COMMON_DISPLAY_CONNECTION_IMPL_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// INTERNAL INCLUDES
+#include <dali/internal/graphics/gles/egl-implementation.h>
#include <dali/internal/window-system/common/display-connection.h>
#include <dali/public-api/object/base-object.h>
-#include <dali/internal/graphics/gles/egl-implementation.h>
-
namespace Dali
{
-
class DisplayConnection;
namespace Internal
{
namespace Adaptor
{
-
/**
* DisplayConnection implementation
*/
class DisplayConnection : public Dali::BaseObject
{
public:
-
/**
* @brief Default constructor
*/
static DisplayConnection* New();
public:
-
/**
* @copydoc Dali::DisplayConnection::GetDisplay
*/
* Sets the render surface type
* @param[in] type The render surface type
*/
- virtual void SetSurfaceType( Dali::RenderSurfaceInterface::Type type ) = 0;
+ virtual void SetSurfaceType(Dali::RenderSurfaceInterface::Type type) = 0;
/**
* Sets the graphics interface
* @param[in] graphics The graphics interface
*/
- virtual void SetGraphicsInterface( GraphicsInterface& graphics ) = 0;
+ virtual void SetGraphicsInterface(GraphicsInterface& graphics) = 0;
public:
-
/**
* Destructor
*/
~DisplayConnection() override = default;
protected:
-
// Undefined
DisplayConnection(const DisplayConnection&) = delete;
// Undefined
DisplayConnection& operator=(const DisplayConnection& rhs) = delete;
-
};
} // namespace Adaptor
-} // namespace internal
+} // namespace Internal
} // namespace Dali
#define DALI_INTERNAL_WINDOWSYSTEM_COMMON_DISPLAY_CONNECTION_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/integration-api/adaptor-framework/render-surface-interface.h>
#include <dali/internal/graphics/common/graphics-interface.h>
-
namespace Dali
{
namespace Internal
{
class DisplayConnection;
}
-}
+} // namespace Internal
class DisplayConnection
{
public:
-
/**
* @brief Create an initialized DisplayConnection.
*
* @param[in] graphics The abstracted graphics interface
* @return A handle to a newly allocated DisplayConnection resource.
*/
- static DisplayConnection* New( Dali::Internal::Adaptor::GraphicsInterface& graphics );
+ static DisplayConnection* New(Dali::Internal::Adaptor::GraphicsInterface& graphics);
/**
* @brief Create an initialized DisplayConnection.
* @param[in] type Render surface type
* @return A handle to a newly allocated DisplayConnection resource.
*/
- static DisplayConnection* New( Dali::Internal::Adaptor::GraphicsInterface& graphics, Dali::RenderSurfaceInterface::Type type );
+ static DisplayConnection* New(Dali::Internal::Adaptor::GraphicsInterface& graphics, Dali::RenderSurfaceInterface::Type type);
/**
* @brief Create a DisplayConnection handle; this can be initialised with DisplayConnection::New().
bool Initialize();
public:
-
/**
* @brief This constructor is used by DisplayConnection New() methods.
*
explicit DALI_INTERNAL DisplayConnection(Internal::Adaptor::DisplayConnection* impl);
private:
-
std::unique_ptr<Internal::Adaptor::DisplayConnection> mImpl;
};
-}
+} // namespace Dali
#endif // DALI_INTERNAL_WINDOWSYSTEM_COMMON_DISPLAY_CONNECTION_H
#define DALI_INTERNAL_WINDOWSYSTEM_COMMON_DISPLAY_UTILs_H
/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Utils
{
-
template<typename T, typename... Args>
std::unique_ptr<T> MakeUnique(Args&&... args)
{
#define DALI_INTERNAL_EVENT_HANDLER_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <cstdint> // uint32_t
#include <dali/public-api/common/intrusive-ptr.h>
+#include <cstdint> // uint32_t
#include <dali/devel-api/adaptor-framework/clipboard.h>
#include <dali/devel-api/adaptor-framework/style-monitor.h>
namespace Dali
{
-
namespace Integration
{
-
struct Point;
struct KeyEvent;
struct WheelEvent;
-}
+} // namespace Integration
namespace Internal
{
-
namespace Adaptor
{
-
class StyleMonitor;
class WindowRenderSurface;
class EventHandler : public ConnectionTracker, public Dali::RefObject
{
public:
-
/**
* The observer can be overridden in order to listen to the events.
*/
class Observer
{
public:
-
/**
* Deriving classes should override this to be notified when we receive a touch point event.
* @param[in] point The touch point
* @param[in] timeStamp The time stamp
*/
- virtual void OnTouchPoint( Dali::Integration::Point& point, int timeStamp ) = 0;
+ virtual void OnTouchPoint(Dali::Integration::Point& point, int timeStamp) = 0;
/**
* Deriving classes should override this to be notified when we receive a wheel event.
* @param[in] wheelEvent The wheel event
*/
- virtual void OnWheelEvent( Dali::Integration::WheelEvent& wheelEvent ) = 0;
+ virtual void OnWheelEvent(Dali::Integration::WheelEvent& wheelEvent) = 0;
/**
* Deriving classes should override this to be notified when we receive a key event.
* @param[in] keyEvent The key event holding the key information.
*/
- virtual void OnKeyEvent( Dali::Integration::KeyEvent& keyEvent ) = 0;
+ virtual void OnKeyEvent(Dali::Integration::KeyEvent& keyEvent) = 0;
/**
* Deriving classes should override this to be notified when the window is rotated.
* @param[in] rotation The rotation event.
*/
- virtual void OnRotation( const RotationEvent& rotation ) = 0;
+ virtual void OnRotation(const RotationEvent& rotation) = 0;
protected:
-
/**
* Protected Constructor.
*/
- Observer() {}
+ Observer()
+ {
+ }
/**
* Protected virtual destructor.
*/
- virtual ~Observer() {}
+ virtual ~Observer()
+ {
+ }
};
public:
-
/**
* Constructor.
* @param[in] windowBase The window base to be handled
* @param[in] damageObserver The damage observer (to pass damage events to).
*/
- EventHandler( WindowBase* windowBase, DamageObserver& damageObserver );
+ EventHandler(WindowBase* windowBase, DamageObserver& damageObserver);
/**
* Destructor.
* Adds an observer so that we can observe the events.
* @param[in] observer The observer.
*/
- void AddObserver( Observer& observer );
+ void AddObserver(Observer& observer);
/**
* Removes the observer from the EventHandler.
* @param[in] observer The observer to remove.
* @note Observers should remove themselves when they are destroyed.
*/
- void RemoveObserver( Observer& observer );
+ void RemoveObserver(Observer& observer);
private:
-
/**
* Send a style change event to the style monitor.
* @param[in] styleChange The style that has changed.
*/
- void SendEvent( StyleChange::Type styleChange );
+ void SendEvent(StyleChange::Type styleChange);
/**
* Send a window damage event to the observer.
* @param[in] area Damaged area.
*/
- void SendEvent( const DamageArea& area );
+ void SendEvent(const DamageArea& area);
/**
* Called when a touch event is received.
*/
- void OnTouchEvent( Integration::Point& point, uint32_t timeStamp );
+ void OnTouchEvent(Integration::Point& point, uint32_t timeStamp);
/**
* Called when a mouse wheel is received.
*/
- void OnWheelEvent( Integration::WheelEvent& wheelEvent );
+ void OnWheelEvent(Integration::WheelEvent& wheelEvent);
/**
* Called when a key event is received.
*/
- void OnKeyEvent( Integration::KeyEvent& keyEvent );
+ void OnKeyEvent(Integration::KeyEvent& keyEvent);
/**
* Called when the window focus is changed.
*/
- void OnFocusChanged( bool focusIn );
+ void OnFocusChanged(bool focusIn);
/**
* Called when the window is rotated.
* @param[in] event The rotation event
*/
- void OnRotation( const RotationEvent& event );
+ void OnRotation(const RotationEvent& event);
/**
* Called when the window is damaged.
*/
- void OnWindowDamaged( const DamageArea& area );
+ void OnWindowDamaged(const DamageArea& area);
/**
* Called when the source window notifies us the content in clipboard is selected.
*/
- void OnSelectionDataSend( void* event );
+ void OnSelectionDataSend(void* event);
/**
* Called when the source window sends us about the selected content.
*/
- void OnSelectionDataReceived( void* event );
+ void OnSelectionDataReceived(void* event);
/**
* Called when the style is changed.
*/
- void OnStyleChanged( StyleChange::Type styleChange );
+ void OnStyleChanged(StyleChange::Type styleChange);
private:
-
// Undefined
- EventHandler( const EventHandler& eventHandler );
+ EventHandler(const EventHandler& eventHandler);
// Undefined
- EventHandler& operator=( const EventHandler& eventHandler );
+ EventHandler& operator=(const EventHandler& eventHandler);
private:
-
- Dali::StyleMonitor mStyleMonitor; ///< Handle to the style monitor, set on construction, to send font size and font change events to.
- DamageObserver& mDamageObserver; ///< Reference to the DamageObserver, set on construction, to sent damage events to.
+ Dali::StyleMonitor mStyleMonitor; ///< Handle to the style monitor, set on construction, to send font size and font change events to.
+ DamageObserver& mDamageObserver; ///< Reference to the DamageObserver, set on construction, to sent damage events to.
Dali::ClipboardEventNotifier mClipboardEventNotifier; ///< Pointer to the clipboard event notifier
- Dali::Clipboard mClipboard;///< Pointer to the clipboard
+ Dali::Clipboard mClipboard; ///< Pointer to the clipboard
using ObserverContainer = std::vector<Observer*>;
- ObserverContainer mObservers; ///< A list of event observer pointers
+ ObserverContainer mObservers; ///< A list of event observer pointers
bool mPaused; ///< The paused state of the adaptor.
};
#define DALI_INTERNAL_ORIENTATION_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <cmath>
#include <dali/public-api/common/constants.h>
#include <dali/public-api/object/base-object.h>
+#include <cmath>
// INTERNAL INCLUDES
#include <dali/devel-api/adaptor-framework/orientation.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
class Window;
class Orientation : public BaseObject
{
public:
-
typedef Dali::Orientation::OrientationSignalType OrientationSignalType;
static Orientation* New(Window* window);
~Orientation() override;
public:
-
/**
* Returns the actual orientation in degrees
* @return The device's orientation
* Called by the Window when orientation is changed
* @param[in] rotation The rotation event
*/
- void OnOrientationChange( const RotationEvent& rotation );
+ void OnOrientationChange(const RotationEvent& rotation);
public: // Signals
-
/**
* @copydoc Dali::Orientation::ChangedSignal()
*/
OrientationSignalType& ChangedSignal();
private:
-
// Undefined
Orientation(const Orientation&);
Orientation& operator=(Orientation&);
private:
-
- Window* mWindow;
+ Window* mWindow;
OrientationSignalType mChangedSignal;
- int mOrientation;
- int mWindowWidth;
- int mWindowHeight;
+ int mOrientation;
+ int mWindowWidth;
+ int mWindowHeight;
};
-inline Orientation& GetImplementation (Dali::Orientation& orientation)
+inline Orientation& GetImplementation(Dali::Orientation& orientation)
{
DALI_ASSERT_ALWAYS(orientation && "Orientation handle is empty");
#define DALI_INTERNAL_WINDOWSYSTEM_COMMON_PIXMAP_RENDER_SURFACE_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
class TriggerEventInterface;
namespace Internal
{
namespace Adaptor
{
-
/**
* Pixmap interface of render surface.
*/
class PixmapRenderSurface : public Dali::RenderSurfaceInterface
{
public:
-
/**
* @brief Default constructor
*/
virtual ~PixmapRenderSurface() = default;
public: // API
-
/**
* @brief Get the render surface the adaptor is using to render to.
* @return reference to current render surface
* @brief Sets the render notification trigger to call when render thread is completed a frame
* @param renderNotification to use
*/
- virtual void SetRenderNotification( TriggerEventInterface* renderNotification ) = 0;
+ virtual void SetRenderNotification(TriggerEventInterface* renderNotification) = 0;
/**
* @copydoc Dali::RenderSurfaceInterface::GetDepthBufferRequired()
}
private:
-
/**
* Second stage construction
*/
- virtual void Initialize( Any surface ) = 0;
+ virtual void Initialize(Any surface) = 0;
/**
* @brief Create a renderable
* @brief Use an existing render surface
* @param surfaceId the id of the surface
*/
- virtual void UseExistingRenderable( unsigned int surfaceId ) = 0;
+ virtual void UseExistingRenderable(unsigned int surfaceId) = 0;
protected:
-
// Undefined
PixmapRenderSurface(const PixmapRenderSurface&) = delete;
// Undefined
PixmapRenderSurface& operator=(const PixmapRenderSurface& rhs) = delete;
-
};
} // namespace Adaptor
-} // namespace internal
+} // namespace Internal
} // namespace Dali
#define DALI_INTERNAL_WINDOWSYSTEM_COMMON_RENDER_SURFACE_FACTORY_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
class NativeRenderSurface;
namespace Internal
{
namespace Adaptor
{
-
class WindowRenderSurface;
class PixmapRenderSurface;
class RenderSurfaceFactory
{
public:
-
- RenderSurfaceFactory() = default;
+ RenderSurfaceFactory() = default;
virtual ~RenderSurfaceFactory() = default;
- virtual std::unique_ptr< WindowRenderSurface > CreateWindowRenderSurface( Dali::PositionSize positionSize, Any surface, bool isTransparent = false ) = 0;
+ virtual std::unique_ptr<WindowRenderSurface> CreateWindowRenderSurface(Dali::PositionSize positionSize, Any surface, bool isTransparent = false) = 0;
- virtual std::unique_ptr< PixmapRenderSurface > CreatePixmapRenderSurface( Dali::PositionSize positionSize, Any surface, bool isTransparent = false ) = 0;
+ virtual std::unique_ptr<PixmapRenderSurface> CreatePixmapRenderSurface(Dali::PositionSize positionSize, Any surface, bool isTransparent = false) = 0;
- virtual std::unique_ptr< NativeRenderSurface > CreateNativeRenderSurface( SurfaceSize surfaceSize, Any surface, bool isTransparent = false ) = 0;
+ virtual std::unique_ptr<NativeRenderSurface> CreateNativeRenderSurface(SurfaceSize surfaceSize, Any surface, bool isTransparent = false) = 0;
};
-extern std::unique_ptr< RenderSurfaceFactory > GetRenderSurfaceFactory();
+extern std::unique_ptr<RenderSurfaceFactory> GetRenderSurfaceFactory();
} // namespace Adaptor
} // namespace Internal
#define DALI_INTERNAL_ROTATION_EVENT_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
struct RotationEvent
{
int angle; ///< one of 0, 90, 180, 270
#define DALI_INTERNAL_WINDOWSYSTEM_COMMON_WINDOW_BASE_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/integration-api/events/key-event-integ.h>
#include <dali/integration-api/events/point.h>
#include <dali/integration-api/events/wheel-event-integ.h>
+#include <cstdint>
#include <string>
#include <vector>
-#include <cstdint>
// INTERNAL INCLUDES
-#include <dali/public-api/adaptor-framework/window.h>
-#include <dali/public-api/adaptor-framework/key-grab.h>
-#include <dali/public-api/adaptor-framework/style-change.h>
-#include <dali/public-api/adaptor-framework/window-enumerations.h>
#include <dali/devel-api/adaptor-framework/window-devel.h>
+#include <dali/internal/graphics/gles/egl-implementation.h>
#include <dali/internal/window-system/common/damage-observer.h>
#include <dali/internal/window-system/common/rotation-event.h>
-#include <dali/internal/graphics/gles/egl-implementation.h>
+#include <dali/public-api/adaptor-framework/key-grab.h>
+#include <dali/public-api/adaptor-framework/style-change.h>
+#include <dali/public-api/adaptor-framework/window-enumerations.h>
+#include <dali/public-api/adaptor-framework/window.h>
namespace Dali
{
{
namespace Adaptor
{
-
/**
* WindowBase interface
*/
class WindowBase
{
public:
-
/**
* @brief Struct used to retrieve accessibility information
*/
};
// Window
- typedef Signal< void ( bool ) > IconifySignalType;
- typedef Signal< void ( bool ) > FocusSignalType;
- typedef Signal< void ( ) > OutputSignalType;
- typedef Signal< void ( ) > DeleteSignalType;
- typedef Signal< void ( const DamageArea& ) > DamageSignalType;
- typedef Signal< void ( const RotationEvent& ) > RotationSignalType;
- typedef Signal< void ( WindowEffectState, WindowEffectType ) > TransitionEffectEventSignalType;
- typedef Signal< void ( ) > KeyboardRepeatSettingsChangedSignalType;
- typedef Signal< void ( ) > WindowRedrawRequestSignalType;
+ typedef Signal<void(bool)> IconifySignalType;
+ typedef Signal<void(bool)> FocusSignalType;
+ typedef Signal<void()> OutputSignalType;
+ typedef Signal<void()> DeleteSignalType;
+ typedef Signal<void(const DamageArea&)> DamageSignalType;
+ typedef Signal<void(const RotationEvent&)> RotationSignalType;
+ typedef Signal<void(WindowEffectState, WindowEffectType)> TransitionEffectEventSignalType;
+ typedef Signal<void()> KeyboardRepeatSettingsChangedSignalType;
+ typedef Signal<void()> WindowRedrawRequestSignalType;
// Input events
- typedef Signal< void ( Integration::Point&, uint32_t ) > TouchEventSignalType;
- typedef Signal< void ( Integration::WheelEvent& ) > WheelEventSignalType;
- typedef Signal< void( Integration::KeyEvent& ) > KeyEventSignalType;
+ typedef Signal<void(Integration::Point&, uint32_t)> TouchEventSignalType;
+ typedef Signal<void(Integration::WheelEvent&)> WheelEventSignalType;
+ typedef Signal<void(Integration::KeyEvent&)> KeyEventSignalType;
// Clipboard
- typedef Signal< void ( void* ) > SelectionSignalType;
+ typedef Signal<void(void*)> SelectionSignalType;
// Accessibility
- typedef Signal< void ( StyleChange::Type ) > StyleSignalType;
- typedef Signal< void ( const AccessibilityInfo& ) > AccessibilitySignalType;
+ typedef Signal<void(StyleChange::Type)> StyleSignalType;
+ typedef Signal<void(const AccessibilityInfo&)> AccessibilitySignalType;
/**
* @brief Default constructor
virtual ~WindowBase();
public:
-
/**
* @brief Get the native window handle
* @return The native window handle
/**
* @brief Create the egl window
*/
- virtual EGLNativeWindowType CreateEglWindow( int width, int height ) = 0;
+ virtual EGLNativeWindowType CreateEglWindow(int width, int height) = 0;
/**
* @brief Destroy the egl window
/**
* @brief Set the egl window rotation
*/
- virtual void SetEglWindowRotation( int angle ) = 0;
+ virtual void SetEglWindowRotation(int angle) = 0;
/**
* @brief Set the egl window buffer transform
*/
- virtual void SetEglWindowBufferTransform( int angle ) = 0;
+ virtual void SetEglWindowBufferTransform(int angle) = 0;
/**
* @brief Set the egl window transform
*/
- virtual void SetEglWindowTransform( int angle ) = 0;
+ virtual void SetEglWindowTransform(int angle) = 0;
/**
* @brief Resize the egl window
*/
- virtual void ResizeEglWindow( Dali::PositionSize positionSize ) = 0;
+ virtual void ResizeEglWindow(Dali::PositionSize positionSize) = 0;
/**
* @brief Returns whether the egl window support rotation or not
/**
* @brief Move the window
*/
- virtual void Move( Dali::PositionSize positionSize ) = 0;
+ virtual void Move(Dali::PositionSize positionSize) = 0;
/**
* @brief Resize the window
*/
- virtual void Resize( Dali::PositionSize positionSize ) = 0;
+ virtual void Resize(Dali::PositionSize positionSize) = 0;
/**
* @brief Move and resize the window
*/
- virtual void MoveResize( Dali::PositionSize positionSize ) = 0;
+ virtual void MoveResize(Dali::PositionSize positionSize) = 0;
/**
* @copydoc Dali::Window::SetClass()
*/
- virtual void SetClass( const std::string& name, const std::string& className ) = 0;
+ virtual void SetClass(const std::string& name, const std::string& className) = 0;
/**
* @copydoc Dali::Window::Raise()
/**
* @copydoc Dali::Window::SetAvailableOrientations()
*/
- virtual void SetAvailableAnlges( const std::vector< int >& angles ) = 0;
+ virtual void SetAvailableAnlges(const std::vector<int>& angles) = 0;
/**
* @copydoc Dali::Window::SetPreferredOrientation()
*/
- virtual void SetPreferredAngle( int angle ) = 0;
+ virtual void SetPreferredAngle(int angle) = 0;
/**
* @copydoc Dali::Window::SetAcceptFocus()
*/
- virtual void SetAcceptFocus( bool accept ) = 0;
+ virtual void SetAcceptFocus(bool accept) = 0;
/**
* @copydoc Dali::Window::Show()
/**
* @copydoc Dali::Window::GetSupportedAuxiliaryHint()
*/
- virtual std::string GetSupportedAuxiliaryHint( unsigned int index ) const = 0;
+ virtual std::string GetSupportedAuxiliaryHint(unsigned int index) const = 0;
/**
* @copydoc Dali::Window::AddAuxiliaryHint()
*/
- virtual unsigned int AddAuxiliaryHint( const std::string& hint, const std::string& value ) = 0;
+ virtual unsigned int AddAuxiliaryHint(const std::string& hint, const std::string& value) = 0;
/**
* @copydoc Dali::Window::RemoveAuxiliaryHint()
*/
- virtual bool RemoveAuxiliaryHint( unsigned int id ) = 0;
+ virtual bool RemoveAuxiliaryHint(unsigned int id) = 0;
/**
* @copydoc Dali::Window::SetAuxiliaryHintValue()
*/
- virtual bool SetAuxiliaryHintValue( unsigned int id, const std::string& value ) = 0;
+ virtual bool SetAuxiliaryHintValue(unsigned int id, const std::string& value) = 0;
/**
* @copydoc Dali::Window::GetAuxiliaryHintValue()
*/
- virtual std::string GetAuxiliaryHintValue( unsigned int id ) const = 0;
+ virtual std::string GetAuxiliaryHintValue(unsigned int id) const = 0;
/**
* @copydoc Dali::Window::GetAuxiliaryHintId()
*/
- virtual unsigned int GetAuxiliaryHintId( const std::string& hint ) const = 0;
+ virtual unsigned int GetAuxiliaryHintId(const std::string& hint) const = 0;
/**
* @copydoc Dali::Window::SetInputRegion()
*/
- virtual void SetInputRegion( const Rect< int >& inputRegion ) = 0;
+ virtual void SetInputRegion(const Rect<int>& inputRegion) = 0;
/**
* @copydoc Dali::Window::SetType()
*/
- virtual void SetType( Dali::WindowType type ) = 0;
+ virtual void SetType(Dali::WindowType type) = 0;
/**
* @copydoc Dali::Window::SetNotificationLevel()
*/
- virtual bool SetNotificationLevel( Dali::WindowNotificationLevel level ) = 0;
+ virtual bool SetNotificationLevel(Dali::WindowNotificationLevel level) = 0;
/**
* @copydoc Dali::Window::GetNotificationLevel()
/**
* @copydoc Dali::Window::SetOpaqueState()
*/
- virtual void SetOpaqueState( bool opaque ) = 0;
+ virtual void SetOpaqueState(bool opaque) = 0;
/**
* @copydoc Dali::Window::SetScreenOffMode()
/**
* @copydoc Dali::Window::SetBrightness()
*/
- virtual bool SetBrightness( int brightness ) = 0;
+ virtual bool SetBrightness(int brightness) = 0;
/**
* @copydoc Dali::Window::GetBrightness()
/**
* @copydoc Dali::KeyGrab::GrabKey()
*/
- virtual bool GrabKey( Dali::KEY key, KeyGrab::KeyGrabMode grabMode ) = 0;
+ virtual bool GrabKey(Dali::KEY key, KeyGrab::KeyGrabMode grabMode) = 0;
/**
* @copydoc Dali::KeyGrab::UngrabKey()
*/
- virtual bool UngrabKey( Dali::KEY key ) = 0;
+ virtual bool UngrabKey(Dali::KEY key) = 0;
/**
* @copydoc Dali::KeyGrab::GrabKeyList()
*/
- virtual bool GrabKeyList( const Dali::Vector< Dali::KEY >& key, const Dali::Vector< KeyGrab::KeyGrabMode >& grabMode, Dali::Vector< bool >& result ) = 0;
+ virtual bool GrabKeyList(const Dali::Vector<Dali::KEY>& key, const Dali::Vector<KeyGrab::KeyGrabMode>& grabMode, Dali::Vector<bool>& result) = 0;
/**
* @copydoc Dali::KeyGrab::UngrabKeyList()
*/
- virtual bool UngrabKeyList( const Dali::Vector< Dali::KEY >& key, Dali::Vector< bool >& result ) = 0;
+ virtual bool UngrabKeyList(const Dali::Vector<Dali::KEY>& key, Dali::Vector<bool>& result) = 0;
/**
* @brief Get DPI
* @param[out] dpiHorizontal set to the horizontal dpi
* @param[out] dpiVertical set to the vertical dpi
*/
- virtual void GetDpi( unsigned int& dpiHorizontal, unsigned int& dpiVertical ) = 0;
+ virtual void GetDpi(unsigned int& dpiHorizontal, unsigned int& dpiVertical) = 0;
/**
* @brief Return the orientation of the surface.
/**
* @brief Set the rotation angle of the window
*/
- virtual void SetWindowRotationAngle( int degree ) = 0;
+ virtual void SetWindowRotationAngle(int degree) = 0;
/**
* @brief Inform the window rotation is completed
*/
- virtual void WindowRotationCompleted( int degree, int width, int height ) = 0;
+ virtual void WindowRotationCompleted(int degree, int width, int height) = 0;
/**
* @copydoc Dali::Window::SetTransparency()
*/
- virtual void SetTransparency( bool transparent ) = 0;
+ virtual void SetTransparency(bool transparent) = 0;
/**
* @copydoc Dali::Window::SetParent()
*/
- virtual void SetParent( WindowBase* parentWinBase ) = 0;
+ virtual void SetParent(WindowBase* parentWinBase) = 0;
/**
* @brief Create a sync fence that can tell the frame is rendered by the graphics driver.
/**
* @brief This signal is emitted when the window becomes iconified or deiconified.
*/
- IconifySignalType& IconifyChangedSignal();
+ IconifySignalType& IconifyChangedSignal();
/**
* @brief This signal is emitted when the window focus is changed.
WindowRedrawRequestSignalType& WindowRedrawRequestSignal();
protected:
-
// Undefined
WindowBase(const WindowBase&) = delete;
WindowBase& operator=(const WindowBase& rhs) = delete;
protected:
-
IconifySignalType mIconifyChangedSignal;
FocusSignalType mFocusChangedSignal;
OutputSignalType mOutputTransformedSignal;
} // namespace Adaptor
-} // namespace internal
+} // namespace Internal
} // namespace Dali
#define DALI_INTERNAL_BASE_WINDOW_EVENT_INTERFACE_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <dali/public-api/events/key-event.h>
-#include <dali/public-api/events/wheel-event.h>
#include <dali/integration-api/events/key-event-integ.h>
#include <dali/integration-api/events/point.h>
+#include <dali/public-api/events/key-event.h>
+#include <dali/public-api/events/wheel-event.h>
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* @brief Abstract interface for handling DALi events received from the native window system
*
*/
class WindowEventInterface
{
-
public:
-
/**
* @brief Touch Event callback
* @param[in] point touch point
* @param[in] timeStamp time stamp
*/
- virtual void TouchEvent( Dali::Integration::Point& point, unsigned long timeStamp ) = 0;
+ virtual void TouchEvent(Dali::Integration::Point& point, unsigned long timeStamp) = 0;
/**
* @brief Key Event callback
* @param[in] keyEvent key event
*/
- virtual void KeyEvent( Dali::Integration::KeyEvent& keyEvent ) = 0;
+ virtual void KeyEvent(Dali::Integration::KeyEvent& keyEvent) = 0;
/**
* @brief Wheel Event callback
* @param[in] wheelEvent wheel event
*/
- virtual void WheelEvent( Dali::WheelEvent& wheelEvent ) = 0;
+ virtual void WheelEvent(Dali::WheelEvent& wheelEvent) = 0;
/**
* @brief Window damage callback
* @param[in] damageArea Window damage area
*/
- virtual void DamageEvent( Dali::Rect<int>& damageArea ) = 0;
+ virtual void DamageEvent(Dali::Rect<int>& damageArea) = 0;
/**
* @brief Window Focused
virtual void WindowFocusOut() = 0;
protected:
-
/**
* @brief Constructor
*/
}
// Undefined copy constructor.
- WindowEventInterface( const WindowEventInterface& );
+ WindowEventInterface(const WindowEventInterface&);
// Undefined assignment operator.
- WindowEventInterface& operator=( const WindowEventInterface& );
-
+ WindowEventInterface& operator=(const WindowEventInterface&);
};
} // namespace Adaptor
#define DALI_INTERNAL_WINDOWSYSTEM_COMMON_WINDOW_FACTORY_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
class Adaptor;
class WindowBase;
class WindowFactory
{
public:
-
- WindowFactory() = default;
+ WindowFactory() = default;
virtual ~WindowFactory() = default;
- virtual std::unique_ptr< WindowBase > CreateWindowBase( Dali::PositionSize positionSize, Any surface, bool isTransparent ) = 0;
+ virtual std::unique_ptr<WindowBase> CreateWindowBase(Dali::PositionSize positionSize, Any surface, bool isTransparent) = 0;
};
-extern std::unique_ptr< WindowFactory > GetWindowFactory();
+extern std::unique_ptr<WindowFactory> GetWindowFactory();
} // namespace Adaptor
} // namespace Internal
#define DALI_INTERNAL_WINDOWSYSTEM_COMMON_WINDOW_IMPL_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <dali/public-api/object/ref-object.h>
-#include <dali/public-api/object/base-object.h>
#include <dali/public-api/actors/layer.h>
-#include <dali/public-api/render-tasks/render-task-list.h>
-#include <dali/public-api/object/property-array.h>
#include <dali/public-api/adaptor-framework/window-enumerations.h>
+#include <dali/public-api/object/base-object.h>
+#include <dali/public-api/object/property-array.h>
+#include <dali/public-api/object/ref-object.h>
+#include <dali/public-api/render-tasks/render-task-list.h>
// INTERNAL INCLUDES
-#include <dali/public-api/adaptor-framework/window.h>
-#include <dali/public-api/adaptor-framework/key-grab.h>
#include <dali/devel-api/adaptor-framework/window-devel.h>
#include <dali/integration-api/adaptor-framework/scene-holder-impl.h>
#include <dali/internal/adaptor/common/adaptor-impl.h>
#include <dali/internal/window-system/common/event-handler.h>
+#include <dali/public-api/adaptor-framework/key-grab.h>
+#include <dali/public-api/adaptor-framework/window.h>
namespace Dali
{
class WindowBase;
class Window;
-using WindowPtr = IntrusivePtr< Window >;
-using OrientationPtr = IntrusivePtr< Orientation >;
-using EventHandlerPtr = IntrusivePtr< EventHandler >;
+using WindowPtr = IntrusivePtr<Window>;
+using OrientationPtr = IntrusivePtr<Orientation>;
+using EventHandlerPtr = IntrusivePtr<EventHandler>;
/**
* Window provides a surface to render onto with orientation & indicator properties.
class Window : public Dali::Internal::Adaptor::SceneHolder, public EventHandler::Observer, public ConnectionTracker
{
public:
- typedef Dali::Window::FocusChangeSignalType FocusChangeSignalType;
- typedef Dali::Window::ResizeSignalType ResizeSignalType;
- typedef Dali::DevelWindow::VisibilityChangedSignalType VisibilityChangedSignalType;
- typedef Dali::DevelWindow::TransitionEffectEventSignalType TransitionEffectEventSignalType;
+ typedef Dali::Window::FocusChangeSignalType FocusChangeSignalType;
+ typedef Dali::Window::ResizeSignalType ResizeSignalType;
+ typedef Dali::DevelWindow::VisibilityChangedSignalType VisibilityChangedSignalType;
+ typedef Dali::DevelWindow::TransitionEffectEventSignalType TransitionEffectEventSignalType;
typedef Dali::DevelWindow::KeyboardRepeatSettingsChangedSignalType KeyboardRepeatSettingsChangedSignalType;
- typedef Signal< void () > SignalType;
+ typedef Signal<void()> SignalType;
/**
* @brief Create a new Window. This should only be called once by the Application class
/**
* @copydoc Dali::Window::SetClass()
*/
- void SetClass( std::string name, std::string className );
+ void SetClass(std::string name, std::string className);
/**
* @brief Gets the window class name.
/**
* @copydoc Dali::Window::GetLayer()
*/
- Dali::Layer GetLayer( uint32_t depth ) const;
+ Dali::Layer GetLayer(uint32_t depth) const;
/**
* @copydoc Dali::DevelWindow::GetRenderTaskList()
/**
* @copydoc Dali::Window::SetAcceptFocus()
*/
- void SetAcceptFocus( bool accept );
+ void SetAcceptFocus(bool accept);
/**
* @copydoc Dali::Window::IsFocusAcceptable()
/**
* @copydoc Dali::Window::GetSupportedAuxiliaryHint()
*/
- std::string GetSupportedAuxiliaryHint( unsigned int index ) const;
+ std::string GetSupportedAuxiliaryHint(unsigned int index) const;
/**
* @copydoc Dali::Window::AddAuxiliaryHint()
*/
- unsigned int AddAuxiliaryHint( const std::string& hint, const std::string& value );
+ unsigned int AddAuxiliaryHint(const std::string& hint, const std::string& value);
/**
* @copydoc Dali::Window::RemoveAuxiliaryHint()
*/
- bool RemoveAuxiliaryHint( unsigned int id );
+ bool RemoveAuxiliaryHint(unsigned int id);
/**
* @copydoc Dali::Window::SetAuxiliaryHintValue()
*/
- bool SetAuxiliaryHintValue( unsigned int id, const std::string& value );
+ bool SetAuxiliaryHintValue(unsigned int id, const std::string& value);
/**
* @copydoc Dali::Window::GetAuxiliaryHintValue()
*/
- std::string GetAuxiliaryHintValue( unsigned int id ) const;
+ std::string GetAuxiliaryHintValue(unsigned int id) const;
/**
* @copydoc Dali::Window::GetAuxiliaryHintId()
*/
- unsigned int GetAuxiliaryHintId( const std::string& hint ) const;
+ unsigned int GetAuxiliaryHintId(const std::string& hint) const;
/**
* @copydoc Dali::Window::SetInputRegion()
*/
- void SetInputRegion( const Rect< int >& inputRegion );
+ void SetInputRegion(const Rect<int>& inputRegion);
/**
* @copydoc Dali::Window::SetType()
*/
- void SetType( WindowType type );
+ void SetType(WindowType type);
/**
* @copydoc Dali::Window::GetType() const
/**
* @copydoc Dali::Window::SetNotificationLevel()
*/
- bool SetNotificationLevel( WindowNotificationLevel level );
+ bool SetNotificationLevel(WindowNotificationLevel level);
/**
* @copydoc Dali::Window::GetNotificationLevel()
/**
* @copydoc Dali::Window::SetOpaqueState()
*/
- void SetOpaqueState( bool opaque );
+ void SetOpaqueState(bool opaque);
/**
* @copydoc Dali::Window::IsOpaqueState()
/**
* @copydoc Dali::Window::SetBrightness()
*/
- bool SetBrightness( int brightness );
+ bool SetBrightness(int brightness);
/**
* @copydoc Dali::Window::GetBrightness()
/**
* @copydoc Dali::Window::SetSize()
*/
- void SetSize( Dali::Window::WindowSize size );
+ void SetSize(Dali::Window::WindowSize size);
/**
* @copydoc Dali::Window::GetSize()
/**
* @copydoc Dali::Window::SetPosition()
*/
- void SetPosition( Dali::Window::WindowPosition position );
+ void SetPosition(Dali::Window::WindowPosition position);
/**
* @copydoc Dali::Window::GetPosition()
/**
* @copydoc Dali::DevelWindow::SetPositionSize()
*/
- void SetPositionSize( PositionSize positionSize );
+ void SetPositionSize(PositionSize positionSize);
/**
* @copydoc Dali::Window::GetRootLayer()
/**
* @copydoc Dali::Window::SetTransparency()
*/
- void SetTransparency( bool transparent );
+ void SetTransparency(bool transparent);
/**
* @copydoc Dali::KeyGrab::GrabKey()
*/
- bool GrabKey( Dali::KEY key, KeyGrab::KeyGrabMode grabMode );
+ bool GrabKey(Dali::KEY key, KeyGrab::KeyGrabMode grabMode);
/**
* @copydoc Dali::KeyGrab::UngrabKey()
*/
- bool UngrabKey( Dali::KEY key );
+ bool UngrabKey(Dali::KEY key);
/**
* @copydoc Dali::KeyGrab::GrabKeyList()
*/
- bool GrabKeyList( const Dali::Vector< Dali::KEY >& key, const Dali::Vector< KeyGrab::KeyGrabMode >& grabMode, Dali::Vector< bool >& result );
+ bool GrabKeyList(const Dali::Vector<Dali::KEY>& key, const Dali::Vector<KeyGrab::KeyGrabMode>& grabMode, Dali::Vector<bool>& result);
/**
* @copydoc Dali::KeyGrab::UngrabKeyList()
*/
- bool UngrabKeyList( const Dali::Vector< Dali::KEY >& key, Dali::Vector< bool >& result );
+ bool UngrabKeyList(const Dali::Vector<Dali::KEY>& key, Dali::Vector<bool>& result);
/**
* @copydoc Dali::DevelWindow::Get()
*/
- static Dali::Window Get( Dali::Actor actor );
+ static Dali::Window Get(Dali::Actor actor);
/**
* @copydoc Dali::DevelWindow::SetParent()
*/
- void SetParent( Dali::Window& parent );
+ void SetParent(Dali::Window& parent);
/**
* @copydoc Dali::DevelWindow::Unparent()
/**
* @copydoc Dali::DevelWindow::SetAvailableOrientations()
*/
- void SetAvailableOrientations( const Dali::Vector<WindowOrientation>& orientations );
+ void SetAvailableOrientations(const Dali::Vector<WindowOrientation>& orientations);
public: // Dali::Internal::Adaptor::SceneHolder
-
/**
* @copydoc Dali::Internal::Adaptor::SceneHolder::GetNativeHandle
*/
int32_t GetNativeId() const;
private:
-
/**
* @brief Enumeration for orietation mode.
* The Orientation Mode is related to screen size.
/**
* Called when the window becomes iconified or deiconified.
*/
- void OnIconifyChanged( bool iconified );
+ void OnIconifyChanged(bool iconified);
/**
* Called when the window focus is changed.
*/
- void OnFocusChanged( bool focusIn );
+ void OnFocusChanged(bool focusIn);
/**
* Called when the output is transformed.
/**
* Called when the window receives a Transition effect-start/end event.
*/
- void OnTransitionEffectEvent( WindowEffectState state, WindowEffectType type );
+ void OnTransitionEffectEvent(WindowEffectState state, WindowEffectType type);
/**
* @brief Called when window receives a keyboard repeat event.
/**
* @brief Set available orientation to window base.
*/
- void SetAvailableAnlges( const std::vector< int >& angles );
+ void SetAvailableAnlges(const std::vector<int>& angles);
/**
* @brief Convert from window orientation to angle using OrientationMode.
*/
- int ConvertToAngle( WindowOrientation orientation );
+ int ConvertToAngle(WindowOrientation orientation);
/**
* @brief Convert from angle to window orientation using OrientationMode.
*/
- WindowOrientation ConvertToOrientation( int angle ) const;
+ WindowOrientation ConvertToOrientation(int angle) const;
/**
* @brief Check available window orientation for Available orientation.
*/
- bool IsOrientationAvailable( WindowOrientation orientation ) const;
+ bool IsOrientationAvailable(WindowOrientation orientation) const;
private: // Dali::Internal::Adaptor::SceneHolder
-
/**
* @copydoc Dali::Internal::Adaptor::SceneHolder::OnAdaptorSet
*/
- void OnAdaptorSet( Dali::Adaptor& adaptor ) override;
+ void OnAdaptorSet(Dali::Adaptor& adaptor) override;
/**
* @copydoc Dali::Internal::Adaptor::SceneHolder::OnSurfaceSet
*/
- void OnSurfaceSet( Dali::RenderSurfaceInterface* surface ) override;
+ void OnSurfaceSet(Dali::RenderSurfaceInterface* surface) override;
/**
* @copydoc Dali::Internal::Adaptor::SceneHolder::OnPause
/**
* @copydoc Dali::Internal::Adaptor::SceneHolder::RecalculateTouchPosition
*/
- void RecalculateTouchPosition( Integration::Point& point ) override;
+ void RecalculateTouchPosition(Integration::Point& point) override;
private: // Dali::Internal::Adaptor::EventHandler::Observer
-
/**
* @copydoc Dali::Internal::Adaptor::EventHandler::Observer::OnTouchPoint
*/
- void OnTouchPoint( Dali::Integration::Point& point, int timeStamp ) override;
+ void OnTouchPoint(Dali::Integration::Point& point, int timeStamp) override;
/**
* @copydoc Dali::Internal::Adaptor::EventHandler::Observer::OnWheelEvent
*/
- void OnWheelEvent( Dali::Integration::WheelEvent& wheelEvent ) override;
+ void OnWheelEvent(Dali::Integration::WheelEvent& wheelEvent) override;
/**
* @copydoc Dali::Internal::Adaptor::EventHandler::Observer::OnKeyEvent
*/
- void OnKeyEvent( Dali::Integration::KeyEvent& keyEvent ) override;
+ void OnKeyEvent(Dali::Integration::KeyEvent& keyEvent) override;
/**
* @copydoc Dali::Internal::Adaptor::EventHandler::Observer::OnRotation
*/
- void OnRotation( const RotationEvent& rotation ) override;
+ void OnRotation(const RotationEvent& rotation) override;
public: // Signals
-
/**
* @copydoc Dali::Window::FocusChangeSignal()
*/
- FocusChangeSignalType& FocusChangeSignal() { return mFocusChangeSignal; }
+ FocusChangeSignalType& FocusChangeSignal()
+ {
+ return mFocusChangeSignal;
+ }
/**
* @copydoc Dali::Window::ResizedSignal()
*/
- ResizeSignalType& ResizeSignal() { return mResizeSignal; }
+ ResizeSignalType& ResizeSignal()
+ {
+ return mResizeSignal;
+ }
/**
* This signal is emitted when the window is requesting to be deleted
*/
- SignalType& DeleteRequestSignal() { return mDeleteRequestSignal; }
+ SignalType& DeleteRequestSignal()
+ {
+ return mDeleteRequestSignal;
+ }
/**
* @copydoc Dali::DevelWindow::VisibilityChangedSignal()
*/
- VisibilityChangedSignalType& VisibilityChangedSignal() { return mVisibilityChangedSignal; }
+ VisibilityChangedSignalType& VisibilityChangedSignal()
+ {
+ return mVisibilityChangedSignal;
+ }
/**
* @copydoc Dali::Window::SignalEventProcessingFinished()
*/
- Dali::DevelWindow::EventProcessingFinishedSignalType& EventProcessingFinishedSignal() { return mScene.EventProcessingFinishedSignal(); }
+ Dali::DevelWindow::EventProcessingFinishedSignalType& EventProcessingFinishedSignal()
+ {
+ return mScene.EventProcessingFinishedSignal();
+ }
/**
* @copydoc Dali::DevelWindow::TransitionEffectEventSignal()
*/
- TransitionEffectEventSignalType& TransitionEffectEventSignal() { return mTransitionEffectEventSignal; }
+ TransitionEffectEventSignalType& TransitionEffectEventSignal()
+ {
+ return mTransitionEffectEventSignal;
+ }
/**
* @copydoc Dali::DevelWindow::KeyboardRepeatSettingsChangedSignal()
*/
- KeyboardRepeatSettingsChangedSignalType& KeyboardRepeatSettingsChangedSignal() { return mKeyboardRepeatSettingsChangedSignal; }
+ KeyboardRepeatSettingsChangedSignalType& KeyboardRepeatSettingsChangedSignal()
+ {
+ return mKeyboardRepeatSettingsChangedSignal;
+ }
private:
+ WindowRenderSurface* mWindowSurface; ///< The window rendering surface
+ WindowBase* mWindowBase;
+ std::string mName;
+ std::string mClassName;
+ bool mIsTransparent : 1;
+ bool mIsFocusAcceptable : 1;
+ bool mIconified : 1;
+ bool mOpaqueState : 1;
+ bool mResizeEnabled : 1;
+ WindowType mType;
+ Dali::Window mParentWindow;
- WindowRenderSurface* mWindowSurface; ///< The window rendering surface
- WindowBase* mWindowBase;
- std::string mName;
- std::string mClassName;
- bool mIsTransparent:1;
- bool mIsFocusAcceptable:1;
- bool mIconified:1;
- bool mOpaqueState:1;
- bool mResizeEnabled:1;
- WindowType mType;
- Dali::Window mParentWindow;
-
- OrientationPtr mOrientation;
- std::vector< int > mAvailableAngles;
- int mPreferredAngle;
+ OrientationPtr mOrientation;
+ std::vector<int> mAvailableAngles;
+ int mPreferredAngle;
- int mRotationAngle; ///< The angle of the rotation
- int mWindowWidth; ///< The width of the window
- int mWindowHeight; ///< The height of the window
+ int mRotationAngle; ///< The angle of the rotation
+ int mWindowWidth; ///< The width of the window
+ int mWindowHeight; ///< The height of the window
- EventHandlerPtr mEventHandler; ///< The window events handler
+ EventHandlerPtr mEventHandler; ///< The window events handler
- OrientationMode mOrientationMode;
+ OrientationMode mOrientationMode;
- int mNativeWindowId; ///< The Native Window Id
+ int mNativeWindowId; ///< The Native Window Id
// Signals
SignalType mDeleteRequestSignal;
};
} // namespace Adaptor
-} // namepsace Internal
+} // namespace Internal
// Helpers for public-api forwarding methods
inline Internal::Adaptor::Window& GetImplementation(Dali::Window& window)
{
- DALI_ASSERT_ALWAYS( window && "Window handle is empty" );
+ DALI_ASSERT_ALWAYS(window && "Window handle is empty");
BaseObject& object = window.GetBaseObject();
return static_cast<Internal::Adaptor::Window&>(object);
}
inline const Internal::Adaptor::Window& GetImplementation(const Dali::Window& window)
{
- DALI_ASSERT_ALWAYS( window && "Window handle is empty" );
+ DALI_ASSERT_ALWAYS(window && "Window handle is empty");
const BaseObject& object = window.GetBaseObject();
return static_cast<const Internal::Adaptor::Window&>(object);
}
#define DALI_INTERNAL_WINDOWSYSTEM_COMMON_WINDOW_RENDER_SURFACE_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <dali/public-api/signals/connection-tracker.h>
-#include <dali/public-api/signals/dali-signal.h>
#include <dali/devel-api/threading/mutex.h>
#include <dali/integration-api/scene.h>
+#include <dali/public-api/signals/connection-tracker.h>
+#include <dali/public-api/signals/dali-signal.h>
#include <unistd.h>
// INTERNAL INCLUDES
namespace Dali
{
-
class TriggerEventInterface;
namespace Internal
{
namespace Adaptor
{
-
class WindowBase;
class AdaptorInternalServices;
class WindowRenderSurface : public Dali::RenderSurfaceInterface, public ConnectionTracker
{
public:
-
- using OutputSignalType = Signal< void ( ) >;
- using DamagedRectsContainer = std::list< std::vector< Rect< int > > >;
+ using OutputSignalType = Signal<void()>;
+ using DamagedRectsContainer = std::list<std::vector<Rect<int>>>;
/**
* Uses an window surface to render to.
* @param [in] surface can be a window or pixmap.
* @param [in] isTransparent if it is true, surface has 32 bit color depth, otherwise, 24 bit
*/
- WindowRenderSurface( Dali::PositionSize positionSize, Any surface, bool isTransparent = false );
+ WindowRenderSurface(Dali::PositionSize positionSize, Any surface, bool isTransparent = false);
/**
* @brief Destructor
virtual ~WindowRenderSurface();
public: // API
-
/**
* @brief Get the native window handle
* @return The native window handle
* @brief Sets the render notification trigger to call when render thread is completed a frame
* @param renderNotification to use
*/
- void SetRenderNotification( TriggerEventInterface* renderNotification );
+ void SetRenderNotification(TriggerEventInterface* renderNotification);
/**
* @brief Sets whether the surface is transparent or not.
* @param[in] transparent Whether the surface is transparent
*/
- void SetTransparency( bool transparent );
+ void SetTransparency(bool transparent);
/**
* Request surface rotation
* @param[in] width A new width of the surface
* @param[in] height A new height of the surface
*/
- void RequestRotation( int angle, int width, int height );
+ void RequestRotation(int angle, int width, int height);
/**
* @brief Gets the window base object
OutputSignalType& OutputTransformedSignal();
public: // from Dali::RenderSurfaceInterface
-
/**
* @copydoc Dali::RenderSurfaceInterface::GetPositionSize()
*/
/**
*/
- void GetDpi( unsigned int& dpiHorizontal, unsigned int& dpiVertical ) override;
+ void GetDpi(unsigned int& dpiHorizontal, unsigned int& dpiVertical) override;
/**
* @copydoc Dali::RenderSurfaceInterface::GetOrientation()
/**
* @copydoc Dali::RenderSurfaceInterface::MoveResize()
*/
- void MoveResize( Dali::PositionSize positionSize) override;
+ void MoveResize(Dali::PositionSize positionSize) override;
/**
* @copydoc Dali::RenderSurfaceInterface::StartRender()
/**
* @copydoc Dali::RenderSurfaceInterface::PreRender()
*/
- bool PreRender( bool resizingSurface, const std::vector<Rect<int>>& damagedRects, Rect<int>& clippingRect ) override;
+ bool PreRender(bool resizingSurface, const std::vector<Rect<int>>& damagedRects, Rect<int>& clippingRect) override;
/**
* @copydoc Dali::RenderSurfaceInterface::PostRender()
*/
- void PostRender( bool renderToFbo, bool replacingSurface, bool resizingSurface, const std::vector<Rect<int>>& damagedRects ) override;
+ void PostRender(bool renderToFbo, bool replacingSurface, bool resizingSurface, const std::vector<Rect<int>>& damagedRects) override;
/**
* @copydoc Dali::RenderSurfaceInterface::StopRender()
/**
* @copydoc Dali::RenderSurfaceInterface::SetThreadSynchronization
*/
- void SetThreadSynchronization( ThreadSynchronizationInterface& threadSynchronization ) override;
+ void SetThreadSynchronization(ThreadSynchronizationInterface& threadSynchronization) override;
/**
* @copydoc Dali::RenderSurfaceInterface::ReleaseLock()
Integration::StencilBufferAvailable GetStencilBufferRequired() override;
private:
-
/**
* @brief Second stage construction
*/
- void Initialize( Any surface );
+ void Initialize(Any surface);
/**
* Notify output is transformed.
* @param[in] eventBitMask bit mask of events that occured on the file descriptor
* @param[in] fileDescriptor The file descriptor
*/
- void OnFileDescriptorEventDispatched( FileDescriptorMonitor::EventType eventBitMask, int fileDescriptor );
+ void OnFileDescriptorEventDispatched(FileDescriptorMonitor::EventType eventBitMask, int fileDescriptor);
/**
* @brief Set the buffer damage rects.
* @param[in] damagedRects List of damaged rects
* @param[in] clippingRect The rect to clip rendered scene
*/
- void SetBufferDamagedRects( const std::vector< Rect< int > >& damagedRects, Rect< int >& clippingRect );
+ void SetBufferDamagedRects(const std::vector<Rect<int>>& damagedRects, Rect<int>& clippingRect);
/**
* @brief Swap buffers.
* @param[in] damagedRects List of damaged rects
*/
- void SwapBuffers( const std::vector<Rect<int>>& damagedRects );
+ void SwapBuffers(const std::vector<Rect<int>>& damagedRects);
protected:
-
// Undefined
WindowRenderSurface(const WindowRenderSurface&) = delete;
WindowRenderSurface& operator=(const WindowRenderSurface& rhs) = delete;
private:
-
struct FrameCallbackInfo
{
- FrameCallbackInfo( Dali::Integration::Scene::FrameCallbackContainer& callbackList, int fd )
+ FrameCallbackInfo(Dali::Integration::Scene::FrameCallbackContainer& callbackList, int fd)
: callbacks(),
fileDescriptorMonitor(),
- fileDescriptor( fd )
+ fileDescriptor(fd)
{
// Transfer owership of the CallbackBase
- for( auto&& iter : callbackList )
+ for(auto&& iter : callbackList)
{
- callbacks.push_back( std::make_pair( std::move( iter.first ), iter.second ) );
+ callbacks.push_back(std::make_pair(std::move(iter.first), iter.second));
}
}
{
// Delete FileDescriptorMonitor before close fd.
fileDescriptorMonitor.release();
- close( fileDescriptor );
+ close(fileDescriptor);
}
Dali::Integration::Scene::FrameCallbackContainer callbacks;
- std::unique_ptr< FileDescriptorMonitor > fileDescriptorMonitor;
- int fileDescriptor;
+ std::unique_ptr<FileDescriptorMonitor> fileDescriptorMonitor;
+ int fileDescriptor;
};
- using FrameCallbackInfoContainer = std::vector< std::unique_ptr< FrameCallbackInfo > >;
+ using FrameCallbackInfoContainer = std::vector<std::unique_ptr<FrameCallbackInfo>>;
private: // Data
-
- EglInterface* mEGL;
- Dali::DisplayConnection* mDisplayConnection;
- PositionSize mPositionSize; ///< Position
- std::unique_ptr< WindowBase > mWindowBase;
- ThreadSynchronizationInterface* mThreadSynchronization;
- TriggerEventInterface* mRenderNotification; ///< Render notification trigger
- TriggerEventInterface* mRotationTrigger;
- std::unique_ptr< TriggerEventInterface > mFrameRenderedTrigger;
- GraphicsInterface* mGraphics; ///< Graphics interface
- EGLSurface mEGLSurface;
- EGLContext mEGLContext;
- ColorDepth mColorDepth; ///< Color depth of surface (32 bit or 24 bit)
- OutputSignalType mOutputTransformedSignal;
- FrameCallbackInfoContainer mFrameCallbackInfoContainer;
- DamagedRectsContainer mBufferDamagedRects;
- Dali::Mutex mMutex;
- int mWindowRotationAngle;
- int mScreenRotationAngle;
- uint32_t mDpiHorizontal;
- uint32_t mDpiVertical;
- bool mOwnSurface; ///< Whether we own the surface (responsible for deleting it)
- bool mWindowRotationFinished;
- bool mScreenRotationFinished;
- bool mResizeFinished;
- bool mDefaultScreenRotationAvailable;
+ EglInterface* mEGL;
+ Dali::DisplayConnection* mDisplayConnection;
+ PositionSize mPositionSize; ///< Position
+ std::unique_ptr<WindowBase> mWindowBase;
+ ThreadSynchronizationInterface* mThreadSynchronization;
+ TriggerEventInterface* mRenderNotification; ///< Render notification trigger
+ TriggerEventInterface* mRotationTrigger;
+ std::unique_ptr<TriggerEventInterface> mFrameRenderedTrigger;
+ GraphicsInterface* mGraphics; ///< Graphics interface
+ EGLSurface mEGLSurface;
+ EGLContext mEGLContext;
+ ColorDepth mColorDepth; ///< Color depth of surface (32 bit or 24 bit)
+ OutputSignalType mOutputTransformedSignal;
+ FrameCallbackInfoContainer mFrameCallbackInfoContainer;
+ DamagedRectsContainer mBufferDamagedRects;
+ Dali::Mutex mMutex;
+ int mWindowRotationAngle;
+ int mScreenRotationAngle;
+ uint32_t mDpiHorizontal;
+ uint32_t mDpiVertical;
+ bool mOwnSurface; ///< Whether we own the surface (responsible for deleting it)
+ bool mWindowRotationFinished;
+ bool mScreenRotationFinished;
+ bool mResizeFinished;
+ bool mDefaultScreenRotationAvailable;
}; // class WindowRenderSurface
} // namespace Adaptor
-} // namespace internal
+} // namespace Internal
} // namespace Dali
#define DALI_INTERNAL_WINDOWSYSTEM_COMMON_WINDOW_SYSTEM_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
namespace WindowSystem
{
-
/**
* @brief Initialize a window system
*/
/**
* @brief Get the screen size
*/
-void GetScreenSize( int& width, int& height );
+void GetScreenSize(int& width, int& height);
/**
* @copydoc Dali::Keyboard::SetRepeatInfo()
*/
-bool SetKeyboardRepeatInfo( float rate, float delay );
+bool SetKeyboardRepeatInfo(float rate, float delay);
/**
* @copydoc Dali::Keyboard::GetRepeatInfo()
*/
-bool GetKeyboardRepeatInfo( float& rate, float& delay );
+bool GetKeyboardRepeatInfo(float& rate, float& delay);
} // namespace WindowSystem
} // namespace Adaptor
-} // namespace internal
+} // namespace Internal
} // namespace Dali
#endif // DALI_INTERNAL_WINDOWSYSTEM_COMMON_WINDOW_SYSTEM_H
#define DALI_INTERNAL_WINDOW_VISIBILITY_OBSERVER_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
/**
* An interface used to observe when the application's window is shown/hidden.
*/
class WindowVisibilityObserver
{
public:
-
/**
* Called when the window becomes fully or partially visible.
*/
virtual void OnWindowHidden() = 0;
protected:
-
/**
* Protected Constructor.
*/
#pragma once
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali::Internal::Adaptor
{
-
class DisplayConnectionFactoryCocoa : public DisplayConnectionFactory
{
public:
#pragma once
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// INTERNAL INCLUDES
+#include <dali/internal/graphics/gles/egl-implementation.h>
#include <dali/internal/window-system/common/display-connection-impl.h>
#include <dali/public-api/object/base-object.h>
-#include <dali/internal/graphics/gles/egl-implementation.h>
namespace Dali::Internal::Adaptor
{
-
/**
* DisplayConnection implementation
*/
class DisplayConnectionCocoa : public Dali::Internal::Adaptor::DisplayConnection
{
public:
-
/**
* @brief Default constructor
*/
static DisplayConnection* New();
public:
-
/**
* @copydoc Dali::DisplayConnection::GetDisplay
*/
/**
* @copydoc Dali::Internal::Adaptor::DisplayConnection::SetSurfaceType
*/
- void SetSurfaceType( Dali::RenderSurfaceInterface::Type type );
+ void SetSurfaceType(Dali::RenderSurfaceInterface::Type type);
/**
* @copydoc Dali::Internal::Adaptor::DisplayConnection::SetGraphicsInterface
*/
- void SetGraphicsInterface( GraphicsInterface& graphics );
+ void SetGraphicsInterface(GraphicsInterface& graphics);
public:
-
/**
* Destructor
*/
virtual ~DisplayConnectionCocoa();
private:
-
// Undefined
DisplayConnectionCocoa(const DisplayConnectionCocoa&) = delete;
DisplayConnectionCocoa& operator=(const DisplayConnectionCocoa& rhs) = delete;
private:
-
- GraphicsInterface *mGraphics; ///< The graphics interface
+ GraphicsInterface* mGraphics; ///< The graphics interface
};
} // namespace Dali::Internal::Adaptor
#pragma once
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali::Internal::Adaptor
{
-
class RenderSurfaceFactoryCocoa : public RenderSurfaceFactory
{
public:
- std::unique_ptr< WindowRenderSurface > CreateWindowRenderSurface(
+ std::unique_ptr<WindowRenderSurface> CreateWindowRenderSurface(
Dali::PositionSize positionSize,
- Any surface,
- bool isTransparent = false
- ) override;
+ Any surface,
+ bool isTransparent = false) override;
- std::unique_ptr< PixmapRenderSurface > CreatePixmapRenderSurface(
+ std::unique_ptr<PixmapRenderSurface> CreatePixmapRenderSurface(
Dali::PositionSize positionSize,
- Any surface,
- bool isTransparent = false
- ) override;
+ Any surface,
+ bool isTransparent = false) override;
- std::unique_ptr< NativeRenderSurface > CreateNativeRenderSurface(
+ std::unique_ptr<NativeRenderSurface> CreateNativeRenderSurface(
SurfaceSize surfaceSize,
- Any surface,
- bool isTransparent = false
- ) override;
+ Any surface,
+ bool isTransparent = false) override;
};
} // namespace Dali::Internal::Adaptor
#pragma once
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali::Internal::Adaptor
{
-
/**
* WindowBaseCocoa class provides an WindowBase Win32 implementation.
*/
class WindowBaseCocoa : public WindowBase
{
public:
-
struct Impl;
/**
* @brief Constructor
*/
- WindowBaseCocoa( PositionSize positionSize, Any surface, bool isTransparent );
+ WindowBaseCocoa(PositionSize positionSize, Any surface, bool isTransparent);
/**
* @brief Destructor
~WindowBaseCocoa();
public:
-
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetNativeWindow()
*/
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::CreateEglWindow()
*/
- EGLNativeWindowType CreateEglWindow( int width, int height ) override;
+ EGLNativeWindowType CreateEglWindow(int width, int height) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::DestroyEglWindow()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetEglWindowRotation()
*/
- void SetEglWindowRotation( int angle ) override;
+ void SetEglWindowRotation(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetEglWindowBufferTransform()
*/
- void SetEglWindowBufferTransform( int angle ) override;
+ void SetEglWindowBufferTransform(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetEglWindowTransform()
*/
- void SetEglWindowTransform( int angle ) override;
+ void SetEglWindowTransform(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::ResizeEglWindow()
*/
- void ResizeEglWindow( PositionSize positionSize ) override;
+ void ResizeEglWindow(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::IsEglWindowRotationSupported()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Move()
*/
- void Move( PositionSize positionSize ) override;
+ void Move(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Resize()
*/
- void Resize( PositionSize positionSize ) override;
+ void Resize(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::MoveResize()
*/
- void MoveResize( PositionSize positionSize ) override;
+ void MoveResize(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetClass()
*/
- void SetClass( const std::string& name, const std::string& className ) override;
+ void SetClass(const std::string& name, const std::string& className) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Raise()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetAvailableAnlges()
*/
- void SetAvailableAnlges( const std::vector< int >& angles ) override;
+ void SetAvailableAnlges(const std::vector<int>& angles) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetPreferredAngle()
*/
- void SetPreferredAngle( int angle ) override;
+ void SetPreferredAngle(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetAcceptFocus()
*/
- void SetAcceptFocus( bool accept ) override;
+ void SetAcceptFocus(bool accept) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Show()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetSupportedAuxiliaryHint()
*/
- std::string GetSupportedAuxiliaryHint( unsigned int index ) const override;
+ std::string GetSupportedAuxiliaryHint(unsigned int index) const override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::AddAuxiliaryHint()
*/
- unsigned int AddAuxiliaryHint( const std::string& hint, const std::string& value ) override;
+ unsigned int AddAuxiliaryHint(const std::string& hint, const std::string& value) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::RemoveAuxiliaryHint()
*/
- bool RemoveAuxiliaryHint( unsigned int id ) override;
+ bool RemoveAuxiliaryHint(unsigned int id) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetAuxiliaryHintValue()
*/
- bool SetAuxiliaryHintValue( unsigned int id, const std::string& value ) override;
+ bool SetAuxiliaryHintValue(unsigned int id, const std::string& value) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetAuxiliaryHintValue()
*/
- std::string GetAuxiliaryHintValue( unsigned int id ) const override;
+ std::string GetAuxiliaryHintValue(unsigned int id) const override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetAuxiliaryHintId()
*/
- unsigned int GetAuxiliaryHintId( const std::string& hint ) const override;
+ unsigned int GetAuxiliaryHintId(const std::string& hint) const override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetInputRegion()
*/
- void SetInputRegion( const Rect< int >& inputRegion ) override;
+ void SetInputRegion(const Rect<int>& inputRegion) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetType()
*/
- void SetType( Dali::WindowType type ) override;
+ void SetType(Dali::WindowType type) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetNotificationLevel()
*/
- bool SetNotificationLevel( WindowNotificationLevel level ) override;
+ bool SetNotificationLevel(WindowNotificationLevel level) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetNotificationLevel()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetOpaqueState()
*/
- void SetOpaqueState( bool opaque ) override;
+ void SetOpaqueState(bool opaque) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetScreenOffMode()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetBrightness()
*/
- bool SetBrightness( int brightness ) override;
+ bool SetBrightness(int brightness) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetBrightness()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GrabKey()
*/
- bool GrabKey( Dali::KEY key, KeyGrab::KeyGrabMode grabMode ) override;
+ bool GrabKey(Dali::KEY key, KeyGrab::KeyGrabMode grabMode) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::UngrabKey()
*/
- bool UngrabKey( Dali::KEY key ) override;
+ bool UngrabKey(Dali::KEY key) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GrabKeyList()
*/
bool GrabKeyList(
- const Dali::Vector< Dali::KEY >& key,
- const Dali::Vector< KeyGrab::KeyGrabMode >& grabMode,
- Dali::Vector< bool >& result
- ) override;
+ const Dali::Vector<Dali::KEY>& key,
+ const Dali::Vector<KeyGrab::KeyGrabMode>& grabMode,
+ Dali::Vector<bool>& result) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::UngrabKeyList()
*/
bool UngrabKeyList(
- const Dali::Vector< Dali::KEY >& key,
- Dali::Vector< bool >& result
- ) override;
+ const Dali::Vector<Dali::KEY>& key,
+ Dali::Vector<bool>& result) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetDpi()
*/
- void GetDpi( unsigned int& dpiHorizontal, unsigned int& dpiVertical ) override;
+ void GetDpi(unsigned int& dpiHorizontal, unsigned int& dpiVertical) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetOrientation()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetWindowRotationAngle()
*/
- void SetWindowRotationAngle( int degree ) override;
+ void SetWindowRotationAngle(int degree) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::WindowRotationCompleted()
*/
- void WindowRotationCompleted( int degree, int width, int height ) override;
+ void WindowRotationCompleted(int degree, int width, int height) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetTransparency()
*/
- void SetTransparency( bool transparent ) override;
+ void SetTransparency(bool transparent) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetParent()
*/
- void SetParent( WindowBase* parentWinBase ) override;
+ void SetParent(WindowBase* parentWinBase) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::CreateFrameRenderedSyncFence()
int CreateFramePresentedSyncFence() override;
private:
-
// Undefined
- WindowBaseCocoa(const WindowBaseCocoa &) = delete;
+ WindowBaseCocoa(const WindowBaseCocoa&) = delete;
// Undefined
WindowBaseCocoa& operator=(const WindowBaseCocoa& rhs) = delete;
#pragma once
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali::Internal::Adaptor
{
-
class WindowFactoryCocoa : public WindowFactory
{
public:
std::unique_ptr<WindowBase> CreateWindowBase(
Dali::PositionSize positionSize,
- Any surface,
- bool isTransparent
- ) override;
+ Any surface,
+ bool isTransparent) override;
};
} // namespace Dali::Internal::Adaptor
#pragma once
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
-#include <mutex>
#include <condition_variable>
+#include <mutex>
// INTERNAL INCLUDES
#include <dali/internal/window-system/common/window-render-surface.h>
class WindowRenderSurfaceCocoa : public WindowRenderSurface
{
public:
-
/**
* @copydoc Dali::WindowRenderSurface()
*/
void CreateSurface() override;
private:
- std::mutex mCondMutex;
+ std::mutex mCondMutex;
std::condition_variable mRenderWait;
- bool mReady;
+ bool mReady;
};
-} // Dali::Internal::Adaptor
+} // namespace Dali::Internal::Adaptor
#define DALI_INTERNAL_WINDOWSYSTEM_ECOREWL_DISPLAY_CONNECTION_FACTORY_ECORE_WL_H
/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
std::unique_ptr<Dali::Internal::Adaptor::DisplayConnection> CreateDisplayConnection() override;
};
-} // Adaptor
+} // namespace Adaptor
-} // Internal
-
-} // Dali
+} // namespace Internal
+} // namespace Dali
#endif // DALI_INTERNAL_WINDOWSYSTEM_ECOREWL_DISPLAY_CONNECTION_FACTORY_ECORE_WL_H
#define DALI_INTERNAL_WINDOWSYSTEM_ECOREWL_DISPLAY_CONNECTION_IMPL_ECORE_WL_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
class DisplayConnection;
namespace Internal
{
-
namespace Adaptor
{
-
/**
* DisplayConnection implementation
*/
class DisplayConnectionEcoreWl : public Dali::Internal::Adaptor::DisplayConnection
{
public:
-
/**
* @brief Default constructor
*/
static DisplayConnection* New();
public:
-
/**
* @copydoc Dali::DisplayConnection::GetDisplay
*/
* @brief Sets the surface type
* @param[in] type The surface type
*/
- void SetSurfaceType( Dali::RenderSurfaceInterface::Type type );
+ void SetSurfaceType(Dali::RenderSurfaceInterface::Type type);
/**
* @brief Sets the graphics interface
* @param[in] graphics The graphics interface
*/
- void SetGraphicsInterface( GraphicsInterface& graphics );
+ void SetGraphicsInterface(GraphicsInterface& graphics);
public:
-
/**
* Destructor
*/
virtual ~DisplayConnectionEcoreWl();
protected:
-
/**
* @brief Gets display connection for native surface
*/
DisplayConnectionEcoreWl& operator=(const DisplayConnectionEcoreWl& rhs);
private:
- EGLNativeDisplayType mDisplay; ///< Wayland-display for rendering
- Dali::RenderSurfaceInterface::Type mSurfaceType; ///< The surface type
- GraphicsInterface* mGraphics; ///< The graphics interface
+ EGLNativeDisplayType mDisplay; ///< Wayland-display for rendering
+ Dali::RenderSurfaceInterface::Type mSurfaceType; ///< The surface type
+ GraphicsInterface* mGraphics; ///< The graphics interface
};
} // namespace Adaptor
-} // namespace internal
+} // namespace Internal
} // namespace Dali
#define DALI_INTERNAL_WINDOWSYSTEM_TIZENWAYLAND_RENDER_SURFACE_FACTORY_ECORE_WL_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
class RenderSurfaceFactoryEcoreWl : public RenderSurfaceFactory
{
public:
- std::unique_ptr< WindowRenderSurface > CreateWindowRenderSurface( Dali::PositionSize positionSize, Any surface, bool isTransparent = false ) override;
+ std::unique_ptr<WindowRenderSurface> CreateWindowRenderSurface(Dali::PositionSize positionSize, Any surface, bool isTransparent = false) override;
- std::unique_ptr< PixmapRenderSurface > CreatePixmapRenderSurface( Dali::PositionSize positionSize, Any surface, bool isTransparent = false ) override;
+ std::unique_ptr<PixmapRenderSurface> CreatePixmapRenderSurface(Dali::PositionSize positionSize, Any surface, bool isTransparent = false) override;
- std::unique_ptr< NativeRenderSurface > CreateNativeRenderSurface( SurfaceSize surfaceSize, Any surface, bool isTransparent = false ) override;
+ std::unique_ptr<NativeRenderSurface> CreateNativeRenderSurface(SurfaceSize surfaceSize, Any surface, bool isTransparent = false) override;
};
} // namespace Adaptor
#define DALI_INTERNAL_WINDOWSYSTEM_TIZENWAYLAND_WINDOW_BASE_ECORE_WL_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
class WindowRenderSurface;
class WindowRenderSurfaceEcoreWl;
class WindowBaseEcoreWl : public WindowBase
{
public:
-
/**
* @brief Constructor
*/
- WindowBaseEcoreWl( PositionSize positionSize, Any surface, bool isTransparent );
+ WindowBaseEcoreWl(PositionSize positionSize, Any surface, bool isTransparent);
/**
* @brief Destructor
virtual ~WindowBaseEcoreWl();
public:
-
/**
* @brief Called when the window iconify state is changed.
*/
- Eina_Bool OnIconifyStateChanged( void* data, int type, void* event );
+ Eina_Bool OnIconifyStateChanged(void* data, int type, void* event);
/**
* @brief Called when the window gains focus.
*/
- Eina_Bool OnFocusIn( void* data, int type, void* event );
+ Eina_Bool OnFocusIn(void* data, int type, void* event);
/**
* @brief Called when the window loses focus.
*/
- Eina_Bool OnFocusOut( void* data, int type, void* event );
+ Eina_Bool OnFocusOut(void* data, int type, void* event);
/**
* @brief Called when the output is transformed.
*/
- Eina_Bool OnOutputTransform( void* data, int type, void* event );
+ Eina_Bool OnOutputTransform(void* data, int type, void* event);
/**
* @brief Called when the output transform should be ignored.
*/
- Eina_Bool OnIgnoreOutputTransform( void* data, int type, void* event );
+ Eina_Bool OnIgnoreOutputTransform(void* data, int type, void* event);
/**
* @brief Called when a rotation event is recevied.
*/
- void OnRotation( void* data, int type, void* event );
+ void OnRotation(void* data, int type, void* event);
/**
* @brief Called when a touch down is received.
*/
- void OnMouseButtonDown( void* data, int type, void* event );
+ void OnMouseButtonDown(void* data, int type, void* event);
/**
* @brief Called when a touch up is received.
*/
- void OnMouseButtonUp( void* data, int type, void* event );
+ void OnMouseButtonUp(void* data, int type, void* event);
/**
* @brief Called when a touch motion is received.
*/
- void OnMouseButtonMove( void* data, int type, void* event );
+ void OnMouseButtonMove(void* data, int type, void* event);
/**
* @brief Called when a touch is canceled.
*/
- void OnMouseButtonCancel( void* data, int type, void* event );
+ void OnMouseButtonCancel(void* data, int type, void* event);
/**
* @brief Called when a mouse wheel is received.
*/
- void OnMouseWheel( void* data, int type, void* event );
+ void OnMouseWheel(void* data, int type, void* event);
/**
* @brief Called when a detent rotation event is recevied.
*/
- void OnDetentRotation( void* data, int type, void* event );
+ void OnDetentRotation(void* data, int type, void* event);
/**
* @brief Called when a key down is received.
*/
- void OnKeyDown( void* data, int type, void* event );
+ void OnKeyDown(void* data, int type, void* event);
/**
* @brief Called when a key up is received.
*/
- void OnKeyUp( void* data, int type, void* event );
+ void OnKeyUp(void* data, int type, void* event);
/**
* @brief Called when the source window notifies us the content in clipboard is selected.
*/
- void OnDataSend( void* data, int type, void* event );
+ void OnDataSend(void* data, int type, void* event);
/**
* @brief Called when the source window sends us about the selected content.
*/
- void OnDataReceive( void* data, int type, void* event );
+ void OnDataReceive(void* data, int type, void* event);
/**
* @brief Called when a font name is changed.
/**
* @brief Called when Ecore ElDBus accessibility event is received.
*/
- void OnEcoreElDBusAccessibilityNotification( void* context, const Eldbus_Message* message );
+ void OnEcoreElDBusAccessibilityNotification(void* context, const Eldbus_Message* message);
#endif
/**
* @brief RegistryGlobalCallback
*/
- void RegistryGlobalCallback( void* data, struct wl_registry *registry, uint32_t name, const char* interface, uint32_t version );
+ void RegistryGlobalCallback(void* data, struct wl_registry* registry, uint32_t name, const char* interface, uint32_t version);
/**
* @brief RegistryGlobalCallbackRemove
*/
- void RegistryGlobalCallbackRemove( void* data, struct wl_registry* registry, uint32_t id );
+ void RegistryGlobalCallbackRemove(void* data, struct wl_registry* registry, uint32_t id);
/**
* @brief TizenPolicyNotificationChangeDone
*/
- void TizenPolicyNotificationChangeDone(void* data, struct tizen_policy* tizenPolicy, struct wl_surface* surface, int32_t level, uint32_t state );
+ void TizenPolicyNotificationChangeDone(void* data, struct tizen_policy* tizenPolicy, struct wl_surface* surface, int32_t level, uint32_t state);
/**
* @brief TizenPolicyScreenModeChangeDone
*/
- void TizenPolicyScreenModeChangeDone( void* data, struct tizen_policy* tizenPolicy, struct wl_surface* surface, uint32_t mode, uint32_t state );
+ void TizenPolicyScreenModeChangeDone(void* data, struct tizen_policy* tizenPolicy, struct wl_surface* surface, uint32_t mode, uint32_t state);
/**
* @brief DisplayPolicyBrightnessChangeDone
*/
- void DisplayPolicyBrightnessChangeDone( void* data, struct tizen_display_policy *displayPolicy, struct wl_surface* surface, int32_t brightness, uint32_t state );
+ void DisplayPolicyBrightnessChangeDone(void* data, struct tizen_display_policy* displayPolicy, struct wl_surface* surface, int32_t brightness, uint32_t state);
public:
-
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetNativeWindow()
*/
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::CreateEglWindow()
*/
- EGLNativeWindowType CreateEglWindow( int width, int height ) override;
+ EGLNativeWindowType CreateEglWindow(int width, int height) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::DestroyEglWindow()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetEglWindowRotation()
*/
- void SetEglWindowRotation( int angle ) override;
+ void SetEglWindowRotation(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetEglWindowBufferTransform()
*/
- void SetEglWindowBufferTransform( int angle ) override;
+ void SetEglWindowBufferTransform(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetEglWindowTransform()
*/
- void SetEglWindowTransform( int angle ) override;
+ void SetEglWindowTransform(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::ResizeEglWindow()
*/
- void ResizeEglWindow( PositionSize positionSize ) override;
+ void ResizeEglWindow(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::IsEglWindowRotationSupported()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Move()
*/
- void Move( PositionSize positionSize ) override;
+ void Move(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Resize()
*/
- void Resize( PositionSize positionSize ) override;
+ void Resize(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::MoveResize()
*/
- void MoveResize( PositionSize positionSize ) override;
+ void MoveResize(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetClass()
*/
- void SetClass( const std::string& name, const std::string& className ) override;
+ void SetClass(const std::string& name, const std::string& className) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Raise()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetAvailableAnlges()
*/
- void SetAvailableAnlges( const std::vector< int >& angles ) override;
+ void SetAvailableAnlges(const std::vector<int>& angles) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetPreferredAngle()
*/
- void SetPreferredAngle( int angle ) override;
+ void SetPreferredAngle(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetAcceptFocus()
*/
- void SetAcceptFocus( bool accept ) override;
+ void SetAcceptFocus(bool accept) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Show()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetSupportedAuxiliaryHint()
*/
- std::string GetSupportedAuxiliaryHint( unsigned int index ) const override;
+ std::string GetSupportedAuxiliaryHint(unsigned int index) const override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::AddAuxiliaryHint()
*/
- unsigned int AddAuxiliaryHint( const std::string& hint, const std::string& value ) override;
+ unsigned int AddAuxiliaryHint(const std::string& hint, const std::string& value) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::RemoveAuxiliaryHint()
*/
- bool RemoveAuxiliaryHint( unsigned int id ) override;
+ bool RemoveAuxiliaryHint(unsigned int id) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetAuxiliaryHintValue()
*/
- bool SetAuxiliaryHintValue( unsigned int id, const std::string& value ) override;
+ bool SetAuxiliaryHintValue(unsigned int id, const std::string& value) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetAuxiliaryHintValue()
*/
- std::string GetAuxiliaryHintValue( unsigned int id ) const override;
+ std::string GetAuxiliaryHintValue(unsigned int id) const override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetAuxiliaryHintId()
*/
- unsigned int GetAuxiliaryHintId( const std::string& hint ) const override;
+ unsigned int GetAuxiliaryHintId(const std::string& hint) const override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetInputRegion()
*/
- void SetInputRegion( const Rect< int >& inputRegion ) override;
+ void SetInputRegion(const Rect<int>& inputRegion) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetType()
*/
- void SetType( Dali::WindowType type ) override;
+ void SetType(Dali::WindowType type) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetNotificationLevel()
*/
- bool SetNotificationLevel( Dali::WindowNotificationLevel level ) override;
+ bool SetNotificationLevel(Dali::WindowNotificationLevel level) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetNotificationLevel()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetOpaqueState()
*/
- void SetOpaqueState( bool opaque ) override;
+ void SetOpaqueState(bool opaque) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetScreenOffMode()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetBrightness()
*/
- bool SetBrightness( int brightness ) override;
+ bool SetBrightness(int brightness) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetBrightness()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GrabKey()
*/
- bool GrabKey( Dali::KEY key, KeyGrab::KeyGrabMode grabMode ) override;
+ bool GrabKey(Dali::KEY key, KeyGrab::KeyGrabMode grabMode) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::UngrabKey()
*/
- bool UngrabKey( Dali::KEY key ) override;
+ bool UngrabKey(Dali::KEY key) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GrabKeyList()
*/
- bool GrabKeyList( const Dali::Vector< Dali::KEY >& key, const Dali::Vector< KeyGrab::KeyGrabMode >& grabMode, Dali::Vector< bool >& result ) override;
+ bool GrabKeyList(const Dali::Vector<Dali::KEY>& key, const Dali::Vector<KeyGrab::KeyGrabMode>& grabMode, Dali::Vector<bool>& result) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::UngrabKeyList()
*/
- bool UngrabKeyList( const Dali::Vector< Dali::KEY >& key, Dali::Vector< bool >& result ) override;
+ bool UngrabKeyList(const Dali::Vector<Dali::KEY>& key, Dali::Vector<bool>& result) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetDpi()
*/
- void GetDpi( unsigned int& dpiHorizontal, unsigned int& dpiVertical ) override;
+ void GetDpi(unsigned int& dpiHorizontal, unsigned int& dpiVertical) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetOrientation()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetWindowRotationAngle()
*/
- void SetWindowRotationAngle( int degree ) override;
+ void SetWindowRotationAngle(int degree) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::WindowRotationCompleted()
*/
- void WindowRotationCompleted( int degree, int width, int height ) override;
+ void WindowRotationCompleted(int degree, int width, int height) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetTransparency()
*/
- void SetTransparency( bool transparent ) override;
+ void SetTransparency(bool transparent) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetParent()
*/
- void SetParent( WindowBase* parentWinBase ) override;
+ void SetParent(WindowBase* parentWinBase) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::CreateFrameRenderedSyncFence()
int CreateFramePresentedSyncFence() override;
private:
-
/**
* Second stage initialization
*/
- void Initialize( PositionSize positionSize, Any surface, bool isTransparent );
+ void Initialize(PositionSize positionSize, Any surface, bool isTransparent);
/**
* Initialize Ecore ElDBus
/**
* @brief Create window
*/
- void CreateWindow( PositionSize positionSize );
+ void CreateWindow(PositionSize positionSize);
protected:
-
// Undefined
WindowBaseEcoreWl(const WindowBaseEcoreWl&) = delete;
WindowBaseEcoreWl& operator=(const WindowBaseEcoreWl& rhs) = delete;
private:
+ typedef std::vector<std::pair<std::string, std::string> > AuxiliaryHints;
- typedef std::vector< std::pair< std::string, std::string > > AuxiliaryHints;
+ Dali::Vector<Ecore_Event_Handler*> mEcoreEventHandler;
- Dali::Vector< Ecore_Event_Handler* > mEcoreEventHandler;
+ Ecore_Wl_Window* mEcoreWindow;
+ wl_surface* mWlSurface;
+ wl_egl_window* mEglWindow;
+ wl_display* mDisplay;
+ wl_event_queue* mEventQueue;
+ tizen_policy* mTizenPolicy;
+ tizen_display_policy* mTizenDisplayPolicy;
- Ecore_Wl_Window* mEcoreWindow;
- wl_surface* mWlSurface;
- wl_egl_window* mEglWindow;
- wl_display* mDisplay;
- wl_event_queue* mEventQueue;
- tizen_policy* mTizenPolicy;
- tizen_display_policy* mTizenDisplayPolicy;
+ std::vector<std::string> mSupportedAuxiliaryHints;
+ AuxiliaryHints mAuxiliaryHints;
- std::vector< std::string > mSupportedAuxiliaryHints;
- AuxiliaryHints mAuxiliaryHints;
+ int mNotificationLevel;
+ uint32_t mNotificationChangeState;
+ bool mNotificationLevelChangeDone;
- int mNotificationLevel;
- uint32_t mNotificationChangeState;
- bool mNotificationLevelChangeDone;
+ int mScreenOffMode;
+ uint32_t mScreenOffModeChangeState;
+ bool mScreenOffModeChangeDone;
- int mScreenOffMode;
- uint32_t mScreenOffModeChangeState;
- bool mScreenOffModeChangeDone;
+ int mBrightness;
+ uint32_t mBrightnessChangeState;
+ bool mBrightnessChangeDone;
- int mBrightness;
- uint32_t mBrightnessChangeState;
- bool mBrightnessChangeDone;
+ bool mOwnSurface;
- bool mOwnSurface;
-
- int mWindowRotationAngle;
- int mScreenRotationAngle;
- int mSupportedPreProtation;
+ int mWindowRotationAngle;
+ int mScreenRotationAngle;
+ int mSupportedPreProtation;
#ifdef DALI_ELDBUS_AVAILABLE
- Eldbus_Connection* mSystemConnection;
+ Eldbus_Connection* mSystemConnection;
#endif // DALI_ELDBUS_AVAILABLE
-
};
} // namespace Adaptor
-} // namespace internal
+} // namespace Internal
} // namespace Dali
#define DALI_INTERNAL_WINDOWSYSTEM_TIZENWAYLAND_WINDOW_FACTORY_ECORE_WL_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
class WindowFactoryEcoreWl : public WindowFactory
{
public:
- std::unique_ptr< WindowBase > CreateWindowBase( Dali::PositionSize positionSize, Any surface, bool isTransparent ) override;
+ std::unique_ptr<WindowBase> CreateWindowBase(Dali::PositionSize positionSize, Any surface, bool isTransparent) override;
};
} // namespace Adaptor
#define DALI_INTERNAL_WINDOWSYSTEM_TIZENWAYLAND_RENDER_SURFACE_FACTORY_ECORE_WL2_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
class RenderSurfaceFactoryEcoreWl2 : public RenderSurfaceFactory
{
public:
- std::unique_ptr< WindowRenderSurface > CreateWindowRenderSurface( Dali::PositionSize positionSize, Any surface, bool isTransparent = false ) override;
+ std::unique_ptr<WindowRenderSurface> CreateWindowRenderSurface(Dali::PositionSize positionSize, Any surface, bool isTransparent = false) override;
- std::unique_ptr< PixmapRenderSurface > CreatePixmapRenderSurface( Dali::PositionSize positionSize, Any surface, bool isTransparent = false ) override;
+ std::unique_ptr<PixmapRenderSurface> CreatePixmapRenderSurface(Dali::PositionSize positionSize, Any surface, bool isTransparent = false) override;
- std::unique_ptr< NativeRenderSurface > CreateNativeRenderSurface( SurfaceSize surfaceSize, Any surface, bool isTransparent = false ) override;
+ std::unique_ptr<NativeRenderSurface> CreateNativeRenderSurface(SurfaceSize surfaceSize, Any surface, bool isTransparent = false) override;
};
} // namespace Adaptor
#define DALI_INTERNAL_WINDOWSYSTEM_TIZENWAYLAND_WINDOW_BASE_ECORE_WL2_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
class WindowRenderSurface;
class WindowRenderSurfaceEcoreWl2;
class WindowBaseEcoreWl2 : public WindowBase
{
public:
-
/**
* @brief Constructor
*/
- WindowBaseEcoreWl2( PositionSize positionSize, Any surface, bool isTransparent );
+ WindowBaseEcoreWl2(PositionSize positionSize, Any surface, bool isTransparent);
/**
* @brief Destructor
virtual ~WindowBaseEcoreWl2();
public:
-
/**
* @brief Called when the window iconify state is changed.
*/
- Eina_Bool OnIconifyStateChanged( void* data, int type, void* event );
+ Eina_Bool OnIconifyStateChanged(void* data, int type, void* event);
/**
* @brief Called when the window gains focus.
*/
- Eina_Bool OnFocusIn( void* data, int type, void* event );
+ Eina_Bool OnFocusIn(void* data, int type, void* event);
/**
* @brief Called when the window loses focus.
*/
- Eina_Bool OnFocusOut( void* data, int type, void* event );
+ Eina_Bool OnFocusOut(void* data, int type, void* event);
/**
* @brief Called when the output is transformed.
*/
- Eina_Bool OnOutputTransform( void* data, int type, void* event );
+ Eina_Bool OnOutputTransform(void* data, int type, void* event);
/**
* @brief Called when the output transform should be ignored.
*/
- Eina_Bool OnIgnoreOutputTransform( void* data, int type, void* event );
+ Eina_Bool OnIgnoreOutputTransform(void* data, int type, void* event);
/**
* @brief Called when a rotation event is recevied.
*/
- void OnRotation( void* data, int type, void* event );
+ void OnRotation(void* data, int type, void* event);
/**
* @brief Called when a configure event is recevied.
*/
- void OnConfiguration( void* data, int type, void* event );
+ void OnConfiguration(void* data, int type, void* event);
/**
* @brief Called when a touch down is received.
*/
- void OnMouseButtonDown( void* data, int type, void* event );
+ void OnMouseButtonDown(void* data, int type, void* event);
/**
* @brief Called when a touch up is received.
*/
- void OnMouseButtonUp( void* data, int type, void* event );
+ void OnMouseButtonUp(void* data, int type, void* event);
/**
* @brief Called when a touch motion is received.
*/
- void OnMouseButtonMove( void* data, int type, void* event );
+ void OnMouseButtonMove(void* data, int type, void* event);
/**
* @brief Called when a touch is canceled.
*/
- void OnMouseButtonCancel( void* data, int type, void* event );
+ void OnMouseButtonCancel(void* data, int type, void* event);
/**
* @brief Called when a mouse wheel is received.
*/
- void OnMouseWheel( void* data, int type, void* event );
+ void OnMouseWheel(void* data, int type, void* event);
/**
* @brief Called when a detent rotation event is recevied.
*/
- void OnDetentRotation( void* data, int type, void* event );
+ void OnDetentRotation(void* data, int type, void* event);
/**
* @brief Called when a key down is received.
*/
- void OnKeyDown( void* data, int type, void* event );
+ void OnKeyDown(void* data, int type, void* event);
/**
* @brief Called when a key up is received.
*/
- void OnKeyUp( void* data, int type, void* event );
+ void OnKeyUp(void* data, int type, void* event);
/**
* @brief Called when the source window notifies us the content in clipboard is selected.
*/
- void OnDataSend( void* data, int type, void* event );
+ void OnDataSend(void* data, int type, void* event);
/**
* @brief Called when the source window sends us about the selected content.
*/
- void OnDataReceive( void* data, int type, void* event );
+ void OnDataReceive(void* data, int type, void* event);
/**
* @brief Called when a font name is changed.
/**
* @brief Called when a transition effect-start/end event is received.
*/
- void OnTransitionEffectEvent( WindowEffectState state, WindowEffectType type );
+ void OnTransitionEffectEvent(WindowEffectState state, WindowEffectType type);
/**
* @brief Called when a keyboard repeat event is changed.
/**
* @brief Called when Ecore ElDBus accessibility event is received.
*/
- void OnEcoreElDBusAccessibilityNotification( void* context, const Eldbus_Message* message );
+ void OnEcoreElDBusAccessibilityNotification(void* context, const Eldbus_Message* message);
#endif
/**
* @brief Called when a keymap is changed.
*/
- void KeymapChanged(void *data, int type, void *event);
+ void KeymapChanged(void* data, int type, void* event);
/**
* @brief RegistryGlobalCallback
*/
- void RegistryGlobalCallback( void* data, struct wl_registry *registry, uint32_t name, const char* interface, uint32_t version );
+ void RegistryGlobalCallback(void* data, struct wl_registry* registry, uint32_t name, const char* interface, uint32_t version);
/**
* @brief RegistryGlobalCallbackRemove
*/
- void RegistryGlobalCallbackRemove( void* data, struct wl_registry* registry, uint32_t id );
+ void RegistryGlobalCallbackRemove(void* data, struct wl_registry* registry, uint32_t id);
/**
* @brief TizenPolicyNotificationChangeDone
*/
- void TizenPolicyNotificationChangeDone(void* data, struct tizen_policy* tizenPolicy, struct wl_surface* surface, int32_t level, uint32_t state );
+ void TizenPolicyNotificationChangeDone(void* data, struct tizen_policy* tizenPolicy, struct wl_surface* surface, int32_t level, uint32_t state);
/**
* @brief TizenPolicyScreenModeChangeDone
*/
- void TizenPolicyScreenModeChangeDone( void* data, struct tizen_policy* tizenPolicy, struct wl_surface* surface, uint32_t mode, uint32_t state );
+ void TizenPolicyScreenModeChangeDone(void* data, struct tizen_policy* tizenPolicy, struct wl_surface* surface, uint32_t mode, uint32_t state);
/**
* @brief DisplayPolicyBrightnessChangeDone
*/
- void DisplayPolicyBrightnessChangeDone( void* data, struct tizen_display_policy *displayPolicy, struct wl_surface* surface, int32_t brightness, uint32_t state );
-
+ void DisplayPolicyBrightnessChangeDone(void* data, struct tizen_display_policy* displayPolicy, struct wl_surface* surface, int32_t brightness, uint32_t state);
/**
* @brief Gets the key code by keyName.
*/
- void GetKeyCode( std::string keyName, int32_t& keyCode );
+ void GetKeyCode(std::string keyName, int32_t& keyCode);
public:
-
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetNativeWindow()
*/
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::CreateEglWindow()
*/
- EGLNativeWindowType CreateEglWindow( int width, int height ) override;
+ EGLNativeWindowType CreateEglWindow(int width, int height) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::DestroyEglWindow()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetEglWindowRotation()
*/
- void SetEglWindowRotation( int angle ) override;
+ void SetEglWindowRotation(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetEglWindowBufferTransform()
*/
- void SetEglWindowBufferTransform( int angle ) override;
+ void SetEglWindowBufferTransform(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetEglWindowTransform()
*/
- void SetEglWindowTransform( int angle ) override;
+ void SetEglWindowTransform(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::ResizeEglWindow()
*/
- void ResizeEglWindow( PositionSize positionSize ) override;
+ void ResizeEglWindow(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::IsEglWindowRotationSupported()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Move()
*/
- void Move( PositionSize positionSize ) override;
+ void Move(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Resize()
*/
- void Resize( PositionSize positionSize ) override;
+ void Resize(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::MoveResize()
*/
- void MoveResize( PositionSize positionSize ) override;
+ void MoveResize(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetClass()
*/
- void SetClass( const std::string& name, const std::string& className ) override;
+ void SetClass(const std::string& name, const std::string& className) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Raise()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetAvailableAnlges()
*/
- void SetAvailableAnlges( const std::vector< int >& angles ) override;
+ void SetAvailableAnlges(const std::vector<int>& angles) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetPreferredAngle()
*/
- void SetPreferredAngle( int angle ) override;
+ void SetPreferredAngle(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetAcceptFocus()
*/
- void SetAcceptFocus( bool accept ) override;
+ void SetAcceptFocus(bool accept) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Show()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetSupportedAuxiliaryHint()
*/
- std::string GetSupportedAuxiliaryHint( unsigned int index ) const override;
+ std::string GetSupportedAuxiliaryHint(unsigned int index) const override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::AddAuxiliaryHint()
*/
- unsigned int AddAuxiliaryHint( const std::string& hint, const std::string& value ) override;
+ unsigned int AddAuxiliaryHint(const std::string& hint, const std::string& value) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::RemoveAuxiliaryHint()
*/
- bool RemoveAuxiliaryHint( unsigned int id ) override;
+ bool RemoveAuxiliaryHint(unsigned int id) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetAuxiliaryHintValue()
*/
- bool SetAuxiliaryHintValue( unsigned int id, const std::string& value ) override;
+ bool SetAuxiliaryHintValue(unsigned int id, const std::string& value) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetAuxiliaryHintValue()
*/
- std::string GetAuxiliaryHintValue( unsigned int id ) const override;
+ std::string GetAuxiliaryHintValue(unsigned int id) const override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetAuxiliaryHintId()
*/
- unsigned int GetAuxiliaryHintId( const std::string& hint ) const override;
+ unsigned int GetAuxiliaryHintId(const std::string& hint) const override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetInputRegion()
*/
- void SetInputRegion( const Rect< int >& inputRegion ) override;
+ void SetInputRegion(const Rect<int>& inputRegion) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetType()
*/
- void SetType( Dali::WindowType type ) override;
+ void SetType(Dali::WindowType type) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetNotificationLevel()
*/
- bool SetNotificationLevel( Dali::WindowNotificationLevel level ) override;
+ bool SetNotificationLevel(Dali::WindowNotificationLevel level) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetNotificationLevel()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetOpaqueState()
*/
- void SetOpaqueState( bool opaque ) override;
+ void SetOpaqueState(bool opaque) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetScreenOffMode()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetBrightness()
*/
- bool SetBrightness( int brightness ) override;
+ bool SetBrightness(int brightness) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetBrightness()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GrabKey()
*/
- bool GrabKey( Dali::KEY key, KeyGrab::KeyGrabMode grabMode ) override;
+ bool GrabKey(Dali::KEY key, KeyGrab::KeyGrabMode grabMode) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::UngrabKey()
*/
- bool UngrabKey( Dali::KEY key ) override;
+ bool UngrabKey(Dali::KEY key) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GrabKeyList()
*/
- bool GrabKeyList( const Dali::Vector< Dali::KEY >& key, const Dali::Vector< KeyGrab::KeyGrabMode >& grabMode, Dali::Vector< bool >& result ) override;
+ bool GrabKeyList(const Dali::Vector<Dali::KEY>& key, const Dali::Vector<KeyGrab::KeyGrabMode>& grabMode, Dali::Vector<bool>& result) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::UngrabKeyList()
*/
- bool UngrabKeyList( const Dali::Vector< Dali::KEY >& key, Dali::Vector< bool >& result ) override;
+ bool UngrabKeyList(const Dali::Vector<Dali::KEY>& key, Dali::Vector<bool>& result) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetDpi()
*/
- void GetDpi( unsigned int& dpiHorizontal, unsigned int& dpiVertical ) override;
+ void GetDpi(unsigned int& dpiHorizontal, unsigned int& dpiVertical) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetOrientation()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetWindowRotationAngle()
*/
- void SetWindowRotationAngle( int degree ) override;
+ void SetWindowRotationAngle(int degree) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::WindowRotationCompleted()
*/
- void WindowRotationCompleted( int degree, int width, int height ) override;
+ void WindowRotationCompleted(int degree, int width, int height) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetTransparency()
*/
- void SetTransparency( bool transparent ) override;
+ void SetTransparency(bool transparent) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetParent()
*/
- void SetParent( WindowBase* parentWinBase ) override;
+ void SetParent(WindowBase* parentWinBase) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::CreateFrameRenderedSyncFence()
int CreateFramePresentedSyncFence() override;
private:
-
/**
* Second stage initialization
*/
- void Initialize( PositionSize positionSize, Any surface, bool isTransparent );
+ void Initialize(PositionSize positionSize, Any surface, bool isTransparent);
/**
* Initialize Ecore ElDBus
/**
* @brief Create window
*/
- void CreateWindow( PositionSize positionSize );
+ void CreateWindow(PositionSize positionSize);
protected:
-
// Undefined
WindowBaseEcoreWl2(const WindowBaseEcoreWl2&) = delete;
WindowBaseEcoreWl2& operator=(const WindowBaseEcoreWl2& rhs) = delete;
private:
+ typedef std::vector<std::pair<std::string, std::string> > AuxiliaryHints;
- typedef std::vector< std::pair< std::string, std::string > > AuxiliaryHints;
-
- Dali::Vector< Ecore_Event_Handler* > mEcoreEventHandler;
+ Dali::Vector<Ecore_Event_Handler*> mEcoreEventHandler;
- Ecore_Wl2_Window* mEcoreWindow;
- wl_surface* mWlSurface;
- wl_egl_window* mEglWindow;
- wl_display* mDisplay;
- wl_event_queue* mEventQueue;
- tizen_policy* mTizenPolicy;
- tizen_display_policy* mTizenDisplayPolicy;
- xkb_keymap* mKeyMap;
+ Ecore_Wl2_Window* mEcoreWindow;
+ wl_surface* mWlSurface;
+ wl_egl_window* mEglWindow;
+ wl_display* mDisplay;
+ wl_event_queue* mEventQueue;
+ tizen_policy* mTizenPolicy;
+ tizen_display_policy* mTizenDisplayPolicy;
+ xkb_keymap* mKeyMap;
- std::vector< std::string > mSupportedAuxiliaryHints;
- AuxiliaryHints mAuxiliaryHints;
+ std::vector<std::string> mSupportedAuxiliaryHints;
+ AuxiliaryHints mAuxiliaryHints;
- int mNotificationLevel;
- uint32_t mNotificationChangeState;
- bool mNotificationLevelChangeDone;
+ int mNotificationLevel;
+ uint32_t mNotificationChangeState;
+ bool mNotificationLevelChangeDone;
- int mScreenOffMode;
- uint32_t mScreenOffModeChangeState;
- bool mScreenOffModeChangeDone;
+ int mScreenOffMode;
+ uint32_t mScreenOffModeChangeState;
+ bool mScreenOffModeChangeDone;
- int mBrightness;
- uint32_t mBrightnessChangeState;
- bool mBrightnessChangeDone;
+ int mBrightness;
+ uint32_t mBrightnessChangeState;
+ bool mBrightnessChangeDone;
- bool mVisible:1;
- Dali::PositionSize mWindowPositionSize;
+ bool mVisible : 1;
+ Dali::PositionSize mWindowPositionSize;
- bool mOwnSurface;
+ bool mOwnSurface;
- volatile uint32_t mMoveResizeSerial;
- uint32_t mLastSubmittedMoveResizeSerial;
+ volatile uint32_t mMoveResizeSerial;
+ uint32_t mLastSubmittedMoveResizeSerial;
- int mWindowRotationAngle;
- int mScreenRotationAngle;
- int mSupportedPreProtation;
+ int mWindowRotationAngle;
+ int mScreenRotationAngle;
+ int mSupportedPreProtation;
#ifdef DALI_ELDBUS_AVAILABLE
- Eldbus_Connection* mSystemConnection;
+ Eldbus_Connection* mSystemConnection;
#endif // DALI_ELDBUS_AVAILABLE
};
} // namespace Adaptor
-} // namespace internal
+} // namespace Internal
} // namespace Dali
#define DALI_INTERNAL_WINDOWSYSTEM_TIZENWAYLAND_WINDOW_FACTORY_ECORE_WL2_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
class WindowFactoryEcoreWl2 : public WindowFactory
{
public:
- std::unique_ptr< WindowBase > CreateWindowBase( Dali::PositionSize positionSize, Any surface, bool isTransparent ) override;
+ std::unique_ptr<WindowBase> CreateWindowBase(Dali::PositionSize positionSize, Any surface, bool isTransparent) override;
};
} // namespace Adaptor
#define DALI_INTERNAL_WINDOWSYSTEM_TIZENWAYLAND_NATIVE_SURFACE_ECORE_WL_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
+#include <dali/devel-api/threading/conditional-wait.h>
#include <tbm_surface.h>
#include <tbm_surface_queue.h>
-#include <dali/devel-api/threading/conditional-wait.h>
// INTERNAL INCLUDES
-#include <dali/public-api/dali-adaptor-common.h>
#include <dali/integration-api/adaptor-framework/egl-interface.h>
#include <dali/integration-api/adaptor-framework/native-render-surface.h>
#include <dali/internal/graphics/common/graphics-interface.h>
+#include <dali/public-api/dali-adaptor-common.h>
namespace Dali
{
-
class DisplayConnection;
class EglInterface;
class NativeRenderSurfaceEcoreWl : public Dali::NativeRenderSurface
{
public:
-
/**
* Uses an Wayland surface to render to.
* @param [in] surfaceSize the size of the surface
* @param [in] surface the native surface handle
* @param [in] isTransparent if it is true, surface has 32 bit color depth, otherwise, 24 bit
*/
- NativeRenderSurfaceEcoreWl( SurfaceSize surfaceSize, Any surface, bool isTransparent = false );
+ NativeRenderSurfaceEcoreWl(SurfaceSize surfaceSize, Any surface, bool isTransparent = false);
/**
* @brief Destructor
virtual ~NativeRenderSurfaceEcoreWl();
public: // from WindowRenderSurface
-
/**
* @copydoc Dali::NativeRenderSurface::GetSurface()
*/
/**
* @copydoc Dali::NativeRenderSurface::SetRenderNotification()
*/
- void SetRenderNotification( TriggerEventInterface* renderNotification ) override;
+ void SetRenderNotification(TriggerEventInterface* renderNotification) override;
/**
* @copydoc Dali::NativeRenderSurface::WaitUntilSurfaceReplaced()
virtual Any GetNativeRenderable() override;
public: // from Dali::RenderSurfaceInterface
-
/**
* @copydoc Dali::RenderSurfaceInterface::GetPositionSize()
*/
/**
* @copydoc Dali::RenderSurfaceInterface::GetDpi()
*/
- void GetDpi( unsigned int& dpiHorizontal, unsigned int& dpiVertical ) override;
+ void GetDpi(unsigned int& dpiHorizontal, unsigned int& dpiVertical) override;
/**
* @copydoc Dali::RenderSurfaceInterface::GetOrientation()
/**
* @copydoc Dali::RenderSurfaceInterface::MoveResize()
*/
- void MoveResize( Dali::PositionSize positionSize) override;
+ void MoveResize(Dali::PositionSize positionSize) override;
/**
* @copydoc Dali::RenderSurfaceInterface::StartRender()
/**
* @copydoc Dali::RenderSurfaceInterface::PreRender()
*/
- bool PreRender( bool resizingSurface, const std::vector<Rect<int>>& damagedRects, Rect<int>& clippingRect ) override;
+ bool PreRender(bool resizingSurface, const std::vector<Rect<int>>& damagedRects, Rect<int>& clippingRect) override;
/**
* @copydoc Dali::RenderSurfaceInterface::PostRender()
*/
- void PostRender( bool renderToFbo, bool replacingSurface, bool resizingSurface, const std::vector<Rect<int>>& damagedRects ) override;
+ void PostRender(bool renderToFbo, bool replacingSurface, bool resizingSurface, const std::vector<Rect<int>>& damagedRects) override;
/**
* @copydoc Dali::RenderSurfaceInterface::StopRender()
/**
* @copydoc Dali::RenderSurfaceInterface::SetThreadSynchronization
*/
- void SetThreadSynchronization( ThreadSynchronizationInterface& threadSynchronization )override;
+ void SetThreadSynchronization(ThreadSynchronizationInterface& threadSynchronization) override;
/**
* @copydoc Dali::RenderSurfaceInterface::GetSurfaceType()
Integration::StencilBufferAvailable GetStencilBufferRequired() override;
private:
-
/**
* @copydoc Dali::RenderSurfaceInterface::ReleaseLock()
*/
void ReleaseDrawable() override;
private: // Data
-
- SurfaceSize mSurfaceSize;
- TriggerEventInterface* mRenderNotification;
- Internal::Adaptor::GraphicsInterface* mGraphics; ///< The graphics interface
- EglInterface* mEGL;
- EGLSurface mEGLSurface;
- EGLContext mEGLContext;
- ColorDepth mColorDepth;
- tbm_format mTbmFormat;
- bool mOwnSurface;
- bool mDrawableCompleted;
-
- tbm_surface_queue_h mTbmQueue;
- tbm_surface_h mConsumeSurface;
- ThreadSynchronizationInterface* mThreadSynchronization; ///< A pointer to the thread-synchronization
- ConditionalWait mTbmSurfaceCondition;
-
+ SurfaceSize mSurfaceSize;
+ TriggerEventInterface* mRenderNotification;
+ Internal::Adaptor::GraphicsInterface* mGraphics; ///< The graphics interface
+ EglInterface* mEGL;
+ EGLSurface mEGLSurface;
+ EGLContext mEGLContext;
+ ColorDepth mColorDepth;
+ tbm_format mTbmFormat;
+ bool mOwnSurface;
+ bool mDrawableCompleted;
+
+ tbm_surface_queue_h mTbmQueue;
+ tbm_surface_h mConsumeSurface;
+ ThreadSynchronizationInterface* mThreadSynchronization; ///< A pointer to the thread-synchronization
+ ConditionalWait mTbmSurfaceCondition;
};
} // namespace Dali
#define DALI_INTERNAL_WINDOWSYSTEM_ECOREX_DISPLAY_CONNECTION_FACTORY_ECORE_X_H
/*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class DisplayConnectionFactoryX : public DisplayConnectionFactory
{
public:
} // namespace Dali
-
#endif // DALI_INTERNAL_WINDOWSYSTEM_ECOREX_DISPLAY_CONNECTION_FACTORY_ECORE_X_H
#define DALI_INTERNAL_WINDOWSYSTEM_ECOREX_DISPLAY_CONNECTION_IMPL_ECORE_X_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
class DisplayConnection;
namespace Internal
{
-
namespace Adaptor
{
-
-
class Impl
{
public:
-
- XDisplay* mDisplay; ///< X-display for rendering
+ XDisplay* mDisplay; ///< X-display for rendering
};
-
/**
* DisplayConnection implementation
*/
class DisplayConnectionX11 : public Dali::Internal::Adaptor::DisplayConnection
{
public:
-
/**
* @brief Default constructor
*/
static DisplayConnection* New();
public:
-
/**
* @copydoc Dali::DisplayConnection::GetDisplay
*/
/**
* @copydoc Dali::Internal::Adaptor::DisplayConnection::SetSurfaceType
*/
- void SetSurfaceType( Dali::RenderSurfaceInterface::Type type );
+ void SetSurfaceType(Dali::RenderSurfaceInterface::Type type);
/**
* @copydoc Dali::Internal::Adaptor::DisplayConnection::SetGraphicsInterface
*/
- void SetGraphicsInterface( GraphicsInterface& graphics );
+ void SetGraphicsInterface(GraphicsInterface& graphics);
public:
-
/**
* Destructor
*/
virtual ~DisplayConnectionX11();
protected:
-
// Undefined
DisplayConnectionX11(const DisplayConnectionX11&) = delete;
DisplayConnectionX11& operator=(const DisplayConnectionX11& rhs) = delete;
private:
-
GraphicsInterface* mGraphics; ///< The graphics interface
public:
-
- XDisplay* mDisplay; ///< X-display for rendering
-
+ XDisplay* mDisplay; ///< X-display for rendering
};
} // namespace Adaptor
-} // namespace internal
+} // namespace Internal
} // namespace Dali
#define DALI_X11_TYPES_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
-typedef ::Pixmap XPixmap;
-typedef ::Window XWindow;
+typedef ::Pixmap XPixmap;
+typedef ::Window XWindow;
typedef ::Display XDisplay;
-typedef ::Screen XScreen;
+typedef ::Screen XScreen;
} // namespace Dali
#define DALI_ECORE_X_PIXMAP_RENDER_SURFACE_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/devel-api/threading/conditional-wait.h>
// INTERNAL INCLUDES
-#include <dali/public-api/dali-adaptor-common.h>
#include <dali/integration-api/adaptor-framework/egl-interface.h>
#include <dali/internal/graphics/common/graphics-interface.h>
#include <dali/internal/graphics/gles/egl-implementation.h>
#include <dali/internal/system/linux/dali-ecore-x.h>
#include <dali/internal/window-system/common/pixmap-render-surface.h>
#include <dali/internal/window-system/ubuntu-x11/ecore-x-types.h>
+#include <dali/public-api/dali-adaptor-common.h>
namespace Dali
{
{
namespace Adaptor
{
-
/**
* Ecore X11 Pixmap implementation of render surface.
*/
class PixmapRenderSurfaceEcoreX : public PixmapRenderSurface
{
public:
-
/**
* Uses an X11 surface to render to.
* @param [in] positionSize the position and size of the surface
* @param [in] surface can be a X-window or X-pixmap (type must be unsigned int).
* @param [in] isTransparent if it is true, surface has 32 bit color depth, otherwise, 24 bit
*/
- PixmapRenderSurfaceEcoreX( Dali::PositionSize positionSize, Any surface, bool isTransparent = false );
+ PixmapRenderSurfaceEcoreX(Dali::PositionSize positionSize, Any surface, bool isTransparent = false);
/**
* @brief Destructor
virtual ~PixmapRenderSurfaceEcoreX();
public: // from WindowRenderSurface
-
/**
* @copydoc Dali::Internal::Adaptor::PixmapRenderSurface::GetSurface()
*/
/**
* @copydoc Dali::Internal::Adaptor::PixmapRenderSurface::SetRenderNotification()
*/
- void SetRenderNotification( TriggerEventInterface* renderNotification ) override;
+ void SetRenderNotification(TriggerEventInterface* renderNotification) override;
public: // from Dali::RenderSurfaceInterface
-
/**
* @copydoc Dali::RenderSurfaceInterface::GetPositionSize()
*/
/**
* @copydoc Dali::RenderSurfaceInterface::GetDpi()
*/
- void GetDpi( unsigned int& dpiHorizontal, unsigned int& dpiVertical ) override;
+ void GetDpi(unsigned int& dpiHorizontal, unsigned int& dpiVertical) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetOrientation()
/**
* @copydoc Dali::RenderSurfaceInterface::MoveResize()
*/
- virtual void MoveResize( Dali::PositionSize positionSize) override {}
+ virtual void MoveResize(Dali::PositionSize positionSize) override
+ {
+ }
/**
* @copydoc Dali::RenderSurfaceInterface::StartRender()
/**
* @copydoc Dali::RenderSurfaceInterface::PreRender()
*/
- bool PreRender( bool resizingSurface, const std::vector<Rect<int>>& damagedRects, Rect<int>& clippingRect ) override;
+ bool PreRender(bool resizingSurface, const std::vector<Rect<int>>& damagedRects, Rect<int>& clippingRect) override;
/**
* @copydoc Dali::RenderSurfaceInterface::PostRender()
*/
- void PostRender( bool renderToFbo, bool replacingSurface, bool resizingSurface, const std::vector<Rect<int>>& damagedRects ) override;
+ void PostRender(bool renderToFbo, bool replacingSurface, bool resizingSurface, const std::vector<Rect<int>>& damagedRects) override;
/**
* @copydoc Dali::RenderSurfaceInterface::StopRender()
/**
* @copydoc Dali::RenderSurfaceInterface::SetThreadSynchronization
*/
- void SetThreadSynchronization( ThreadSynchronizationInterface& threadSynchronization ) override;
+ void SetThreadSynchronization(ThreadSynchronizationInterface& threadSynchronization) override;
/**
* @copydoc Dali::RenderSurfaceInterface::GetSurfaceType()
void MakeContextCurrent() override;
private: // from PixmapRenderSurface
-
/**
* @copydoc Dali::RenderSurfaceInterface::ReleaseLock()
*/
/**
* @copydoc Dali::Internal::Adaptor::PixmapRenderSurface::Initialize()
*/
- void Initialize( Any surface ) override;
+ void Initialize(Any surface) override;
/**
* @copydoc Dali::Internal::Adaptor::PixmapRenderSurface::Initialize()
/**
* @copydoc Dali::Internal::Adaptor::PixmapRenderSurface::Initialize()
*/
- void UseExistingRenderable( unsigned int surfaceId ) override;
+ void UseExistingRenderable(unsigned int surfaceId) override;
private:
-
/**
* Get the surface id if the surface parameter is not empty
* @param surface Any containing a surface id, or can be empty
* @return surface id, or zero if surface is empty
*/
- unsigned int GetSurfaceId( Any surface ) const;
+ unsigned int GetSurfaceId(Any surface) const;
private: // Data
-
- static const int BUFFER_COUNT = 2;
- GraphicsInterface* mGraphics; ///< Graphics interface
- Dali::DisplayConnection* mDisplayConnection; ///< Display connection
- PositionSize mPosition; ///< Position
- TriggerEventInterface* mRenderNotification; ///< Render notification trigger
- ColorDepth mColorDepth; ///< Color depth of surface (32 bit or 24 bit)
- bool mOwnSurface; ///< Whether we own the surface (responsible for deleting it)
+ static const int BUFFER_COUNT = 2;
+ GraphicsInterface* mGraphics; ///< Graphics interface
+ Dali::DisplayConnection* mDisplayConnection; ///< Display connection
+ PositionSize mPosition; ///< Position
+ TriggerEventInterface* mRenderNotification; ///< Render notification trigger
+ ColorDepth mColorDepth; ///< Color depth of surface (32 bit or 24 bit)
+ bool mOwnSurface; ///< Whether we own the surface (responsible for deleting it)
int mProduceBufferIndex;
int mConsumeBufferIndex;
- XPixmap mX11Pixmaps[BUFFER_COUNT]; ///< X-Pixmap
+ XPixmap mX11Pixmaps[BUFFER_COUNT]; ///< X-Pixmap
EGLSurface mEglSurfaces[BUFFER_COUNT];
- ThreadSynchronizationInterface* mThreadSynchronization; ///< A pointer to the thread-synchronization
- ConditionalWait mPixmapCondition; ///< condition to share pixmap
+ ThreadSynchronizationInterface* mThreadSynchronization; ///< A pointer to the thread-synchronization
+ ConditionalWait mPixmapCondition; ///< condition to share pixmap
};
} // namespace Adaptor
-} // namespace internal
+} // namespace Internal
} // namespace Dali
#define DALI_INTERNAL_WINDOWSYSTEM_ECOREX_RENDER_SURFACE_FACTORY_ECORE_X_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
class RenderSurfaceFactoryEcoreX : public RenderSurfaceFactory
{
public:
- std::unique_ptr< WindowRenderSurface > CreateWindowRenderSurface( Dali::PositionSize positionSize, Any surface, bool isTransparent = false ) override;
+ std::unique_ptr<WindowRenderSurface> CreateWindowRenderSurface(Dali::PositionSize positionSize, Any surface, bool isTransparent = false) override;
- std::unique_ptr< PixmapRenderSurface > CreatePixmapRenderSurface( Dali::PositionSize positionSize, Any surface, bool isTransparent = false ) override;
+ std::unique_ptr<PixmapRenderSurface> CreatePixmapRenderSurface(Dali::PositionSize positionSize, Any surface, bool isTransparent = false) override;
- std::unique_ptr< NativeRenderSurface > CreateNativeRenderSurface( SurfaceSize surfaceSize, Any surface, bool isTransparent = false ) override;
+ std::unique_ptr<NativeRenderSurface> CreateNativeRenderSurface(SurfaceSize surfaceSize, Any surface, bool isTransparent = false) override;
};
} // namespace Adaptor
#define DALI_INTERNAL_WINDOWSYSTEM_ECOREX_WINDOW_BASE_ECORE_X_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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 <dali/internal/window-system/common/window-base.h>
// EXTERNAL HEADERS
-#include <dali/internal/system/linux/dali-ecore.h>
#include <dali/internal/system/linux/dali-ecore-x.h>
+#include <dali/internal/system/linux/dali-ecore.h>
namespace Dali
{
{
namespace Adaptor
{
-
/**
* WindowBaseEcoreX class provides an WindowBase EcoreX implementation.
*/
class WindowBaseEcoreX : public WindowBase
{
public:
-
/**
* @brief Constructor
*/
- WindowBaseEcoreX( PositionSize positionSize, Any surface, bool isTransparent );
+ WindowBaseEcoreX(PositionSize positionSize, Any surface, bool isTransparent);
/**
* @brief Destructor
virtual ~WindowBaseEcoreX();
public:
-
/**
* @brief Called when the window property is changed.
*/
- Eina_Bool OnWindowPropertyChanged( void* data, int type, void* event );
+ Eina_Bool OnWindowPropertyChanged(void* data, int type, void* event);
/**
* @brief Called when the window receives a delete request
/**
* @brief Called when the window gains focus.
*/
- void OnFocusIn( void* data, int type, void* event );
+ void OnFocusIn(void* data, int type, void* event);
/**
* @brief Called when the window loses focus.
*/
- void OnFocusOut( void* data, int type, void* event );
+ void OnFocusOut(void* data, int type, void* event);
/**
* @brief Called when the window is damaged.
*/
- void OnWindowDamaged( void* data, int type, void* event );
+ void OnWindowDamaged(void* data, int type, void* event);
/**
* @brief Called when a touch down is received.
*/
- void OnMouseButtonDown( void* data, int type, void* event );
+ void OnMouseButtonDown(void* data, int type, void* event);
/**
* @brief Called when a touch up is received.
*/
- void OnMouseButtonUp( void* data, int type, void* event );
+ void OnMouseButtonUp(void* data, int type, void* event);
/**
* @brief Called when a touch motion is received.
*/
- void OnMouseButtonMove( void* data, int type, void* event );
+ void OnMouseButtonMove(void* data, int type, void* event);
/**
* @brief Called when a mouse wheel is received.
*/
- void OnMouseWheel( void* data, int type, void* event );
+ void OnMouseWheel(void* data, int type, void* event);
/**
* @brief Called when a key down is received.
*/
- void OnKeyDown( void* data, int type, void* event );
+ void OnKeyDown(void* data, int type, void* event);
/**
* @brief Called when a key up is received.
*/
- void OnKeyUp( void* data, int type, void* event );
+ void OnKeyUp(void* data, int type, void* event);
/**
* @brief Called when the source window notifies us the content in clipboard is selected.
*/
- void OnSelectionClear( void* data, int type, void* event );
+ void OnSelectionClear(void* data, int type, void* event);
/**
* @brief Called when the source window sends us about the selected content.
*/
- void OnSelectionNotify( void* data, int type, void* event );
+ void OnSelectionNotify(void* data, int type, void* event);
public:
-
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetNativeWindow()
*/
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::CreateEglWindow()
*/
- EGLNativeWindowType CreateEglWindow( int width, int height ) override;
+ EGLNativeWindowType CreateEglWindow(int width, int height) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::DestroyEglWindow()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetEglWindowRotation()
*/
- void SetEglWindowRotation( int angle ) override;
+ void SetEglWindowRotation(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetEglWindowBufferTransform()
*/
- void SetEglWindowBufferTransform( int angle ) override;
+ void SetEglWindowBufferTransform(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetEglWindowTransform()
*/
- void SetEglWindowTransform( int angle ) override;
+ void SetEglWindowTransform(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::ResizeEglWindow()
*/
- void ResizeEglWindow( PositionSize positionSize ) override;
+ void ResizeEglWindow(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::IsEglWindowRotationSupported()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Move()
*/
- void Move( PositionSize positionSize ) override;
+ void Move(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Resize()
*/
- void Resize( PositionSize positionSize ) override;
+ void Resize(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::MoveResize()
*/
- void MoveResize( PositionSize positionSize ) override;
+ void MoveResize(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetClass()
*/
- void SetClass( const std::string& name, const std::string& className ) override;
+ void SetClass(const std::string& name, const std::string& className) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Raise()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetAvailableAnlges()
*/
- void SetAvailableAnlges( const std::vector< int >& angles ) override;
+ void SetAvailableAnlges(const std::vector<int>& angles) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetPreferredAngle()
*/
- void SetPreferredAngle( int angle ) override;
+ void SetPreferredAngle(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetAcceptFocus()
*/
- void SetAcceptFocus( bool accept ) override;
+ void SetAcceptFocus(bool accept) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Show()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetSupportedAuxiliaryHint()
*/
- std::string GetSupportedAuxiliaryHint( unsigned int index ) const override;
+ std::string GetSupportedAuxiliaryHint(unsigned int index) const override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::AddAuxiliaryHint()
*/
- unsigned int AddAuxiliaryHint( const std::string& hint, const std::string& value ) override;
+ unsigned int AddAuxiliaryHint(const std::string& hint, const std::string& value) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::RemoveAuxiliaryHint()
*/
- bool RemoveAuxiliaryHint( unsigned int id ) override;
+ bool RemoveAuxiliaryHint(unsigned int id) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetAuxiliaryHintValue()
*/
- bool SetAuxiliaryHintValue( unsigned int id, const std::string& value ) override;
+ bool SetAuxiliaryHintValue(unsigned int id, const std::string& value) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetAuxiliaryHintValue()
*/
- std::string GetAuxiliaryHintValue( unsigned int id ) const override;
+ std::string GetAuxiliaryHintValue(unsigned int id) const override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetAuxiliaryHintId()
*/
- unsigned int GetAuxiliaryHintId( const std::string& hint ) const override;
+ unsigned int GetAuxiliaryHintId(const std::string& hint) const override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetInputRegion()
*/
- void SetInputRegion( const Rect< int >& inputRegion ) override;
+ void SetInputRegion(const Rect<int>& inputRegion) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetType()
*/
- void SetType( Dali::WindowType type ) override;
+ void SetType(Dali::WindowType type) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetNotificationLevel()
*/
- bool SetNotificationLevel( Dali::WindowNotificationLevel level ) override;
+ bool SetNotificationLevel(Dali::WindowNotificationLevel level) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetNotificationLevel()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetOpaqueState()
*/
- void SetOpaqueState( bool opaque ) override;
+ void SetOpaqueState(bool opaque) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetScreenOffMode()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetBrightness()
*/
- bool SetBrightness( int brightness ) override;
+ bool SetBrightness(int brightness) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetBrightness()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GrabKey()
*/
- bool GrabKey( Dali::KEY key, KeyGrab::KeyGrabMode grabMode ) override;
+ bool GrabKey(Dali::KEY key, KeyGrab::KeyGrabMode grabMode) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::UngrabKey()
*/
- bool UngrabKey( Dali::KEY key ) override;
+ bool UngrabKey(Dali::KEY key) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GrabKeyList()
*/
- bool GrabKeyList( const Dali::Vector< Dali::KEY >& key, const Dali::Vector< KeyGrab::KeyGrabMode >& grabMode, Dali::Vector< bool >& result ) override;
+ bool GrabKeyList(const Dali::Vector<Dali::KEY>& key, const Dali::Vector<KeyGrab::KeyGrabMode>& grabMode, Dali::Vector<bool>& result) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::UngrabKeyList()
*/
- bool UngrabKeyList( const Dali::Vector< Dali::KEY >& key, Dali::Vector< bool >& result ) override;
+ bool UngrabKeyList(const Dali::Vector<Dali::KEY>& key, Dali::Vector<bool>& result) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetDpi()
*/
- void GetDpi( unsigned int& dpiHorizontal, unsigned int& dpiVertical ) override;
+ void GetDpi(unsigned int& dpiHorizontal, unsigned int& dpiVertical) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetOrientation()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetWindowRotationAngle()
*/
- void SetWindowRotationAngle( int degree ) override;
+ void SetWindowRotationAngle(int degree) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::WindowRotationCompleted()
*/
- void WindowRotationCompleted( int degree, int width, int height ) override;
+ void WindowRotationCompleted(int degree, int width, int height) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetTransparency()
*/
- void SetTransparency( bool transparent ) override;
+ void SetTransparency(bool transparent) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetParent()
*/
- void SetParent( WindowBase* parentWinBase ) override;
+ void SetParent(WindowBase* parentWinBase) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::CreateFrameRenderedSyncFence()
int CreateFramePresentedSyncFence() override;
private:
-
/**
* Second stage initialization
*/
- void Initialize( PositionSize positionSize, Any surface, bool isTransparent );
+ void Initialize(PositionSize positionSize, Any surface, bool isTransparent);
/**
* @brief Get the surface id if the surface parameter is not empty
* @param surface Any containing a surface id, or can be empty
* @return surface id, or zero if surface is empty
*/
- unsigned int GetSurfaceId( Any surface ) const;
+ unsigned int GetSurfaceId(Any surface) const;
/**
* @brief Create window
*/
- void CreateWindow( PositionSize positionSize, bool isTransparent );
+ void CreateWindow(PositionSize positionSize, bool isTransparent);
protected:
-
// Undefined
WindowBaseEcoreX(const WindowBaseEcoreX&) = delete;
WindowBaseEcoreX& operator=(const WindowBaseEcoreX& rhs) = delete;
private:
-
- Dali::Vector< Ecore_Event_Handler* > mEcoreEventHandler;
- Ecore_X_Window mEcoreWindow; ///< Native window handle
- bool mOwnSurface:1; ///< Whether we own the surface (responsible for deleting it)
- bool mIsTransparent; ///< Whether the window is transparent (32 bit or 24 bit)
- bool mRotationAppSet:1;
- int mWindowRotationAngle;
+ Dali::Vector<Ecore_Event_Handler*> mEcoreEventHandler;
+ Ecore_X_Window mEcoreWindow; ///< Native window handle
+ bool mOwnSurface : 1; ///< Whether we own the surface (responsible for deleting it)
+ bool mIsTransparent; ///< Whether the window is transparent (32 bit or 24 bit)
+ bool mRotationAppSet : 1;
+ int mWindowRotationAngle;
};
} // namespace Adaptor
-} // namespace internal
+} // namespace Internal
} // namespace Dali
#define DALI_INTERNAL_WINDOWSYSTEM_ECOREX_WINDOW_FACTORY_ECORE_X_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
class WindowFactoryEcoreX : public WindowFactory
{
public:
- std::unique_ptr< WindowBase > CreateWindowBase( Dali::PositionSize positionSize, Any surface, bool isTransparent ) override;
+ std::unique_ptr<WindowBase> CreateWindowBase(Dali::PositionSize positionSize, Any surface, bool isTransparent) override;
};
} // namespace Adaptor
#define DALI_INTERNAL_ECORE_X_RENDER_SURFACE_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
// EXTERNAL INCLUDES
#include <string>
-#include <dali/internal/system/linux/dali-ecore-x.h>
#include <X11/Xlib.h>
+#include <dali/internal/system/linux/dali-ecore-x.h>
// INTERNAL INCLUDES
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
namespace ECore
{
-
namespace WindowInterface
{
/**
* Gets the Ecore X Window
* @return window
*/
- Ecore_X_Window GetWindow();
+Ecore_X_Window GetWindow();
- /**
+/**
* Gets a specified X window property
* @param[in] property the required property id
* @param[in] xDataType the type
* @param[in] num the offset / index of the property
* @return string the property value
*/
- std::string GetWindowProperty( Ecore_X_Atom property, Ecore_X_Atom *xDataType, unsigned int num );
+std::string GetWindowProperty(Ecore_X_Atom property, Ecore_X_Atom* xDataType, unsigned int num);
- /**
+/**
* Send an X Event
* @param[in] display target display
* @param[in] window target window
* @param[in] messageFormat format of message
* @param[in] msg message to send
*/
- void SendXEvent(Ecore_X_Display* display, Ecore_X_Window window, bool propagate,
- long int eventMask, Ecore_X_Atom messageType, int messageFormat, const char *msg );
+void SendXEvent(Ecore_X_Display* display, Ecore_X_Window window, bool propagate, long int eventMask, Ecore_X_Atom messageType, int messageFormat, const char* msg);
} // namespace WindowInterface
-
} // namespace ECore
} // namespace Adaptor
-} // namespace internal
+} // namespace Internal
} // namespace Dali
#define DALI_INTERNAL_WINDOWSYSTEM_WIN_DISPLAY_CONNECTION_FACTORY_WIN_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Internal
{
-
namespace Adaptor
{
-
class DisplayConnectionFactoryWin : public DisplayConnectionFactory
{
public:
} // namespace Dali
-
#endif // DALI_INTERNAL_WINDOWSYSTEM_WIN_DISPLAY_CONNECTION_FACTORY_WIN_H
#define DALI_INTERNAL_WIN_DIPLAY_CONNECTION_H\r
\r
/*\r
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.\r
+ * Copyright (c) 2021 Samsung Electronics Co., Ltd.\r
*\r
* Licensed under the Apache License, Version 2.0 (the "License");\r
* you may not use this file except in compliance with the License.\r
*/\r
\r
// INTERNAL INCLUDES\r
+#include <dali/internal/graphics/gles/egl-implementation.h>\r
#include <dali/internal/window-system/common/display-connection-impl.h>\r
#include <dali/public-api/object/base-object.h>\r
-#include <dali/internal/graphics/gles/egl-implementation.h>\r
\r
namespace Dali\r
{\r
-\r
class RenderSurface;\r
class DisplayConnection;\r
\r
namespace Internal\r
{\r
-\r
namespace Adaptor\r
{\r
-\r
/**\r
* DisplayConnection implementation\r
*/\r
class DisplayConnectionWin : public Dali::Internal::Adaptor::DisplayConnection\r
{\r
public:\r
-\r
/**\r
* @brief Default constructor\r
*/\r
static DisplayConnection* New();\r
\r
public:\r
-\r
/**\r
* @copydoc Dali::DisplayConnection::GetDisplay\r
*/\r
/**\r
* @copydoc Dali::Internal::Adaptor::DisplayConnection::SetSurfaceType\r
*/\r
- void SetSurfaceType( Dali::RenderSurfaceInterface::Type type );\r
+ void SetSurfaceType(Dali::RenderSurfaceInterface::Type type);\r
\r
/**\r
* @copydoc Dali::Internal::Adaptor::DisplayConnection::SetGraphicsInterface\r
*/\r
- void SetGraphicsInterface( GraphicsInterface& graphics );\r
+ void SetGraphicsInterface(GraphicsInterface& graphics);\r
\r
public:\r
-\r
/**\r
* Destructor\r
*/\r
virtual ~DisplayConnectionWin();\r
\r
private:\r
-\r
// Undefined\r
DisplayConnectionWin(const DisplayConnectionWin&) = delete;\r
\r
DisplayConnectionWin& operator=(const DisplayConnectionWin& rhs) = delete;\r
\r
private:\r
-\r
- GraphicsInterface *mGraphics; ///< The graphics interface\r
- HDC mDisplay;\r
+ GraphicsInterface* mGraphics; ///< The graphics interface\r
+ HDC mDisplay;\r
};\r
\r
} // namespace Adaptor\r
\r
-} // namespace internal\r
+} // namespace Internal\r
\r
} // namespace Dali\r
\r
#define _WINDOWEVENTSYSTEM_H_\r
\r
/*\r
-* Copyright (c) 2018 Samsung Electronics Co., Ltd.\r
+* Copyright (c) 2021 Samsung Electronics Co., Ltd.\r
*\r
* Licensed under the Apache License, Version 2.0 (the "License");\r
* you may not use this file except in compliance with the License.\r
* limitations under the License.\r
*\r
*/\r
-#define DEVICE_MOUSE 0\r
+#define DEVICE_MOUSE 0\r
\r
// INTERNAL INCLUDES\r
#include <dali/internal/window-system/windows/platform-implement-win.h>\r
\r
namespace Dali\r
{\r
-\r
namespace Internal\r
{\r
-\r
namespace Adaptor\r
{\r
-\r
struct _Event_Mouse_Button\r
{\r
- WinWindowHandle window; /**< The main window where event happened */\r
+ WinWindowHandle window; /**< The main window where event happened */\r
\r
- uint32_t timestamp; /**< Time when the event occurred */\r
+ uint32_t timestamp; /**< Time when the event occurred */\r
\r
- int32_t x; /**< x coordinate relative to window where event happened */\r
- int32_t y; /**< y coordinate relative to window where event happened */\r
+ int32_t x; /**< x coordinate relative to window where event happened */\r
+ int32_t y; /**< y coordinate relative to window where event happened */\r
\r
struct\r
{\r
- int32_t device; /**< 0 if normal mouse, 1+ for other mouse-devices (eg multi-touch - other fingers) */\r
- double radius, radius_x, radius_y; /**< radius of press point - radius_x and y if its an ellipse (radius is the average of the 2) */\r
- double pressure; /**< pressure - 1.0 == normal, > 1.0 == more, 0.0 == none */\r
- double angle; /**< angle relative to perpendicular (0.0 == perpendicular), in degrees */\r
- double x, y; /**< same as x, y, but with sub-pixel precision, if available */\r
+ int32_t device; /**< 0 if normal mouse, 1+ for other mouse-devices (eg multi-touch - other fingers) */\r
+ double radius, radius_x, radius_y; /**< radius of press point - radius_x and y if its an ellipse (radius is the average of the 2) */\r
+ double pressure; /**< pressure - 1.0 == normal, > 1.0 == more, 0.0 == none */\r
+ double angle; /**< angle relative to perpendicular (0.0 == perpendicular), in degrees */\r
+ double x, y; /**< same as x, y, but with sub-pixel precision, if available */\r
struct\r
{\r
- double x, y;\r
+ double x, y;\r
} root; /**< same as root.x, root.y, but with sub-pixel precision, if available */\r
} multi;\r
};\r
*/\r
struct _Event_Mouse_Wheel\r
{\r
- WinWindowHandle window; /**< The main window where event happened */\r
- WinWindowHandle root_window; /**< The root window where event happened */\r
- WinWindowHandle event_window; /**< The child window where event happened */\r
+ WinWindowHandle window; /**< The main window where event happened */\r
+ WinWindowHandle root_window; /**< The root window where event happened */\r
+ WinWindowHandle event_window; /**< The child window where event happened */\r
\r
- uint32_t timestamp; /**< Time when the event occurred */\r
- uint32_t modifiers; /**< The combination of modifiers key (SHIFT,CTRL,ALT,..)*/\r
+ uint32_t timestamp; /**< Time when the event occurred */\r
+ uint32_t modifiers; /**< The combination of modifiers key (SHIFT,CTRL,ALT,..)*/\r
\r
- int32_t direction; /**< Orientation of the wheel (horizontal/vertical) */\r
- int32_t z; /**< Value of the wheel event (+1/-1) */\r
+ int32_t direction; /**< Orientation of the wheel (horizontal/vertical) */\r
+ int32_t z; /**< Value of the wheel event (+1/-1) */\r
\r
- int32_t x; /**< x coordinate relative to window where event happened */\r
- int32_t y; /**< y coordinate relative to window where event happened */\r
+ int32_t x; /**< x coordinate relative to window where event happened */\r
+ int32_t y; /**< y coordinate relative to window where event happened */\r
struct\r
{\r
- int32_t x;\r
- int32_t y;\r
+ int32_t x;\r
+ int32_t y;\r
} root; /**< Coordinates relative to root window */\r
};\r
\r
\r
struct TWinEventInfo\r
{\r
- TWinEventInfo( uint64_t hWnd, uint32_t uMsg, uint64_t wParam, uint64_t lParam)\r
+ TWinEventInfo(uint64_t hWnd, uint32_t uMsg, uint64_t wParam, uint64_t lParam)\r
{\r
this->mWindow = (WinWindowHandle)hWnd;\r
- this->uMsg = uMsg;\r
- this->wParam = wParam;\r
- this->lParam = lParam;\r
+ this->uMsg = uMsg;\r
+ this->wParam = wParam;\r
+ this->lParam = lParam;\r
}\r
\r
WinWindowHandle mWindow;\r
- uint32_t uMsg;\r
- uint64_t wParam;\r
- uint64_t lParam;\r
+ uint32_t uMsg;\r
+ uint64_t wParam;\r
+ uint64_t lParam;\r
};\r
-
-} // namespace Adaptor
-
-} // namespace internal
-
+\r
+} // namespace Adaptor\r
+\r
+} // namespace Internal\r
+\r
} // namespace Dali\r
\r
#endif\r
#define PLATFORM_IMPLEMENT_WIN_INCLUDE\r
\r
/*\r
-* Copyright (c) 2018 Samsung Electronics Co., Ltd.\r
+* Copyright (c) 2021 Samsung Electronics Co., Ltd.\r
*\r
* Licensed under the Apache License, Version 2.0 (the "License");\r
* you may not use this file except in compliance with the License.\r
*/\r
\r
// EXTERNAL_HEADERS\r
+#include <dali/public-api/signals/callback.h>\r
#include <stdint.h>\r
#include <string>\r
-#include <dali/public-api/signals/callback.h>\r
\r
-typedef uintptr_t WinWindowHandle;\r
-typedef uint64_t WinPixmap;\r
+typedef uintptr_t WinWindowHandle;\r
+typedef uint64_t WinPixmap;\r
\r
namespace Dali\r
{\r
-\r
namespace Internal\r
{\r
-\r
namespace Adaptor\r
{\r
-\r
namespace WindowsPlatform\r
{\r
-\r
bool PostWinThreadMessage(\r
- _In_ uint32_t Msg,\r
- _In_ uint64_t wParam,\r
- _In_ uint64_t lParam,\r
- _In_ uint64_t threadID = -1 );\r
+ _In_ uint32_t Msg,\r
+ _In_ uint64_t wParam,\r
+ _In_ uint64_t lParam,\r
+ _In_ uint64_t threadID = -1);\r
\r
-using timerCallback = bool(*)(void *data);\r
+using timerCallback = bool (*)(void* data);\r
\r
-intptr_t SetTimer(int interval, timerCallback callback, void *data);\r
+intptr_t SetTimer(int interval, timerCallback callback, void* data);\r
\r
void KillTimer(intptr_t id);\r
\r
-std::string GetKeyName( int keyCode );\r
+std::string GetKeyName(int keyCode);\r
\r
uint64_t GetCurrentThreadId();\r
\r
-void GetNanoseconds( uint64_t& timeInNanoseconds );\r
+void GetNanoseconds(uint64_t& timeInNanoseconds);\r
\r
-unsigned int GetCurrentMilliSeconds( void );\r
+unsigned int GetCurrentMilliSeconds(void);\r
\r
class WindowImpl\r
{\r
public:\r
static const uint32_t STYLE;\r
- static const int32_t EDGE_WIDTH;\r
- static const int32_t EDGE_HEIGHT;\r
+ static const int32_t EDGE_WIDTH;\r
+ static const int32_t EDGE_HEIGHT;\r
\r
WindowImpl();\r
\r
virtual ~WindowImpl();\r
\r
- static void ProcWinMessage( uint64_t hWnd, uint32_t uMsg, uint64_t wParam, uint64_t lParam );\r
+ static void ProcWinMessage(uint64_t hWnd, uint32_t uMsg, uint64_t wParam, uint64_t lParam);\r
\r
static uint64_t CreateHwnd(\r
- _In_opt_ const char *lpWindowName,\r
- _In_ int X,\r
- _In_ int Y,\r
- _In_ int nWidth,\r
- _In_ int nHeight,\r
- _In_opt_ uint64_t parent );\r
+ _In_opt_ const char* lpWindowName,\r
+ _In_ int X,\r
+ _In_ int Y,\r
+ _In_ int nWidth,\r
+ _In_ int nHeight,\r
+ _In_opt_ uint64_t parent);\r
\r
static void DestroyHWnd(uint64_t hWnd);\r
\r
- void GetDPI( float &xDpi, float &yDpi );\r
+ void GetDPI(float& xDpi, float& yDpi);\r
\r
int GetColorDepth();\r
\r
- void SetListener( CallbackBase *callback );\r
+ void SetListener(CallbackBase* callback);\r
\r
bool PostWinMessage(\r
_In_ uint32_t Msg,\r
_In_ uint64_t wParam,\r
- _In_ uint64_t lParam );\r
+ _In_ uint64_t lParam);\r
\r
void SetHWND(uint64_t inHWnd);\r
void SetWinProc();\r
\r
-protected:\r
-\r
private:\r
- int colorDepth;\r
+ int colorDepth;\r
uint64_t mHWnd; // no ownership, managed outside\r
uint64_t mHdc;\r
\r
- CallbackBase *listener;\r
+ CallbackBase* listener;\r
};\r
\r
-} // namespace WindowsPlatformImplement\r
+} // namespace WindowsPlatform\r
\r
} // namespace Adaptor\r
\r
-} // namespace internal\r
+} // namespace Internal\r
\r
} // namespace Dali\r
\r
#define DALI_INTERNAL_WINDOWSYSTEM_WIN_RENDER_SURFACE_FACTORY_WIN_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
class RenderSurfaceFactoryWin : public RenderSurfaceFactory
{
public:
- std::unique_ptr< WindowRenderSurface > CreateWindowRenderSurface( Dali::PositionSize positionSize, Any surface, bool isTransparent = false ) override;
+ std::unique_ptr<WindowRenderSurface> CreateWindowRenderSurface(Dali::PositionSize positionSize, Any surface, bool isTransparent = false) override;
- std::unique_ptr< PixmapRenderSurface > CreatePixmapRenderSurface( Dali::PositionSize positionSize, Any surface, bool isTransparent = false ) override;
+ std::unique_ptr<PixmapRenderSurface> CreatePixmapRenderSurface(Dali::PositionSize positionSize, Any surface, bool isTransparent = false) override;
- std::unique_ptr< NativeRenderSurface > CreateNativeRenderSurface(SurfaceSize surfaceSize, Any surface, bool isTransparent = false) override;
+ std::unique_ptr<NativeRenderSurface> CreateNativeRenderSurface(SurfaceSize surfaceSize, Any surface, bool isTransparent = false) override;
};
} // namespace Adaptor
#define DALI_INTERNAL_WINDOWSYSTEM_WINDOW_BASE_WIN_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
// INTERNAL INCLUDES
#include <dali/internal/window-system/common/window-base.h>
-#include <dali/internal/window-system/windows/platform-implement-win.h>
#include <dali/internal/window-system/windows/event-system-win.h>
+#include <dali/internal/window-system/windows/platform-implement-win.h>
namespace Dali
{
{
namespace Adaptor
{
-
class Window;
class WindowRenderSurface;
class WindowRenderSurfaceWin;
class WindowBaseWin : public WindowBase
{
public:
-
/**
* @brief Constructor
*/
- WindowBaseWin( PositionSize positionSize, Any surface, bool isTransparent );
+ WindowBaseWin(PositionSize positionSize, Any surface, bool isTransparent);
/**
* @brief Destructor
virtual ~WindowBaseWin();
public:
-
/**
* Called when the window receives a delete request
*/
/**
* @brief Called when the window gains focus.
*/
- void OnFocusIn( int type, TWinEventInfo *event );
+ void OnFocusIn(int type, TWinEventInfo* event);
/**
* @brief Called when the window loses focus.
*/
- void OnFocusOut( int type, TWinEventInfo *event );
+ void OnFocusOut(int type, TWinEventInfo* event);
/**
* @brief Called when the window is damaged.
*/
- void OnWindowDamaged( int type, TWinEventInfo *event );
+ void OnWindowDamaged(int type, TWinEventInfo* event);
/**
* @brief Called when a touch down is received.
*/
- void OnMouseButtonDown( int type, TWinEventInfo *event );
+ void OnMouseButtonDown(int type, TWinEventInfo* event);
/**
* @brief Called when a touch up is received.
*/
- void OnMouseButtonUp( int type, TWinEventInfo *event );
+ void OnMouseButtonUp(int type, TWinEventInfo* event);
/**
* @brief Called when a touch motion is received.
*/
- void OnMouseButtonMove( int type, TWinEventInfo *event );
+ void OnMouseButtonMove(int type, TWinEventInfo* event);
/**
* @brief Called when a mouse wheel is received.
*/
- void OnMouseWheel( int type, TWinEventInfo *event );
+ void OnMouseWheel(int type, TWinEventInfo* event);
/**
* @brief Called when a key down is received.
*/
- void OnKeyDown( int type, TWinEventInfo *event );
+ void OnKeyDown(int type, TWinEventInfo* event);
/**
* @brief Called when a key up is received.
*/
- void OnKeyUp( int type, TWinEventInfo *event );
-
+ void OnKeyUp(int type, TWinEventInfo* event);
public:
-
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetNativeWindow()
*/
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::CreateEglWindow()
*/
- EGLNativeWindowType CreateEglWindow( int width, int height ) override;
+ EGLNativeWindowType CreateEglWindow(int width, int height) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::DestroyEglWindow()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetEglWindowRotation()
*/
- void SetEglWindowRotation( int angle ) override;
+ void SetEglWindowRotation(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetEglWindowBufferTransform()
*/
- void SetEglWindowBufferTransform( int angle ) override;
+ void SetEglWindowBufferTransform(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetEglWindowTransform()
*/
- void SetEglWindowTransform( int angle ) override;
+ void SetEglWindowTransform(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::ResizeEglWindow()
*/
- void ResizeEglWindow( PositionSize positionSize ) override;
+ void ResizeEglWindow(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::IsEglWindowRotationSupported()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Move()
*/
- void Move( PositionSize positionSize ) override;
+ void Move(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Resize()
*/
- void Resize( PositionSize positionSize ) override;
+ void Resize(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::MoveResize()
*/
- void MoveResize( PositionSize positionSize ) override;
+ void MoveResize(PositionSize positionSize) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetClass()
*/
- void SetClass( const std::string& name, const std::string& className ) override;
+ void SetClass(const std::string& name, const std::string& className) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Raise()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetAvailableAnlges()
*/
- void SetAvailableAnlges( const std::vector< int >& angles ) override;
+ void SetAvailableAnlges(const std::vector<int>& angles) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetPreferredAngle()
*/
- void SetPreferredAngle( int angle ) override;
+ void SetPreferredAngle(int angle) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetAcceptFocus()
*/
- void SetAcceptFocus( bool accept ) override;
+ void SetAcceptFocus(bool accept) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::Show()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetSupportedAuxiliaryHint()
*/
- std::string GetSupportedAuxiliaryHint( unsigned int index ) const override;
+ std::string GetSupportedAuxiliaryHint(unsigned int index) const override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::AddAuxiliaryHint()
*/
- unsigned int AddAuxiliaryHint( const std::string& hint, const std::string& value ) override;
+ unsigned int AddAuxiliaryHint(const std::string& hint, const std::string& value) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::RemoveAuxiliaryHint()
*/
- bool RemoveAuxiliaryHint( unsigned int id ) override;
+ bool RemoveAuxiliaryHint(unsigned int id) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetAuxiliaryHintValue()
*/
- bool SetAuxiliaryHintValue( unsigned int id, const std::string& value ) override;
+ bool SetAuxiliaryHintValue(unsigned int id, const std::string& value) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetAuxiliaryHintValue()
*/
- std::string GetAuxiliaryHintValue( unsigned int id ) const override;
+ std::string GetAuxiliaryHintValue(unsigned int id) const override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetAuxiliaryHintId()
*/
- unsigned int GetAuxiliaryHintId( const std::string& hint ) const override;
+ unsigned int GetAuxiliaryHintId(const std::string& hint) const override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetInputRegion()
*/
- void SetInputRegion( const Rect< int >& inputRegion ) override;
+ void SetInputRegion(const Rect<int>& inputRegion) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetType()
*/
- void SetType( Dali::WindowType type ) override;
+ void SetType(Dali::WindowType type) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetNotificationLevel()
*/
- bool SetNotificationLevel( Dali::WindowNotificationLevel level ) override;
+ bool SetNotificationLevel(Dali::WindowNotificationLevel level) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetNotificationLevel()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetOpaqueState()
*/
- void SetOpaqueState( bool opaque ) override;
+ void SetOpaqueState(bool opaque) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetScreenOffMode()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetBrightness()
*/
- bool SetBrightness( int brightness ) override;
+ bool SetBrightness(int brightness) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetBrightness()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GrabKey()
*/
- bool GrabKey( Dali::KEY key, KeyGrab::KeyGrabMode grabMode ) override;
+ bool GrabKey(Dali::KEY key, KeyGrab::KeyGrabMode grabMode) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::UngrabKey()
*/
- bool UngrabKey( Dali::KEY key ) override;
+ bool UngrabKey(Dali::KEY key) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GrabKeyList()
*/
- bool GrabKeyList( const Dali::Vector< Dali::KEY >& key, const Dali::Vector< KeyGrab::KeyGrabMode >& grabMode, Dali::Vector< bool >& result ) override;
+ bool GrabKeyList(const Dali::Vector<Dali::KEY>& key, const Dali::Vector<KeyGrab::KeyGrabMode>& grabMode, Dali::Vector<bool>& result) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::UngrabKeyList()
*/
- bool UngrabKeyList( const Dali::Vector< Dali::KEY >& key, Dali::Vector< bool >& result ) override;
+ bool UngrabKeyList(const Dali::Vector<Dali::KEY>& key, Dali::Vector<bool>& result) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetDpi()
*/
- void GetDpi( unsigned int& dpiHorizontal, unsigned int& dpiVertical ) override;
+ void GetDpi(unsigned int& dpiHorizontal, unsigned int& dpiVertical) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetScreenRotationAngle()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetWindowRotationAngle()
*/
- void SetWindowRotationAngle( int degree ) override;
+ void SetWindowRotationAngle(int degree) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::WindowRotationCompleted()
*/
- void WindowRotationCompleted( int degree, int width, int height ) override;
+ void WindowRotationCompleted(int degree, int width, int height) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetTransparency()
*/
- void SetTransparency( bool transparent ) override;
+ void SetTransparency(bool transparent) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::GetOrientation()
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::SetParent()
*/
- void SetParent( WindowBase* parentWinBase ) override;
+ void SetParent(WindowBase* parentWinBase) override;
/**
* @copydoc Dali::Internal::Adaptor::WindowBase::CreateFrameRenderedSyncFence()
int CreateFramePresentedSyncFence() override;
private:
-
/**
* Second stage initialization
*/
- void Initialize( PositionSize positionSize, Any surface, bool isTransparent );
+ void Initialize(PositionSize positionSize, Any surface, bool isTransparent);
/**
* @brief Get the surface id if the surface parameter is not empty
* @param surface Any containing a surface id, or can be empty
* @return surface id, or zero if surface is empty
*/
- uintptr_t GetSurfaceId( Any surface ) const;
+ uintptr_t GetSurfaceId(Any surface) const;
/**
* @brief Create window
*/
- void CreateWinWindow( PositionSize positionSize, bool isTransparent );
+ void CreateWinWindow(PositionSize positionSize, bool isTransparent);
/**
* @brief Sets up an already created window.
*/
- void SetWinWindow( uintptr_t surfaceId );
+ void SetWinWindow(uintptr_t surfaceId);
private:
-
// Undefined
WindowBaseWin(const WindowBaseWin&) = delete;
WindowBaseWin& operator=(const WindowBaseWin& rhs) = delete;
private:
- void EventEntry( TWinEventInfo *event );
+ void EventEntry(TWinEventInfo* event);
private:
- WinWindowHandle mWin32Window; ///< Native window handle
- bool mOwnSurface:1; ///< Whether we own the surface (responsible for deleting it)
- bool mIsTransparent:1; ///< Whether the window is transparent (32 bit or 24 bit)
- bool mRotationAppSet:1;
+ WinWindowHandle mWin32Window; ///< Native window handle
+ bool mOwnSurface : 1; ///< Whether we own the surface (responsible for deleting it)
+ bool mIsTransparent : 1; ///< Whether the window is transparent (32 bit or 24 bit)
+ bool mRotationAppSet : 1;
WindowsPlatform::WindowImpl mWindowImpl;
};
} // namespace Adaptor
-} // namespace internal
+} // namespace Internal
} // namespace Dali
#define DALI_INTERNAL_WINDOWSYSTEM_WINDOW_FACTORY_WIN_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
{
namespace Adaptor
{
-
class WindowFactoryWin : public WindowFactory
{
public:
- std::unique_ptr< WindowBase > CreateWindowBase( Dali::PositionSize positionSize, Any surface, bool isTransparent ) override;
+ std::unique_ptr<WindowBase> CreateWindowBase(Dali::PositionSize positionSize, Any surface, bool isTransparent) override;
};
} // namespace Adaptor
#define DALI_INPUT_MEHTOD_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
enum Type
{
- DEFAULT, ///< Default action @SINCE_1_3.20
- DONE, ///< Done @SINCE_1_3.20
- GO, ///< Go action @SINCE_1_3.20
- JOIN, ///< Join action @SINCE_1_3.20
- LOGIN, ///< Login action @SINCE_1_3.20
- NEXT, ///< Next action @SINCE_1_3.20
- SEARCH, ///< Search action @SINCE_1_3.20
- SEND, ///< Send action @SINCE_1_3.20
- SIGNIN ///< Sign in action @SINCE_1_3.20
+ DEFAULT, ///< Default action @SINCE_1_3.20
+ DONE, ///< Done @SINCE_1_3.20
+ GO, ///< Go action @SINCE_1_3.20
+ JOIN, ///< Join action @SINCE_1_3.20
+ LOGIN, ///< Login action @SINCE_1_3.20
+ NEXT, ///< Next action @SINCE_1_3.20
+ SEARCH, ///< Search action @SINCE_1_3.20
+ SEND, ///< Send action @SINCE_1_3.20
+ SIGNIN ///< Sign in action @SINCE_1_3.20
};
} // namespace ButtonAction
#define DALI_WINDOW_ENUMERATIONS_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
HIDE, ///< Window hide effect. @SINCE_2_0.0
};
-}
+} // namespace Dali
#endif // DALI_WINDOW_ENUMERATIONS_H
#define DALI_WINDOW_H
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
*/
// EXTERNAL INCLUDES
+#include <dali/public-api/adaptor-framework/window-enumerations.h>
#include <dali/public-api/math/rect.h>
#include <dali/public-api/math/uint-16-pair.h>
#include <dali/public-api/math/vector2.h>
#include <dali/public-api/object/any.h>
#include <dali/public-api/object/base-handle.h>
#include <dali/public-api/signals/dali-signal.h>
-#include <dali/public-api/adaptor-framework/window-enumerations.h>
#include <string>
// INTERNAL INCLUDES
using TouchEventSignalType = Signal<void(const TouchEvent&)>; ///< Touch signal type @SINCE_1_9.28
public:
-
// Methods
/**
#define DALI_ADAPTOR_DOC_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
* @}
*/
-#endif /* DALI_ADAPTOR_DOC_H */
+#endif /* DALI_ADAPTOR_DOC_H */
#define FEEDBACK_PLUGIN_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
namespace Dali
{
-
namespace Plugin
{
-
/**
* Plays feedback effects for Dali-Toolkit UI Controls.
*/
class DaliFeedback : public Dali::FeedbackPlugin
{
-
public: // Construction & Destruction
-
/**
* Constructor
*/
virtual ~DaliFeedback();
public: // FeedbackPlugin overrides
-
/**
* @copydoc Dali::Integration::FeedbackPlugin::PlayHaptic()
*/
- void PlayHaptic( const std::string& filePath );
+ void PlayHaptic(const std::string& filePath);
/**
* @copydoc Dali::FeedbackPlugin::PlayHapticMonotone()
*/
- void PlayHapticMonotone( unsigned int duration );
+ void PlayHapticMonotone(unsigned int duration);
/**
* @copydoc Dali::FeedbackPlugin::StopHaptic()
/**
* @copydoc Dali::FeedbackPlugin::PlaySound()
*/
- int PlaySound( const std::string& fileName );
+ int PlaySound(const std::string& fileName);
/**
* @copydoc Dali::FeedbackPlugin::StopSound()
*/
- void StopSound( int handle );
+ void StopSound(int handle);
/**
* @copydoc Dali::FeedbackPlugin::PlayFeedbackPattern()
*/
- void PlayFeedbackPattern( int type, int pattern );
+ void PlayFeedbackPattern(int type, int pattern);
};
-} // namespace Plugin
+} // namespace Plugin
-} // namespace Dali
+} // namespace Dali
#endif // FEEDBACK_PLUGIN_H