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

NAME

       EMF::GLOBALOBJECTS

SYNOPSIS

       #include <libemf.h>

   Public Member Functions
       HGDIOBJ add (OBJECT *object)
       OBJECT * find (const HGDIOBJ handle)
       void remove (const OBJECT *object)
       std::vector< EMF::OBJECT * >::const_iterator begin (void) const
       std::vector< EMF::OBJECT * >::const_iterator end (void) const
       METARECORDCTOR newRecord (DWORD iType) const

   Static Public Member Functions
       static EMF::METARECORD * new_eof (DATASTREAM &ds)
           Create a new EMREOF record.
       static EMF::METARECORD * new_setviewportorgex (DATASTREAM &ds)
           Create a new EMRSETVIEWPORTORGEX record.
       static EMF::METARECORD * new_setwindoworgex (DATASTREAM &ds)
           Create a new EMRSETWINDOWORGEX record.
       static EMF::METARECORD * new_setviewportextex (DATASTREAM &ds)
           Create a new EMRSETVIEWPORTEXTEX record.
       static EMF::METARECORD * new_setwindowextex (DATASTREAM &ds)
           Create a new EMRSETWINDOWEXTEX record.
       static EMF::METARECORD * new_scaleviewportextex (DATASTREAM &ds)
           Create a new SCALEVIEWPORTEXTEX record.
       static EMF::METARECORD * new_scalewindowextex (DATASTREAM &ds)
           Create a new SCALEWINDOWEXTEX record.
       static EMF::METARECORD * new_modifyworldtransform (DATASTREAM &ds)
           Create a new MODIFYWORLDTRANSFORM record.
       static EMF::METARECORD * new_setworldtransform (DATASTREAM &ds)
           Create a new SETWORLDTRANSFORM record.
       static EMF::METARECORD * new_settextalign (DATASTREAM &ds)
           Create a new SETTEXTALIGN record.
       static EMF::METARECORD * new_settextcolor (DATASTREAM &ds)
           Create a new SETTEXTCOLOR record.
       static EMF::METARECORD * new_setbkcolor (DATASTREAM &ds)
           Create a new SETBKCOLOR record.
       static EMF::METARECORD * new_setbkmode (DATASTREAM &ds)
           Create a new SETBKMODE record.
       static EMF::METARECORD * new_setpolyfillmode (DATASTREAM &ds)
           Create a new SETPOLYFILLMODE record.
       static EMF::METARECORD * new_setmapmode (DATASTREAM &ds)
           Create a new SETMAPMODE record.
       static EMF::METARECORD * new_selectobject (DATASTREAM &ds)
           Create a new SELECTOBJECT record.
       static EMF::METARECORD * new_deleteobject (DATASTREAM &ds)
           Create a new DELETEOBJECT record.
       static EMF::METARECORD * new_movetoex (DATASTREAM &ds)
           Create a new MOVETOEX record.
       static EMF::METARECORD * new_lineto (DATASTREAM &ds)
           Create a new LINETO record.
       static EMF::METARECORD * new_arc (DATASTREAM &ds)
           Create a new ARC record.
       static EMF::METARECORD * new_arcto (DATASTREAM &ds)
           Create a new ARCTO record.
       static EMF::METARECORD * new_rectangle (DATASTREAM &ds)
           Create a new RECTANGLE record.
       static EMF::METARECORD * new_ellipse (DATASTREAM &ds)
           Create a new ELLIPSE record.
       static EMF::METARECORD * new_polyline (DATASTREAM &ds)
           Create a new POLYLINE record.
       static EMF::METARECORD * new_polyline16 (DATASTREAM &ds)
           Create a new POLYLINE16 record.
       static EMF::METARECORD * new_polygon (DATASTREAM &ds)
           Create a new POLYGON record.
       static EMF::METARECORD * new_polygon16 (DATASTREAM &ds)
           Create a new POLYGON16 record.
       static EMF::METARECORD * new_polypolygon (DATASTREAM &ds)
           Create a new POLYPOLYGON record.
       static EMF::METARECORD * new_polypolygon16 (DATASTREAM &ds)
           Create a new POLYPOLYGON16 record.
       static EMF::METARECORD * new_polybezier (DATASTREAM &ds)
           Create a new POLYBEZIER record.
       static EMF::METARECORD * new_polybezier16 (DATASTREAM &ds)
           Create a new POLYBEZIER16 record.
       static EMF::METARECORD * new_polybezierto (DATASTREAM &ds)
           Create a new POLYBEZIERTO record.
       static EMF::METARECORD * new_polybezierto16 (DATASTREAM &ds)
           Create a new POLYBEZIERTO16 record.
       static EMF::METARECORD * new_polylineto (DATASTREAM &ds)
           Create a new POLYLINETO record.
       static EMF::METARECORD * new_polylineto16 (DATASTREAM &ds)
           Create a new POLYLINETO16 record.
       static EMF::METARECORD * new_exttextouta (DATASTREAM &ds)
           Create a new EXTTEXTOUTA record.
       static EMF::METARECORD * new_exttextoutw (DATASTREAM &ds)
           Create a new EXTTEXTOUTW record.
       static EMF::METARECORD * new_setpixelv (DATASTREAM &ds)
           Create a new SETPIXELV record.
       static EMF::METARECORD * new_createpen (DATASTREAM &ds)
           Create a new CREATEPEN record.
       static EMF::METARECORD * new_extcreatepen (DATASTREAM &ds)
           Create a new EXTCREATEPEN record.
       static EMF::METARECORD * new_createbrushindirect (DATASTREAM &ds)
           Create a new CREATEBRUSHINDIRECT record.
       static EMF::METARECORD * new_extcreatefontindirectw (DATASTREAM &ds)
           Create a new EXTCREATEFONTINDIRECTW record.
       static EMF::METARECORD * new_fillpath (DATASTREAM &ds)
           Create a new FILLPATH record.
       static EMF::METARECORD * new_strokepath (DATASTREAM &ds)
           Create a new STROKEPATH record.
       static EMF::METARECORD * new_strokeandfillpath (DATASTREAM &ds)
           Create a new STROKEANDFILLPATH record.
       static EMF::METARECORD * new_beginpath (DATASTREAM &ds)
           Create a new BEGINPATH record.
       static EMF::METARECORD * new_endpath (DATASTREAM &ds)
           Create a new ENDPATH record.
       static EMF::METARECORD * new_closefigure (DATASTREAM &ds)
           Create a new CLOSEFIGURE record.
       static EMF::METARECORD * new_savedc (DATASTREAM &ds)
           Create a new SAVEDC record.
       static EMF::METARECORD * new_restoredc (DATASTREAM &ds)
           Create a new RESTOREDC record.
       static EMF::METARECORD * new_setmetargn (DATASTREAM &ds)
           Create a new SETMETARGN record.
       static EMF::METARECORD * new_setmiterlimit (DATASTREAM &ds)
           Create a new SETMITERLIMIT record.

Detailed Description

       Stores all the objects in a single database within a process.

Member Function Documentation

   HGDIOBJ EMF::GLOBALOBJECTS::add (OBJECT * object)
       Add an object to the global vector. The object's handle is simply its index in the global
       object vector, which is computed by the very interesting 'difference between two
       iterators' method.

       Parameters:
           object pointer to a real instance of an object, not its handle.

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

   std::vector<EMF::OBJECT*>::const_iterator EMF::GLOBALOBJECTS::begin (void) const [inline]
       Returns:
           an iterator pointing to the first global object.

   std::vector<EMF::OBJECT*>::const_iterator EMF::GLOBALOBJECTS::end (void) const [inline]
       Returns:
           an iterator pointing to (one past) the final global object.

   OBJECT * EMF::GLOBALOBJECTS::find (const HGDIOBJ handle)
       Look up a object by handle in the global object vector. Note: Stock objects (like a gray
       brush or the black pen) have their high order bit set, so this has to be masked out when
       using their handles.

       Parameters:
           handle the object's handle.

       Returns:
           pointer to object.

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

   METARECORDCTOR EMF::GLOBALOBJECTS::newRecord (DWORD iType) const
       See if we have a constructor for a record of the given type.

       Parameters:
           iType metarecord type.

       Returns:
           pointer to 'virtual' constructor.

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

   void EMF::GLOBALOBJECTS::remove (const OBJECT * object)
       A call to the metafile function DeleteObject() allows a particular object's handle to be
       reused, so some care has to be taken to erase it.

       Parameters:
           object pointer to object to delete.

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

Author

       Generated automatically by Doxygen for libemf from the source code.