MemoryStream.h trio/Defs.h trio/Stream.h cstdint Aliases.h Aliases.h MemoryStreamImpl.h trio::MemoryStream pma::DefaultInstanceCreator< trio::MemoryStream > pma::DefaultInstanceDestroyer< trio::MemoryStream > trio pma //CopyrightEpicGames,Inc.AllRightsReserved. #pragmaonce #include"trio/Defs.h" #include"trio/Stream.h" #include<cstdint> namespacetrio{ classTRIOAPIMemoryStream:publicBoundedIOStream{ public: staticMemoryStream*create(MemoryResource*memRes=nullptr); staticMemoryStream*create(std::size_tinitialSize,MemoryResource*memRes=nullptr); staticvoiddestroy(MemoryStream*instance); MemoryStream()=default; ~MemoryStream()override; MemoryStream(constMemoryStream&)=delete; MemoryStream&operator=(constMemoryStream&)=delete; MemoryStream(MemoryStream&&)=default; MemoryStream&operator=(MemoryStream&&)=default; }; }//namespacetrio namespacepma{ template<> structDefaultInstanceCreator<trio::MemoryStream>{ usingtype=FactoryCreate<trio::MemoryStream>; }; template<> structDefaultInstanceDestroyer<trio::MemoryStream>{ usingtype=FactoryDestroy<trio::MemoryStream>; }; }//namespacepma