Main Page   Class Hierarchy   Compound List   File List   Compound Members  

EMF::METARECORD Class Reference

The base class of all metafile records. More...

#include <libemf.h>

Inheritance diagram for EMF::METARECORD::

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::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::EMRSETPIXELV EMF::EMRSETPOLYFILLMODE EMF::EMRSETTEXTALIGN EMF::EMRSETTEXTCOLOR EMF::EMRSETVIEWPORTEXTEX EMF::EMRSETVIEWPORTORGEX EMF::EMRSETWINDOWEXTEX EMF::EMRSETWINDOWORGEX EMF::EMRSETWORLDTRANSFORM EMF::EMRSTROKEANDFILLPATH EMF::EMRSTROKEPATH EMF::ENHMETAHEADER List of all members.

Public Methods

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

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

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.

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

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.

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

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.

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


The documentation for this class was generated from the following file:
Generated at Mon Jan 13 21:34:19 2003 for EMF by doxygen1.2.8.1 written by Dimitri van Heesch, © 1997-2001