Gorgon Game Engine
Gorgon Game Engine Design Document
  • Empty
  • Resizing
  • Move
  • Move assignment
  • Swap
  • Add
  • Insert (under)
  • Remove
  • HasParent
  • GetParent
  • begin/end
  • First/Last
  • PlaceBefore
  • PlaceToTop
  • PlaceToBottom
  • GetOrder
  • Move
  • Resize
  • SetBounds
  • GetSize
  • GetLocation
  • GetBounds
  • Show
  • Hide
  • IsVisible
  • Render
  • Name
  • Version
  • GetEnv
  • Open
  • OpenTerminal
  • Start
  • DisplayMessage
  • GetAppDataPath
  • GetAppSettingPath
  • IsInternetConnected
  • IsNetworkConnected
  • IsWifiConnected
  • BatteryStatus
  • BatterPercentage
  • AvailableMemory
  • FreeMemory
  • ProcessorInfo
  • GPUInfo
  • FileTypeData
  • SystemFonts -> vector(filename)
  • SystemSound -> map(tag, filename)

  • Brand
  • Model
  • Speed
  • Cores
  • Threads
  • Memory
  • Brand
  • Model
  • Name
  • Description
  • Icon
  • GetName
  • GetUsername
  • GetDocumentsPath
  • GetHomePath
  • GetDataPath
  • IsAdmin
  • Automatic placement
  • Manual placement
  • Fullscreen
  • processmessage
  • activatecontext
  • Move
  • Resize
  • Show
  • Hide
  • IsVisible
  • Close
  • ShowPointer
  • HidePointer
  • SwitchToLocalPointers
  • SwitchToWMPointers
  • Render
  • SetTitle
  • GetTitle
  • AllowResize
  • PreventResize
  • GetName
  • GetExteriorDimensions
  • GetPosition
  • GetMonitor
  • IsClosed
  • SetIcon
  • Focus
  • IsFocused
  • Minimize
  • Maximize
  • IsMinimized
  • IsMaximized
  • ActivatedEvent
  • DeactivatedEvent
  • DestroyedEvent
  • ClosingEvent
  • MovedEvent
  • ResizedEvent
  • MinimizedEvent
  • RestoredEvent
  • InputEvent
  • KeyEvent
  • CharacterEvent
  • Pointers
  • Windows
  • CurrentContext
  • SetClipboardText
  • GetClipboardText
  • GetIconFor

  • From data
  • From data
  • Default from OS
  • From OS
  • GetSize
  • GetLocation
  • GetUsable
  • IsPrimary
  • GetName
  • Primary
  • Monitors
  • Refresh
  • IsChangeEventSupported
  • ChangedEvent
  • Tile
  • Tiling
  • Alignment
  • TextAlignment
  • Placement
  • GetHorizontal
  • GetVertical
  • CalculateOffset
  • ColorMode
  • GetBytesPerPixel

  • From luma, int
  • operator = (RGBA, luma, int)
  • operator ==
  • operator !=
  • Luminance
  • AccurateLuminance
  • HTMLColor
  • Blend
  • operator string
  • From luma, RGBA
  • operator = (RGBA, int)
  • operator = (luma)
  • operator ==
  • operator !=
  • operator RGBA
  • Convert
  • Luminance
  • AccurateLuminance
  • Blend
  • operator string
  • Tiling
  • CalculateSize
  • CalculateOffset
  • CalculateArea
  • CalculateSize
  • GetTiling
  • Horizontal
  • Vertical
  • Place
  • GetID
  • GetImageSize
  • GetCoordinates
  • IsPartial
  • Empty
  • Regular
  • Atlas
  • From image
  • Copy and move constructor
  • Swap
  • Set (image, texture and info)
  • GetOD
  • GetImageSize
  • GetCoordinates
  • Destroy
  • Release
  • Solid drawable image based on a texture
  • Move semantics
  • Duplicate
  • CreateAnimation
  • ReleaseData
  • HasTexture
  • Assign (image, bytes)
  • Assign (containers::image?)
  • Assume (image, bytes)
  • Assume (containers::image)
  • Resize
  • operator ()
  • Get
  • GetBytesPerPixel
  • GetMode
  • GetSize
  • GetTotalSize
  • Prepare
  • Discard
  • ImportPNG
  • ImportJPG
  • ImportBMP
  • Import
  • ExportPNG
  • ExportJPG
  • ExportBMP
  • Export
  • Blur
  • Shadow
  • Grayscale
  • Resample
  • StripTransparency
  • StripRGB
  • CreateLinearAtlas
  • CreateAtlasImages
  • Draw
  • DrawIn
  • CalculateSize
  • Draw
  • DrawStretched
  • DrawRotated
  • DrawIn
  • GetSize
  • CreateAnimation
  • CreateAnimation
  • CreateAnimation
  • Add / Insert / Own
  • begin / end
  • Clear
  • CreateAnimation
  • Duplicate
  • FrameAt
  • FrameIndexAt
  • GetCount
  • GetDuration (total, frame)
  • GetSize
  • GetImageAt
  • ReleaseAll
  • Remove
  • StartOf
  • DrawMode (partial)
  • Draw (using vertex coords, using vertex and texture coords)
  • Draw (tiling)
  • Clear
  • GetTargetSize
  • GetDrawMode
  • SetDrawMode
  • Draw
  • Draw (tiled)
  • Clear
  • Render
  • GetDrawMode
  • SetDrawMode
  • SetColor
  • GetTargetSize Move surface to cpp
  • Draw
  • GetImage
  • SetImage
  • HasImage
  • RemoveImage
  • Assume
  • Release
  • Add
  • Assume
  • Exists
  • Set
  • Reset
  • Current
  • IsValid
  • Requires packaged shader
    This might be integrated with all layers similar to offset
    Replace uint32 with GL::Texture
  • SetVertexCoords
  • SetTextureCoords
  • SetDiffuse
  • SetVertexCoords
  • SetTextureCoords
  • SetDiffuse
  • SetMask
  • SetVertexCoords
  • SetTextureCoords
  • SetDiffuse
  • SetTint
  • SetMask
  • GenerateTexture
  • UpdateTexture
  • DestroyTexture
  • SetupContext
  • Resize
  • Clear

  • GetPosition
  • Move
  • SetSpeed
  • SetAcceleration
  • AutoCalculate
  • SetMeterConversion
  • GetMeterConversion
  • GetVolume
  • SetVolume
  • CreateDirectory
  • IsFile
  • IsDirectory
  • IsExists
  • IsWritable
  • Cononical
  • TryCanonoicalize
  • CurrentDirectory
  • IsHidden
  • IsReadOnly
  • Relative
  • ChangeDirectory
  • Join
  • GetFilename
  • GetDirectory
  • ConvertToNative
  • ConvertFromNative
  • ConvertToURI
  • Copy
  • Copy (vector)
  • Copy (iterator)
  • Move
  • Move (vector)
  • Move (iterator)
  • Delete
  • Delete (vector)
  • Delete (iterator)
  • Trash
  • Trash (vector)
  • Trash (iterator)
  • ExeDirectory
  • ExePath
  • ExeFilename
  • StartupDirectory
  • FreeSpace
  • TotalSpace
  • EntryPoints
  • MakeReadonly
  • MakeHidden
  • Size
  • Size (directory)
  • Save
  • Load
  • IsRemovable
  • IsNetwork
  • DriveType
  • LocateResource

  • Path
  • Readable
  • Writable
  • Name
  • Standard iterator
  • begin
  • end
  • GetDate
  • GetTime
  • FrameStart
  • DeltaTime
  • Timeout
  • Interval
  • Cancel
  • LocalTimezone

  • Start
  • Tick
  • Get
  • Set
  • ShowDialog
  • operator << (ostream)
  • Millisecond
  • Second
  • Minute
  • Hour
  • Day
  • Month
  • Year
  • Timezone
  • WeekDay
  • AddDays
  • AddMonths
  • AddYears
  • AddSeconds
  • AddMinutes
  • AddHours
  • Date_En
  • ISODate
  • ISODateTime
  • MonthName_En
  • ShortMonthName_En
  • WeekdayName_En
  • ShortWeekdayName_En
  • Time
  • ShortTime
  • Timezone_GMT
  • IsSet
  • Unset
  • Normalize
  • Save
  • Load
  • Parse
  • Timestamp
  • Now
  • LocalTimezone
  • InitializeConsole
  • InitializeStream
  • InitializeFile
  • Cleanup
  • SetWidth
  • operator <<
  • Log
  • SetSection
  • GetSection
  • SetMarkTime
  • GetMarkTime
  • SetMarkDate
  • GetMarkDate
  • EnableColor
  • ForceColor
  • DisableColor
  • SetColorEnabled
  • IsColorEnabled
  • IsColorFunctional
  • Filling constructor (use init list)
  • Move constructor
  • operator = (move assignment)
  • Swap
  • Duplicate
  • GetCount
  • GetSize
  • Add (ptr, ref)
  • Add (multiple items)
  • AddNew
  • Push (ptr, ref)
  • Pop
  • Insert (index, ref)
  • Insert (ptr)
  • InsertNew
  • MoveBefore (index, ref)
  • MoveBefore (ptr)
  • Remove (index, ref, ptr)
  • Delete (index, ref, ptr)
  • Clear
  • Collapse
  • DeleteAll
  • Destroy
  • Reserve
  • Find (ref, ptr) (const, non-const)
  • FindLocation (ref, ptr)
  • Sort (with, without predicate)
  • Get
  • operator []
  • begin
  • end
  • First
  • Last
  • Collect
  • Filling constructor
  • Move constructor
  • operator = (move assignment)
  • Swap
  • Duplicate
  • GetCount
  • GetSize
  • Add (ptr, ref) (with, without key)
  • Add (multiple items)
  • AddNew
  • Remove (index, ref, ptr)
  • Delete (index, ref, ptr)
  • Clear
  • Collapse
  • DeleteAll
  • Destroy
  • Find (key) (const, non-const)
  • Exists
  • operator []
  • begin
  • end
  • First
  • Last
  • Empty
  • Resizing
  • Move
  • operator = (move assignment)
  • Swap
  • Duplicate
  • Resize
  • Assign (with/without set)
  • Assume (with/without set)
  • Release
  • Clean
  • Destroy
  • RawData (const/non const)
  • operator ()
  • Get
  • GetSize
  • GetTotalSize
  • GetMode
  • GetBytesPerPixel
  • ForeachPixel
  • Make channels a debug only feature
  • Channel
  • operator []
  • Empty
  • Resizing
  • Move
  • operator = (move assignment)
  • Swap
  • Duplicate
  • Resize
  • Assign (with/without set)
  • Assume (with/without set)
  • Release
  • Clean
  • Destroy
  • RawData (const/non const)
  • operator ()
  • Get
  • GetSize
  • GetBytes
  • GetChannelCount
  • GetSampleRate
  • SetSampleRate
  • begin
  • end
  • Encode
  • Decode
  • PropertySize
  • UseUncompressedSize
  • Encode
  • Decode
  • Encode
  • Decode
  • URIEncode
  • URIDecode

  • From string
  • operator string
  • FromVector
  • Parse
  • operator -
  • operator +
  • operator * (point, value)
  • operator * (size)
  • operator / (point, value)
  • operator / (size)
  • operator +=, -=
  • operator *=, /= (value)
  • operator *=, /= (size)
  • Distance
  • Angle
  • Slope
  • Compare
  • operator ==
  • operator !=
  • Move
  • Max
  • operator >>
  • operator <<
  • Translate
  • Scale
  • Scale (size)
  • Rotate
  • SkewX/SkewY
  • ReflectX/ReflectY
  • Transform
  • Round
  • From string
  • From point
  • operator string
  • Parse
  • operator ==
  • operator !=
  • operator +
  • operator -
  • operator +=
  • operator -=
  • operator *=
  • operator /=
  • operator point
  • Cells
  • Area
  • IsValid
  • Resize
  • Max
  • operator >>
  • operator <<
  • Scale
  • Transform
  • Round
  • From string
  • From bounds
  • operator string
  • operator bounds
  • Parse
  • Right
  • Bottom
  • SetRight
  • SetBottom
  • Resize
  • Move
  • Center
  • TopLeft
  • TopRight
  • BottomLeft
  • BottomRight
  • GetSize
  • operator ==
  • operation !=
  • operator +, - (point, size)
  • operator *,/ (size, constant)
  • IsValid
  • operator >>
  • operator <<
  • IsInside
  • Translate
  • Scale
  • Scale (size)
  • Rotate
  • Round
  • From string
  • operator string
  • Parse
  • Width
  • Height
  • SetWidth
  • SetHeight
  • Resize
  • Move
  • Center
  • TopLeft
  • TopRight
  • BottomLeft
  • BottomRight
  • GetSize
  • operator ==
  • operation !=
  • operator |
  • operator &
  • operator +, - (point)
  • operator +, - (size)
  • operator *,/ (size, constant)
  • Normalize
  • operator >>
  • operator <<
  • Intersect
  • Union
  • IsColliding
  • IsInside
  • Translate
  • Scale
  • Scale (size)
  • Rotate
  • SkewX/SkewY
  • ReflectX/ReflectY
  • Transform
  • Round
  • From string
  • operator string
  • Parse
  • TotalX
  • TotalY
  • Horizontal
  • Vertical
  • operator +
  • operator -
  • operator ==
  • operator !=
  • AddToLeft (should be updated for box model)
  • AddToTop (should be updated for box model)
  • AddToRight (should be updated for box model)
  • AddToBottom (should be updated for box model)
  • TopLeft
  • opeartor + (size, bounds)
  • operator >>
  • operator <<
  • Round
  • ReadEnum32
  • ReadInt32
  • ReadUInt32
  • ReadInt16
  • ReadUInt16
  • ReadInt8
  • ReadUInt8
  • ReadFloat
  • ReadDouble
  • ReadBool
  • ReadString
  • ReadArray
  • ReadGuid
  • WriteEnum32
  • WriteInt32
  • WriteUInt32
  • WriteInt16
  • WriteUInt16
  • WriteInt8
  • WriteUInt8
  • WriteFloat
  • WriteDouble
  • WriteBool
  • WriteStringWithSize
  • WriteString
  • WriteArray
  • WriteVector
  • WriteGuid
  • DefineStruct
  • DefineStructMembersWithName
  • DefineEnumStrings
  • DefineEnumStringsCM (class member)
  • DefineEnumStringsTN (with typename)
  • DefineEnumStringsCMTN (class member with typename)
  • Sequence
  • Generate
  • RemoveRValueReference
  • IsStreamable

  • ReturnType
  • Arity
  • IsMember
  • Arguments<int>: Type
  • IsPointer
  • IsReference
  • IsConstant
  • IsSameType
  • operator ==
  • operator !=
  • operator type_info
  • GetSize
  • TypeInfo
  • Name
  • Duplicate
  • Clone
  • Delete
  • NormalType
  • ConstType
  • RefType
  • ConstRefType
  • PtrType
  • ConstPtrType
  • ASSERT
  • ASSERT_ALL
  • ASSERT_DUMP
  • ASSERT_FALSE
  • NotImplemented
  • GetTypeName
  • WEAKINIT
  • Empty/filling
  • Move
  • operator = move assignment
  • Swap
  • Register (free, member function)
  • Unregister
  • operator ()

  • IsColorSupported
  • IsStyleSupported
  • SetColor
  • SetBackground
  • Reset
  • SetBold
  • SetUnderline
  • SetItalic
  • SetNegative
  • GetWidth
  • GotoXY
  • EnableCaret
  • DisableCaret

  • Trim
  • TrimStart
  • TrimEnd
  • TrimInplace
  • TrimStartInplace
  • TrimEndInplace
  • To
  • From
  • Parse
  • ToLower
  • ToUpper
  • ToLowerInplace
  • ToUpperInplace
  • Replace
  • ReplaceInplace
  • Extract
  • Extract_UseQuotes
  • Split
  • TrimQuotes
  • TrimQuotesInplace
  • Concat


  • Forward iterator that tokenizes a string from the given delimeter.
  • Empty / Copy / Move constructor
  • Assumed / Duplicated
  • TypeInfo
  • TypeServices
  • operator = (copy/move)
  • operator = (value)
  • Swap
  • Set
  • Clear
  • GetRaw
  • SetRaw
  • AssumeRaw
  • Disown
  • SetType
  • Get
  • GetTypeName
  • UnsafeGet
  • TypeCheck
  • IsSameType
  • IsPointer
  • Pointer
  • operator ==
  • operator !=
  • IsSet
  • Empty constructor
  • Create new constructor (uses tag)
  • Filling constructor (using array, long long, parts, stream)
  • operator ==, !=, <
  • Set
  • New
  • operator string
  • Load
  • Save
  • LoadLong (old full guid)
  • IsEmpty
  • operator bool
  • Empty
  • RunAsync
  • RunInParallel