pfFluxMemory man page on IRIX

Man page or keyword search:  
man Server   31559 pages
apropos Keyword Search (all sections)
Output format
IRIX logo
[printable version]



pfFluxMemory(3pf)	      OpenGL Performer 3.2.2 libpr C++ Reference Pages

NAME
     pfFluxMemory - Manage a pfFluxMemory

FUNCTION SPECIFICATION
     #include <Performer/pr/pfFlux.h>

     static pfType*	    pfFluxMemory::getClassType(void);

     pfFlux*		    pfFluxMemory::getFlux(pfFluxMemory* fmem);

     static pfFluxMemory*   pfFluxMemory::getFluxMemory(void* data);

PARENT CLASS FUNCTIONS
     The OpenGL Performer class pfFluxMemory is derived from the parent class
     pfMemory, so each of these member functions of class pfMemory are also
     directly usable with objects of class pfFluxMemory.  This is also true
     for ancestor classes of class pfMemory.

     void*	    pfMemory::getData(const void *ptr);
     pfType *	    pfMemory::getType();
     int	    pfMemory::isOfType(pfType *type);
     int	    pfMemory::isExactType(pfType *type);
     const char *   pfMemory::getTypeName();
     int	    pfMemory::copy(pfMemory *src);
     int	    pfMemory::compare(const pfMemory *mem);
     void	    pfMemory::print(uint which, uint verbose, char *prefix,
		      FILE *file);
     int	    pfMemory::getArena(void *ptr);
     void*	    pfMemory::getArena();
     int	    pfMemory::ref();
     int	    pfMemory::unref();
     int	    pfMemory::unrefDelete();
     int	    pfMemory::unrefGetRef();
     int	    pfMemory::getRef();
     int	    pfMemory::checkDelete();
     int	    pfMemory::isFluxed();
     void *	    pfMemory::getArena();
     int	    pfMemory::getSize();

DESCRIPTION
     A pfFluxMemory is a data buffer of a pfFlux.  It has a header and them a
     data portion.  A pfFluxMemory should never be created or destroyed
     separate from its parent pfFlux.

     pfFluxMemory::getClassType returns the pfType* for the class
     pfFluxMemory.  The pfType* returned by pfFluxMemory::getClassType is the
     same as the pfType* returned by invoking the virtual function getType on
     any instance of class pfFluxMemory.

     pfFluxMemory::getFlux returns a pointer to the parent pfFlux of a
     pfFluxMemory.

									Page 1

pfFluxMemory(3pf)	      OpenGL Performer 3.2.2 libpr C++ Reference Pages

     pfFluxMemory::getFluxMemory returns a pointer to the pfFluxMemory that
     data points to the data portion of.

     The data portion of a pfFluxMemory can be converted into a fluxed form of
     any Performer object that is derived from pfMemory.  This should only be
     done in the initFunc of a pfFlux.	Although any Performer object can be
     fluxed, only certain Performer objects have been modified to accept
     fluxed forms of the objects they connect to.  The following table lists
     what can take what.

			   parent object   fluxed child
			   ____________________________
			   pfGeode	   pfGeoSet
					 |

     Example of turning the data portion of a pfFluxMemory into a fluxed
     pfGeoSet.	This is how pfFluxedGSetInit() is implemented.	Note:  This
     can only be done in C++.

	  int pfFluxedGSetInit(pfFluxMemory *fmem)
	  {
	      if (fmem == NULL)
		  return sizeof(pfGeoSet);

	      new(fmem) pfGeoSet;

	      return 0;
	  }

     Example of creating a pfFlux containing fluxed pfGeoSets:

	  int make_fluxed_gset(pfFluxMemory *fmem)
	  {
	      pfGeoSet *gset;
	      pfVec3 *coords;

	      if (fmem == NULL)
		  return pfFluxedGSetInit(fmem);

	      pfFluxedGSetInit(fmem);

	      gset = (pfGeoSet*)fmem->getData();

	      gset->setPrimType(PFGS_TRIS);

	      ... finish initializing pfGeoSet

	      return 0;

									Page 2

pfFluxMemory(3pf)	      OpenGL Performer 3.2.2 libpr C++ Reference Pages

	  }

	  main()
	  {
	      pfFlux *fluxed_gset;
	      pfGeoSet *gset;

	      pfInit();
	      pfConfig();

	      fluxed_gset = new pfFlux(make_fluxed_gset,
				       PFFLUX_DEFAULT_NUM_BUFFERS);
	      gset = (pfGeoSet*)fluxed_gset->getCurData();

	      ...
	  }

SEE ALSO
     pfFlux, pfMemory, pfFluxedGSetInit

									Page 3

[top]

List of man pages available for IRIX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net