Provided by: libemf-doc_1.0.9+git.10.3231442-1_all bug

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.

       Referenced by EMF::EMRCREATEPALETTE::execute().

   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.