PDA

View Full Version : [SDK] What do these undocumented methods do?


lo
03-20-2012, 03:00 PM
void* Bitmap::GetVFBData ( )
void Bitmap::SetVFBData ( void * vfb )

DWORD Bitmap::GetModifyID ( )
void Bitmap::SetModifyID ( DWORD m )
BMMExport void Bitmap::IncrModifyID ( )

Seeing how it's been about 17 years since the Bitmap class was written I thought the documentation would be completed at some point...
Does anyone have any idea what any of these methods do or what is the data they return?

spacefrog
03-20-2012, 04:30 PM
Not knowing, just guesswork

From Bitmap.h

private:
....
DWORD modifyID; // changes when bitmap changes: used in render effects
void *vfbData;

public:
inline void *GetVFBData( ) { return vfbData; }
inline void SetVFBData(void *vfb ) { vfbData = vfb; }
....
DWORD GetModifyID() { return modifyID; }
void SetModifyID(DWORD m) { modifyID = m; }
BMMExport void IncrModifyID();



After browsing through bitmap.h, they are simple accessor functions to some private members of the Bitmap Class ( private void *vfbData and private DWORD modifyID respectively)

i bet the void *vfbData simply is used to store some arbitrary, max internal data with the bitmap to implement some of the VFB functionality, it's already there in Max 7 SDK (do not have access to older versions), so it was'nt introduced with it's extended VFB render controls in Max 2009 ...

The modifyID on the other hand is, - according to Bitmap.h - used when dealing with effects rendering ( as they are bitmap based) , again i only guess that they are used to allow effects being rendered in the correct sequence

lo
03-20-2012, 04:46 PM
After browsing through bitmap.h, they are simple accessor functions to some private members of the Bitmap Class ( private void *vfbData and private DWORD modifyID respectively)

i bet the void *vfbData simply is used to store some arbitrary, max internal data with the bitmap to implement some of the VFB functionality, it's already there in Max 7 SDK (do not have access to older versions), so it was'nt introduced with it's extended VFB render controls in Max 2009 ...

The modifyID on the other hand is, - according to Bitmap.h - used when dealing with effects rendering ( as they are bitmap based) , again i only guess that they are used to allow effects being rendered in the correct sequence

Thanks, I saw those private members but missed the part about modifyID being related to effects.
void* vfbData does contain some non-null pointer but it's not castable to IImageViewer* or IMaxBitmapViewer*, it's not clear what it's pointing to.

CGTalk Moderation
03-20-2012, 04:46 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.