ShishGL  1.0
A simple modular cross-platform graphics library
Sh::IPlatform Class Referenceabstract

#include <IPlatform.hpp>

Inheritance diagram for Sh::IPlatform:

Classes

class  IContext
 

Public Types

enum  Align { LEFT, CENTER, RIGHT }
 

Public Member Functions

virtual bool isRunning ()=0
 
virtual Vector2< double > getMousePos ()=0
 
virtual void setViewport (const Frame &frame)=0
 
virtual const Vector2< double > & getDisplaySize ()=0
 
virtual IContextcreateContext (const Vector2< size_t > &size, const Color &color)=0
 
virtual IContextloadContextFromImage (const std::string_view &filename)=0
 
virtual void saveContextAsImage (IContext *context, const std::string_view &filename)=0
 
virtual void setColor (const Color &color)=0
 
virtual void setTexture (const ResourceManager::Resource &texture)=0
 
virtual void drawPoint (const Vector2< double > &pos)=0
 
virtual void drawLine (const Vector2< double > &start, const Vector2< double > &end)=0
 
virtual void drawRectangle (const Vector2< double > &pos, const Vector2< double > &size)=0
 
virtual void drawCircle (const Vector2< double > &pos, const double &radius)=0
 
virtual void displayContext (const IContext *context, const Vector2< double > &position)=0
 
virtual void setFont (const ResourceManager::Resource &font)=0
 
virtual void setFontSize (const size_t &font_size)=0
 
virtual void displayText (const std::string_view &text, const Frame &frame, Align align)=0
 
virtual ~IPlatform ()=default
 

Protected Member Functions

 IPlatform ()=default
 
virtual bool initDisplay (int *argc_ptr, char *argv[])=0
 
virtual bool closeDisplay ()=0
 
virtual void clear (const Color &color)=0
 
virtual void display ()=0
 
virtual bool pollEvent ()=0
 

Friends

class RenderSystem
 
class WindowManager
 
class CoreApplication
 

Member Enumeration Documentation

◆ Align

Enumerator
LEFT 
CENTER 
RIGHT 

Constructor & Destructor Documentation

◆ ~IPlatform()

virtual Sh::IPlatform::~IPlatform ( )
virtualdefault

◆ IPlatform()

Sh::IPlatform::IPlatform ( )
protecteddefault

Member Function Documentation

◆ clear()

virtual void Sh::IPlatform::clear ( const Color color)
protectedpure virtual

Implemented in Sh::SfmlPlatform.

◆ closeDisplay()

virtual bool Sh::IPlatform::closeDisplay ( )
protectedpure virtual

Implemented in Sh::SfmlPlatform.

◆ createContext()

virtual IContext* Sh::IPlatform::createContext ( const Vector2< size_t > &  size,
const Color color 
)
pure virtual

Implemented in Sh::SfmlPlatform.

◆ display()

virtual void Sh::IPlatform::display ( )
protectedpure virtual

Implemented in Sh::SfmlPlatform.

◆ displayContext()

virtual void Sh::IPlatform::displayContext ( const IContext context,
const Vector2< double > &  position 
)
pure virtual

Implemented in Sh::SfmlPlatform.

◆ displayText()

virtual void Sh::IPlatform::displayText ( const std::string_view &  text,
const Frame frame,
Align  align 
)
pure virtual

Implemented in Sh::SfmlPlatform.

◆ drawCircle()

virtual void Sh::IPlatform::drawCircle ( const Vector2< double > &  pos,
const double &  radius 
)
pure virtual

Implemented in Sh::SfmlPlatform.

◆ drawLine()

virtual void Sh::IPlatform::drawLine ( const Vector2< double > &  start,
const Vector2< double > &  end 
)
pure virtual

Implemented in Sh::SfmlPlatform.

◆ drawPoint()

virtual void Sh::IPlatform::drawPoint ( const Vector2< double > &  pos)
pure virtual

Implemented in Sh::SfmlPlatform.

◆ drawRectangle()

virtual void Sh::IPlatform::drawRectangle ( const Vector2< double > &  pos,
const Vector2< double > &  size 
)
pure virtual

Implemented in Sh::SfmlPlatform.

◆ getDisplaySize()

virtual const Vector2<double>& Sh::IPlatform::getDisplaySize ( )
pure virtual

Implemented in Sh::SfmlPlatform.

◆ getMousePos()

virtual Vector2<double> Sh::IPlatform::getMousePos ( )
pure virtual

Implemented in Sh::SfmlPlatform.

◆ initDisplay()

virtual bool Sh::IPlatform::initDisplay ( int *  argc_ptr,
char *  argv[] 
)
protectedpure virtual

Implemented in Sh::SfmlPlatform.

◆ isRunning()

virtual bool Sh::IPlatform::isRunning ( )
pure virtual

Implemented in Sh::SfmlPlatform.

◆ loadContextFromImage()

virtual IContext* Sh::IPlatform::loadContextFromImage ( const std::string_view &  filename)
pure virtual

Implemented in Sh::SfmlPlatform.

◆ pollEvent()

virtual bool Sh::IPlatform::pollEvent ( )
protectedpure virtual

Implemented in Sh::SfmlPlatform.

◆ saveContextAsImage()

virtual void Sh::IPlatform::saveContextAsImage ( IContext context,
const std::string_view &  filename 
)
pure virtual

Implemented in Sh::SfmlPlatform.

◆ setColor()

virtual void Sh::IPlatform::setColor ( const Color color)
pure virtual

Implemented in Sh::SfmlPlatform.

◆ setFont()

virtual void Sh::IPlatform::setFont ( const ResourceManager::Resource font)
pure virtual

Implemented in Sh::SfmlPlatform.

◆ setFontSize()

virtual void Sh::IPlatform::setFontSize ( const size_t &  font_size)
pure virtual

Implemented in Sh::SfmlPlatform.

◆ setTexture()

virtual void Sh::IPlatform::setTexture ( const ResourceManager::Resource texture)
pure virtual

Implemented in Sh::SfmlPlatform.

◆ setViewport()

virtual void Sh::IPlatform::setViewport ( const Frame frame)
pure virtual

Implemented in Sh::SfmlPlatform.

Friends And Related Function Documentation

◆ CoreApplication

friend class CoreApplication
friend

◆ RenderSystem

friend class RenderSystem
friend

◆ WindowManager

friend class WindowManager
friend

The documentation for this class was generated from the following file: