CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
CeresEngine::ResourceOutputStream Class Reference

A specialized OutputStream for a ResourceStream. More...

#include <CeresEngine/Resource/ResourceStream.hpp>

Inheritance diagram for CeresEngine::ResourceOutputStream:
CeresEngine::Poly< IResourceOutputStream, sizeof(void *), false >

Public Member Functions

 ResourceOutputStream (ResourceStreamLock &&lock, OutputStream &&stream)
 
 operator OutputStream ()
 Converts the ResourceOutputStream into a OutputStream.
 
- Public Member Functions inherited from CeresEngine::Poly< IResourceOutputStream, sizeof(void *), false >
 Poly (const Poly &other)
 Creates a new Poly by copying an existing one.
 
 Poly (Poly &&other) noexcept
 Creates a new Poly by moving an existing one.
 
 Poly (std::nullptr_t) noexcept
 Creates a new empty Poly.
 
 Poly () noexcept
 Creates a new empty Poly.
 
 Poly (std::in_place_type_t< TT >, Args &&... args)
 Creates a new Poly that holds a newly constructed object of type TT.
 
 Poly (Args &&... args)
 Creates a new Poly that holds a newly constructed object of type T.
 
 Poly (TT object)
 Creates a new Poly that holds a copy constructed object of type TT.
 
 Poly (TT &&object)
 Creates a new Poly that holds a copy constructed object of type TT.
 
 Poly (IResourceOutputStream *const instance)
 Creates a new Poly instance by referencing another.
 
 Poly (const Poly< U, SmallSize, Copyable, IResourceOutputStream > &other)
 Creates a new Poly instance by referencing another.
 
 Poly (Poly< U, SmallSize, Copyable, IResourceOutputStream > &&other)
 Creates a new Poly instance by referencing another.
 
bool isCopyable () const noexcept
 Checks if the Poly copy constructor can be safely called.
 
Polyoperator= (const Poly &other)
 Assigns a Poly by copying an existing one.
 
Polyoperator= (Poly &&other)
 Assigns a Poly by moving an existing one.
 
Polyoperator= (std::nullptr_t) noexcept
 Assigns the Poly a nullptr value.
 
bool isMovable () const noexcept
 Checks if the Poly move constructor can be safely called.
 
 ~Poly () noexcept
 Destroys the Poly and destroys the object is present.
 
TT & emplace (Args &&... args)
 Emplace a new object of type TT into the Poly.
 
TT & emplace (TT &&instance)
 
bool valid () const
 Checks if the pointer has a valid object stored in it.
 
bool empty () const
 Checks if the pointer has a valid object stored in it.
 
 operator bool () const
 Checks if the pointer has a valid object stored in it.
 
IResourceOutputStreamget ()
 
const IResourceOutputStreamget () const
 
IResourceOutputStreamoperator-> ()
 
const IResourceOutputStreamoperator-> () const
 
const IResourceOutputStreamoperator* () const &
 
IResourceOutputStreamoperator* () &
 &
 
IResourceOutputStream && operator* () &&
 &
 
const std::type_info & getTypeID () const
 
bool is () const
 Checks if the hold object is of type TT.
 
TT * being ()
 Safely casts the hold type to TT.
 
const TT * being () const
 Safely casts the hold type to TT.
 
TT & as () &
 Casts the hold type to TT.
 
TT && as () &&
 Casts the hold type to TT.
 
const TT & as () const &
 Casts the hold type to TT.
 

Private Types

using super = Poly< IResourceOutputStream, sizeof(void *), false >
 

Additional Inherited Members

- Static Public Attributes inherited from CeresEngine::Poly< IResourceOutputStream, sizeof(void *), false >
static constexpr bool isSmall
 true if an object of type U will not cause an allocation.
 

Detailed Description

A specialized OutputStream for a ResourceStream.

Member Typedef Documentation

◆ super

Constructor & Destructor Documentation

◆ ResourceOutputStream()

CeresEngine::ResourceOutputStream::ResourceOutputStream ( ResourceStreamLock &&  lock,
OutputStream &&  stream 
)

Member Function Documentation

◆ operator OutputStream()

CeresEngine::ResourceOutputStream::operator OutputStream ( )
inlineexplicit

Converts the ResourceOutputStream into a OutputStream.


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