dmuObj
#include "dmuObj.h"
Overview
See the source code for more info and implementation details.
Public Methods
- dmuObj()
- virtual ~dmuObj()
- virtual int addObject(dmuObj *newObj)
This method will add "newObj" to the list of children
NOTE: As of right now, there is no support for modifying the list
of children.
- virtual int addSrcConstraints(DMparams *params)
These methods are explained a bit above.
NOTE: Both of these methods should be impelemented by the subclass of
this objects, so if either of these methods are called, they return
an error
- virtual int addDstConstraints(DMparams *params)
- virtual int init(dmuParams *params = NULL)
This is the method that initializes the whole system
It causes each parent object to create a dmbuffer.
- virtual int start(int propagate = DMU_PROPAGATE)
this is another method that will propagate down the graph
this is to be used to start stuff up
- virtual int stop()
This is a method to stop the chain from processing. If new
buffers come it, they will be ignored. If I'm an object
that feeds others, then I stop feeding.
- virtual int getFD()
This method should return a file desciptor you can select on
which will signal when you have new data ready to propagate to
you children
- virtual int setFD(fd_set *fdSet,int *maxFD, int propagate = 1)
This method will set up the FD set for you for the _entire tree_
It will propagate down, calling setFD on all it the children
- virtual int handleEvents(fd_set fdSet)
This is the method that will handle stuff when the fd is signaled.
NOTE: see about note about addSrcContstraints
- virtual int receive(DMbuffer inBuffer)
This is the method that the parents calls on the children when the
parents passes data on to the parent
NOTE: see about note about addSrcContstraints
- void setParent(dmuObj *newParent)
This allows the children to have a pointer back to the parent.
- void setNumBuffers(int newNumBuffers)
Allows you to set the number of buffers that will be in the buffer pool
- int getNumBuffers()
returns the number of buffers in the pool
- void getImageDimensions(int *returnWidth, int *returnHeight)
GetImageDimensions sets the values pointed to by
returnWidth and returnheight to the size of one
frame of image data that is associated with the dmu object.
Note that this may not be the same size as the DMbuffers that
are passed down the chain to/from the object see
getBufferDimensions
- void getBufferDimensions(int *sizeX,int *sizeY)
GetBufferDimentsions sets the values pointed to by
returnWidth and returnheight to the size of the
DMBuffer that is associated with the one frame of data for the
dmu object. Note that this may not be the same size as the
frame sizes that are being used in the movie. The buffer may
be a different size if we want to be using the dmbuffers for
texture maps, for example. Buffer Dimensions are measured in
pixels, not bytes, as different packing modes effect the number
of bytes.
- Convenience Methods for geting width and height of the
image data and DMBuffers associated with the data (the individual
parts of what getImageDimensions and getBufferDimensions
returns).
- int getImageSizeX()
- int getImageSizeY()
- int getBufferSizeX()
- int getBufferSizeY()
- void setName(const char *newName)
Mostly for debugging purposes. Give the object a name
- const char *getName()
- dmuObjList *getObjectList() {return (objList)
Overview Object List Object Hierarchy
Sample Apps