EMF::METARECORD(3)

NAME
EMF::METARECORD - The base class of all metafile records.

SYNOPSIS

#include <libemf.h>

Inherited by EMF::EMRARC, EMF::EMRARCTO, EMF::EMRBEGINPATH, EMF::EMRCLOSEFIGURE, EMF::EMRCREATEBRUSHINDIRECT, EMF::EMRCREATEPALETTE, EMF::EMRCREATEPEN, EMF::EMRDELETEOBJECT, EMF::EMRELLIPSE, EMF::EMRENDPATH, EMF::EMREOF, EMF::EMREXTCREATEFONTINDIRECTW, EMF::EMREXTCREATEPEN, EMF::EMREXTTEXTOUTA, EMF::EMREXTTEXTOUTW, EMF::EMRFILLPATH, EMF::EMRLINETO, EMF::EMRMODIFYWORLDTRANSFORM, EMF::EMRMOVETOEX, EMF::EMRPOLYBEZIER, EMF::EMRPOLYBEZIER16, EMF::EMRPOLYBEZIERTO, EMF::EMRPOLYBEZIERTO16, EMF::EMRPOLYGON, EMF::EMRPOLYGON16, EMF::EMRPOLYLINE, EMF::EMRPOLYLINE16, EMF::EMRPOLYLINETO, EMF::EMRPOLYLINETO16, EMF::EMRPOLYPOLYGON, EMF::EMRPOLYPOLYGON16, EMF::EMRRECTANGLE, EMF::EMRRESTOREDC, EMF::EMRSAVEDC, EMF::EMRSCALEVIEWPORTEXTEX, EMF::EMRSCALEWINDOWEXTEX, EMF::EMRSELECTOBJECT, EMF::EMRSETBKCOLOR, EMF::EMRSETBKMODE, EMF::EMRSETMAPMODE, EMF::EMRSETMETARGN, EMF::EMRSETMITERLIMIT, EMF::EMRSETPIXELV, EMF::EMRSETPOLYFILLMODE, EMF::EMRSETTEXTALIGN, EMF::EMRSETTEXTCOLOR, EMF::EMRSETVIEWPORTEXTEX, EMF::EMRSETVIEWPORTORGEX, EMF::EMRSETWINDOWEXTEX, EMF::EMRSETWINDOWORGEX, EMF::EMRSETWORLDTRANSFORM, EMF::EMRSTROKEANDFILLPATH, EMF::EMRSTROKEPATH, and EMF::ENHMETAHEADER.

  Public Member Functions

virtual void execute (METAFILEDEVICECONTEXT *source, HDC dc) const =0
virtual bool serialize (DATASTREAM ds)=0
virtual int size (void) const =0
virtual ~METARECORD ()

Detailed Description

The base class of all metafile records.

A metafile consists off a sequence of graphics records 'executed' in order. This is a common base class that allows each, different, record to be stored in a common list. An interface is specified for each record to write itself to a file.

Constructor & Destructor Documentation

  virtual EMF::METARECORD::~METARECORD () [inline], [virtual]
The virtual destructor allows records which allocated additional memory to release it when they are deleted. Simple records just use the default destructor defined here.

Member Function Documentation

  virtual void EMF::METARECORD::execute (METAFILEDEVICECONTEXT * source, HDC dc) const [pure virtual]
Execute the graphics command in the given context. Used by PlayEnhMetaFile to 'copy' one metafile into another.

Parameters
    source the device context from which this record is taken.
    dc the destination context.

Implemented in EMF::EMRSETMITERLIMIT, EMF::EMRSETMETARGN, EMF::EMRRESTOREDC, EMF::EMRSAVEDC, EMF::EMRCLOSEFIGURE, EMF::EMRENDPATH, EMF::EMRBEGINPATH, EMF::EMRSTROKEANDFILLPATH, EMF::EMRSTROKEPATH, EMF::EMRFILLPATH, EMF::EMRCREATEPALETTE, EMF::EMREXTCREATEFONTINDIRECTW, EMF::EMRCREATEBRUSHINDIRECT, EMF::EMREXTCREATEPEN, EMF::EMRCREATEPEN, EMF::EMRSETPIXELV, EMF::EMREXTTEXTOUTW, EMF::EMREXTTEXTOUTA, EMF::EMRPOLYLINETO16, EMF::EMRPOLYLINETO, EMF::EMRPOLYBEZIERTO16, EMF::EMRPOLYBEZIERTO, EMF::EMRPOLYBEZIER16, EMF::EMRPOLYBEZIER, EMF::EMRPOLYPOLYGON16, EMF::EMRPOLYPOLYGON, EMF::EMRPOLYGON16, EMF::EMRPOLYGON, EMF::EMRPOLYLINE16, EMF::EMRPOLYLINE, EMF::EMRELLIPSE, EMF::EMRRECTANGLE, EMF::EMRARCTO, EMF::EMRARC, EMF::EMRLINETO, EMF::EMRMOVETOEX, EMF::EMRDELETEOBJECT, EMF::EMRSELECTOBJECT, EMF::EMRSETMAPMODE, EMF::EMRSETPOLYFILLMODE, EMF::EMRSETBKMODE, EMF::EMRSETBKCOLOR, EMF::EMRSETTEXTCOLOR, EMF::EMRSETTEXTALIGN, EMF::EMRSETWORLDTRANSFORM, EMF::EMRMODIFYWORLDTRANSFORM, EMF::EMRSCALEWINDOWEXTEX, EMF::EMRSETWINDOWEXTEX, EMF::EMRSCALEVIEWPORTEXTEX, EMF::EMRSETVIEWPORTEXTEX, EMF::EMRSETWINDOWORGEX, EMF::EMRSETVIEWPORTORGEX, EMF::EMREOF, and EMF::ENHMETAHEADER.

  virtual bool EMF::METARECORD::serialize (DATASTREAM ds) [pure virtual]
Write yourself to the given file. This is virtual since some records are of arbitrary length and need to write additional information after their EMR structure.

Parameters
    ds the datastream to write oneself to.

Implemented in EMF::EMRSETMITERLIMIT, EMF::EMRSETMETARGN, EMF::EMRRESTOREDC, EMF::EMRSAVEDC, EMF::EMRCLOSEFIGURE, EMF::EMRENDPATH, EMF::EMRBEGINPATH, EMF::EMRSTROKEANDFILLPATH, EMF::EMRSTROKEPATH, EMF::EMRFILLPATH, EMF::EMRCREATEPALETTE, EMF::EMREXTCREATEFONTINDIRECTW, EMF::EMRCREATEBRUSHINDIRECT, EMF::EMREXTCREATEPEN, EMF::EMRCREATEPEN, EMF::EMRSETPIXELV, EMF::EMREXTTEXTOUTW, EMF::EMREXTTEXTOUTA, EMF::EMRPOLYLINETO16, EMF::EMRPOLYLINETO, EMF::EMRPOLYBEZIERTO16, EMF::EMRPOLYBEZIERTO, EMF::EMRPOLYBEZIER16, EMF::EMRPOLYBEZIER, EMF::EMRPOLYPOLYGON16, EMF::EMRPOLYPOLYGON, EMF::EMRPOLYGON16, EMF::EMRPOLYGON, EMF::EMRPOLYLINE16, EMF::EMRPOLYLINE, EMF::EMRELLIPSE, EMF::EMRRECTANGLE, EMF::EMRARCTO, EMF::EMRARC, EMF::EMRLINETO, EMF::EMRMOVETOEX, EMF::EMRDELETEOBJECT, EMF::EMRSELECTOBJECT, EMF::EMRSETMAPMODE, EMF::EMRSETPOLYFILLMODE, EMF::EMRSETBKMODE, EMF::EMRSETBKCOLOR, EMF::EMRSETTEXTCOLOR, EMF::EMRSETTEXTALIGN, EMF::EMRSETWORLDTRANSFORM, EMF::EMRMODIFYWORLDTRANSFORM, EMF::EMRSCALEWINDOWEXTEX, EMF::EMRSETWINDOWEXTEX, EMF::EMRSCALEVIEWPORTEXTEX, EMF::EMRSETVIEWPORTEXTEX, EMF::EMRSETWINDOWORGEX, EMF::EMRSETVIEWPORTORGEX, EMF::EMREOF, and EMF::ENHMETAHEADER.

  virtual int EMF::METARECORD::size (void) const [pure virtual]
The header record of a metafile records the total size of the metafile in bytes, so as each record is added to the list, it updates the total size.

Implemented in EMF::EMRSETMITERLIMIT, EMF::EMRSETMETARGN, EMF::EMRRESTOREDC, EMF::EMRSAVEDC, EMF::EMRCLOSEFIGURE, EMF::EMRENDPATH, EMF::EMRBEGINPATH, EMF::EMRSTROKEANDFILLPATH, EMF::EMRSTROKEPATH, EMF::EMRFILLPATH, EMF::EMRCREATEPALETTE, EMF::EMREXTCREATEFONTINDIRECTW, EMF::EMRCREATEBRUSHINDIRECT, EMF::EMREXTCREATEPEN, EMF::EMRCREATEPEN, EMF::EMRSETPIXELV, EMF::EMREXTTEXTOUTW, EMF::EMREXTTEXTOUTA, EMF::EMRPOLYLINETO16, EMF::EMRPOLYLINETO, EMF::EMRPOLYBEZIERTO16, EMF::EMRPOLYBEZIERTO, EMF::EMRPOLYBEZIER16, EMF::EMRPOLYBEZIER, EMF::EMRPOLYPOLYGON16, EMF::EMRPOLYPOLYGON, EMF::EMRPOLYGON16, EMF::EMRPOLYGON, EMF::EMRPOLYLINE16, EMF::EMRPOLYLINE, EMF::EMRELLIPSE, EMF::EMRRECTANGLE, EMF::EMRARCTO, EMF::EMRARC, EMF::EMRLINETO, EMF::EMRMOVETOEX, EMF::EMRDELETEOBJECT, EMF::EMRSELECTOBJECT, EMF::EMRSETMAPMODE, EMF::EMRSETPOLYFILLMODE, EMF::EMRSETBKMODE, EMF::EMRSETBKCOLOR, EMF::EMRSETTEXTCOLOR, EMF::EMRSETTEXTALIGN, EMF::EMRSETWORLDTRANSFORM, EMF::EMRMODIFYWORLDTRANSFORM, EMF::EMRSCALEWINDOWEXTEX, EMF::EMRSETWINDOWEXTEX, EMF::EMRSCALEVIEWPORTEXTEX, EMF::EMRSETVIEWPORTEXTEX, EMF::EMRSETWINDOWORGEX, EMF::EMRSETVIEWPORTORGEX, EMF::EMREOF, and EMF::ENHMETAHEADER.

Referenced by EMF::METAFILEDEVICECONTEXT::appendHandle(), and EMF::METAFILEDEVICECONTEXT::appendRecord().

Author

Generated automatically by Doxygen for libemf from the source code.