Implementation of new type of source: Pattern generator (GUI, icons,

saving). A new class for gstreamer stream (Stream) is defined for
generic pipeline sources; to be integrated (inheritance) into
MediaPlayer.
This commit is contained in:
brunoherbelin
2020-09-20 00:26:39 +02:00
parent db6d3a6fa0
commit 59db2cf57c
31 changed files with 2199 additions and 48 deletions

View File

@@ -12,6 +12,14 @@ using namespace tinyxml2;
#include <string>
XMLElement *tinyxml2::XMLElementFromGLM(XMLDocument *doc, glm::ivec2 vector)
{
XMLElement *newelement = doc->NewElement( "ivec2" );
newelement->SetAttribute("x", vector.x);
newelement->SetAttribute("y", vector.y);
return newelement;
}
XMLElement *tinyxml2::XMLElementFromGLM(XMLDocument *doc, glm::vec3 vector)
{
XMLElement *newelement = doc->NewElement( "vec3" );
@@ -44,6 +52,13 @@ XMLElement *tinyxml2::XMLElementFromGLM(XMLDocument *doc, glm::mat4 matrix)
return newelement;
}
void tinyxml2::XMLElementToGLM(XMLElement *elem, glm::ivec2 &vector)
{
if ( !elem || std::string(elem->Name()).find("ivec2") == std::string::npos )
return;
elem->QueryIntAttribute("x", &vector.x); // If this fails, original value is left as-is
elem->QueryIntAttribute("y", &vector.y);
}
void tinyxml2::XMLElementToGLM(XMLElement *elem, glm::vec3 &vector)
{