11 #include "SavestateTypes.h"    19 #include <libavutil/pixfmt.h>    36   virtual void Reset() = 0;
    41   virtual bool Serialize(
const uint8_t*& data, 
size_t& size) 
const = 0;
    49   virtual SAVE_TYPE 
Type() 
const = 0;
    56   virtual uint8_t 
Slot() 
const = 0;
    61   virtual std::string 
Label() 
const = 0;
    66   virtual std::string 
Caption() 
const = 0;
   184   virtual void SetType(SAVE_TYPE type) = 0;
   185   virtual void SetSlot(uint8_t slot) = 0;
   186   virtual void SetLabel(
const std::string& label) = 0;
   187   virtual void SetCaption(
const std::string& caption) = 0;
   188   virtual void SetCreated(
const CDateTime& createdUTC) = 0;
   189   virtual void SetGameFileName(
const std::string& gameFileName) = 0;
   190   virtual void SetTimestampFrames(uint64_t timestampFrames) = 0;
   191   virtual void SetTimestampWallClock(
double timestampWallClock) = 0;
   192   virtual void SetGameClientID(
const std::string& gameClient) = 0;
   193   virtual void SetGameClientVersion(
const std::string& gameClient) = 0;
   194   virtual void SetPixelFormat(AVPixelFormat pixelFormat) = 0;
   195   virtual void SetNominalWidth(
unsigned int nominalWidth) = 0;
   196   virtual void SetNominalHeight(
unsigned int nominalHeight) = 0;
   197   virtual void SetMaxWidth(
unsigned int maxWidth) = 0;
   198   virtual void SetMaxHeight(
unsigned int maxHeight) = 0;
   199   virtual void SetPixelAspectRatio(
float pixelAspectRatio) = 0;
   200   virtual uint8_t* GetVideoBuffer(
size_t size) = 0;
   201   virtual void SetVideoWidth(
unsigned int videoWidth) = 0;
   202   virtual void SetVideoHeight(
unsigned int videoHeight) = 0;
   203   virtual void SetRotationDegCCW(
unsigned int rotationCCW) = 0;
   204   virtual uint8_t* GetMemoryBuffer(
size_t size) = 0;
   205   virtual void Finalize() = 0;
   211   virtual bool Deserialize(std::vector<uint8_t> data) = 0;
 virtual bool Deserialize(std::vector< uint8_t > data)=0
} 
virtual unsigned int GetVideoWidth() const =0
The width of the video frame, in pixels. 
virtual size_t GetMemorySize() const =0
The size of the memory region returned by GetMemoryData() 
virtual std::string Caption() const =0
A caption that describes the state of the game for this savestate. 
virtual AVPixelFormat GetPixelFormat() const =0
The pixel format of the video stream. 
virtual unsigned int GetVideoHeight() const =0
The height of the video frame, in pixels. 
Definition: ISavestate.h:28
virtual std::string GameClientID() const =0
The game client add-on ID that created this savestate. 
virtual const uint8_t * GetMemoryData() const =0
A pointer to the internal memory (SRAM) of the frame. 
virtual size_t GetVideoSize() const =0
The size of the frame's video data, in bytes. 
virtual void Reset()=0
Reset to the initial state. 
virtual uint64_t TimestampFrames() const =0
The number of frames in the entire gameplay history. 
virtual CDateTime Created() const =0
The timestamp of this savestate's creation. 
virtual const uint8_t * GetVideoData() const =0
A pointer to the frame's video data (pixels) 
virtual unsigned int GetNominalHeight() const =0
The nominal height of the video stream, a good guess for subsequent frames. 
virtual unsigned int GetMaxHeight() const =0
The maximum height of the video stream, in pixels. 
Definition: AudioDecoder.h:18
virtual SAVE_TYPE Type() const =0
The type of save action that created this savestate, either manual or automatic. 
DateTime class, which uses FileTime as it's base. 
Definition: XBDateTime.h:63
virtual std::string GameClientVersion() const =0
The semantic version of the game client. 
virtual float GetPixelAspectRatio() const =0
The pixel aspect ratio of the video stream. 
virtual bool Serialize(const uint8_t *&data, size_t &size) const =0
virtual double TimestampWallClock() const =0
The duration of the entire gameplay history as seen by a wall clock. 
virtual std::string GameFileName() const =0
The name of the file belonging to this savestate's game. 
virtual unsigned int GetMaxWidth() const =0
The maximum width of the video stream, in pixels. 
virtual uint8_t Slot() const =0
The slot this savestate was saved into, or 0 for no slot. 
virtual std::string Label() const =0
The label shown in the GUI for this savestate. 
virtual unsigned int GetRotationDegCCW() const =0
The rotation of the video frame, in degrees counter-clockwise. 
virtual unsigned int GetNominalWidth() const =0
The nominal width of the video stream, a good guess for subsequent frames.