My Project
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
ParaEngine::CFlashTextureManager Class Reference

managing flash textures. More...

#include <FlashTextureManager.h>

Inheritance diagram for ParaEngine::CFlashTextureManager:
ParaEngine::ISearchPathManager ParaEngine::IAttributeFields ParaEngine::IObject ParaEngine::CRefCounted

Public Member Functions

HRESULT InitDeviceObjects ()
 
HRESULT RestoreDeviceObjects ()
 
HRESULT InvalidateDeviceObjects ()
 
HRESULT DeleteDeviceObjects ()
 
void Cleanup ()
 clean up. More...
 
void LoadAsset ()
 initialize all assets created so far to accelerate loading during game play. More...
 
void UnloadAsset ()
 uninitialize all assets created so far to save some memory
 
void GarbageCollectAll ()
 Garbage Collect(free resources of) all unused entity. More...
 
void OnSizeChange ()
 this function is called by ParaEngineApp whenever the window size is changed. More...
 
void SetMaxFlashPlayerNum (int nNum)
 set the maximum number of flash players in the background. More...
 
int GetMaxFlashPlayerNum ()
 Get the maximum number of flash players in the background. More...
 
CFlashPlayerGetFlashPlayer (const char *sFileName)
 get flash player pointer by name. More...
 
CFlashPlayerGetFlashPlayer (int nIndex)
 get flash player pointer by index. More...
 
int GetFlashPlayerIndex (const char *sFileName)
 get flash player index by file name. More...
 
LPDIRECT3DTEXTURE9 GetTexture (const char *sFileName)
 get DirectX texture by name. More...
 
bool GetTextureInfo (const char *sFileName, int *width, int *height)
 get the texture info of the given flash player. More...
 
bool UnloadTexture (const char *sFileName)
 unload the given texture, even it has not timed out yet. More...
 
void RenderFrameMove (float fElapsedTime)
 this function should be called each rendering frame. More...
 
string FindFile (const string &filename, bool bFindInSearchPaths)
 check whether a file exist locally on this machine More...
 
void RepaintAll ()
 repaint all window-mode flash window. More...
 
void RenderFlashWindows (SceneState &sceneState)
 render flash windows at the same position as the flash window using directX API. More...
 
bool SetParentWindow (HWND hWnd)
 this function is called, whenever the associated main parent window changes. More...
 
- Public Member Functions inherited from ParaEngine::ISearchPathManager
bool AddDiskSearchPath (const std::string &sFile, bool nFront=false)
 this is low level, use with care. More...
 
PE_CORE_DECL bool AddSearchPath (const char *sFile, int nPriority=0)
 add a search path to the search path pool. More...
 
PE_CORE_DECL bool RemoveSearchPath (const char *sFile)
 remove a search path from the search path pool.
 
PE_CORE_DECL bool ClearAllSearchPath ()
 clear all search paths.
 
std::list< SearchPath > & GetSearchPaths ()
 this function is used mostly internally.
 
- Public Member Functions inherited from ParaEngine::IAttributeFields
virtual int GetAttributeClassID ()
 attribute class ID should be identical, unless one knows how overriding rules work. More...
 
virtual const char * GetAttributeClassName ()
 a static string, describing the attribute class object's name
 
virtual const char * GetAttributeClassDescription ()
 a static string, describing the attribute class object
 
virtual int InstallFields (CAttributeClass *pClass, bool bOverride)
 this class should be implemented if one wants to add new attribute. More...
 
virtual int GetChildAttributeColumnCount ()
 we support multi-dimensional child object. More...
 
virtual int GetChildAttributeObjectCount (int nColumnIndex=0)
 get the number of child objects (row count) in the given column. More...
 
virtual IAttributeFieldsGetChildAttributeObject (int nRowIndex, int nColumnIndex=0)
 
virtual IAttributeFieldsGetChildAttributeObject (const std::string &sName)
 get attribute by child object. More...
 
 ATTRIBUTE_METHOD1 (IAttributeFields, GetName_s, const char **)
 
 ATTRIBUTE_METHOD1 (IAttributeFields, SetName_s, const char *)
 
 ATTRIBUTE_METHOD (IAttributeFields, PrintObject_s)
 
 ATTRIBUTE_METHOD (IAttributeFields, AddRef_s)
 
 ATTRIBUTE_METHOD1 (IAttributeFields, GetRefCount_s, int *)
 
 ATTRIBUTE_METHOD1 (IAttributeFields, SetTime_s, int)
 
 ATTRIBUTE_METHOD1 (IAttributeFields, GetTime_s, int *)
 
 ATTRIBUTE_METHOD (IAttributeFields, Release_s)
 
virtual const std::string & GetIdentifier ()
 
virtual void SetIdentifier (const std::string &sID)
 
virtual bool IsModified ()
 whether some of the fields are modified.It is up to the implementation class to provide this functionality if necessary. More...
 
virtual void SetModified (bool bModified)
 set whether any field has been modified. More...
 
virtual bool ValidateFields ()
 validate all fields and return true if validation passed. More...
 
virtual string GetValidationMessage ()
 get the recent validation message due to the most recent call to ValidateFields()
 
virtual bool ResetField (int nFieldID)
 Reset the field to its initial or default value. More...
 
virtual bool InvokeEditor (int nFieldID, const std::string &sParameters)
 Invoke an (external) editor for a given field. More...
 
virtual bool AddChildAttributeObject (IAttributeFields *pChild, int nRowIndex=-1, int nColumnIndex=0)
 add child object. More...
 
virtual void * QueryObjectByName (const std::string &sObjectType)
 convert to object of a given type. More...
 
virtual void * QueryObject (int nObjectType)
 convert to object of a given type. More...
 
virtual int GetTime ()
 get the current local time in case it is animated in milli seconds frames. More...
 
virtual void SetTime (int nTime)
 
virtual CDynamicAttributeFieldGetDynamicField (const std::string &sName)
 Get a dynamic field with a given name. More...
 
virtual CDynamicAttributeFieldGetDynamicField (int nIndex)
 Get a dynamic field with a given index. More...
 
virtual const char * GetDynamicFieldNameByIndex (int nIndex)
 get field name by index
 
virtual int GetDynamicFieldCount ()
 how many dynamic field this object currently have. More...
 
virtual int SetDynamicField (const std::string &sName, const CVariable &value)
 set a dynamic field with a given name. More...
 
virtual int AddDynamicField (const std::string &sName, ATTRIBUTE_FIELDTYPE dwType)
 add dynamic field and return field index
 
virtual void RemoveAllDynamicFields ()
 remove all dynamic fields
 
virtual int SaveDynamicFieldsToString (std::string &output)
 save only text dynamic fields to fieldname = value text strings. More...
 
virtual int LoadDynamicFieldsFromString (const std::string &input)
 load only text dynamic fields from string More...
 
CAttributeClassGetAttributeClass ()
 get the main attribute class object. More...
 
void PrintObject ()
 print the content of this object to a text file at temp/doc/[ClassName].txt. More...
 
- Public Member Functions inherited from ParaEngine::IObject
virtual void Clone (IObject *obj) const
 Clone the object's contains to a pointer. More...
 
virtual IObjectClone () const
 Clone the object's contains and return a pointer to the newly created object. More...
 
virtual bool Equals (const IObject *obj) const
 Compare the object with another object. More...
 
virtual const ITypeGetType () const
 
virtual std::string ToString () const
 
WeakPtr_typeGetWeakReference ()
 get weak reference object. More...
 
virtual int ProcessObjectEvent (const ObjectEvent &event)
 this function is only used to backward compatibility of ParaObject:AddEvent() function. More...
 
- Public Member Functions inherited from ParaEngine::CRefCounted
void addref () const
 add reference count of the object. More...
 
bool delref () const
 decrease reference count of the object. More...
 
int GetRefCount () const
 get the reference count
 
virtual int Release ()
 
CRefCountedAddToAutoReleasePool ()
 addref and releases the ownership sometime soon automatically (usually at the end of the current frame). More...
 

Static Public Member Functions

static bool HasFocus ()
 if any of its flash window has focus, it will return true
 
- Static Public Member Functions inherited from ParaEngine::IAttributeFields
static HRESULT GetAttributeClassID_s (IAttributeFields *cls, int *p1)
 
static HRESULT GetAttributeClassName_s (IAttributeFields *cls, const char **p1)
 
static bool OpenWithDefaultEditor (const char *sFilename, bool bWaitOnReturn=false)
 Open a given file with the default registered editor in the game engine. More...
 

Public Attributes

vector< CFlashPlayer * > m_FlashPlayers
 

Static Public Attributes

static bool m_bHasFocus
 

Additional Inherited Members

- Public Types inherited from ParaEngine::IAttributeFields
typedef ParaEngine::weak_ptr< IObject, IAttributeFieldsWeakPtr_type
 
- Public Types inherited from ParaEngine::IObject
typedef ParaEngine::weak_ptr< IObjectWeakPtr_type
 
- Protected Member Functions inherited from ParaEngine::IAttributeFields
virtual CAttributeClassCreateAttributeClass ()
 initialize fields
 
virtual CDynamicAttributesSetGetDynamicAttributes (bool bCreateIfNotExist=false)
 
- Protected Attributes inherited from ParaEngine::ISearchPathManager
std::list< SearchPathm_searchpaths
 a list of all search paths
 
- Protected Attributes inherited from ParaEngine::IObject
WeakPtr_type m_weak_reference
 
- Protected Attributes inherited from ParaEngine::CRefCounted
int m_refcount
 

Detailed Description

managing flash textures.

Member Function Documentation

§ Cleanup()

void ParaEngine::CFlashTextureManager::Cleanup ( )

clean up.

this function should be called just before the application exits.

§ FindFile()

string ParaEngine::CFlashTextureManager::FindFile ( const string &  filename,
bool  bFindInSearchPaths 
)

check whether a file exist locally on this machine

Returns
: return the file name. it may be "" or a file name that can be opened via CParaFile

§ GarbageCollectAll()

void ParaEngine::CFlashTextureManager::GarbageCollectAll ( )

Garbage Collect(free resources of) all unused entity.

any inactive one in the last frame will be removed.

§ GetFlashPlayer() [1/2]

CFlashPlayer* ParaEngine::CFlashTextureManager::GetFlashPlayer ( const char *  sFileName)

get flash player pointer by name.

this function may return NULL if the player is created successfully. this function will try to create and load the player if it does not exist.

§ GetFlashPlayer() [2/2]

CFlashPlayer* ParaEngine::CFlashTextureManager::GetFlashPlayer ( int  nIndex)

get flash player pointer by index.

this function does not create any player if there is no player at the given index.

§ GetFlashPlayerIndex()

int ParaEngine::CFlashTextureManager::GetFlashPlayerIndex ( const char *  sFileName)

get flash player index by file name.

this function does not create any player if there is no player with the name.

Returns
-1 is returned if no player is found.

§ GetMaxFlashPlayerNum()

int ParaEngine::CFlashTextureManager::GetMaxFlashPlayerNum ( )

Get the maximum number of flash players in the background.

Default value is 1

§ GetTexture()

LPDIRECT3DTEXTURE9 ParaEngine::CFlashTextureManager::GetTexture ( const char *  sFileName)

get DirectX texture by name.

this function may return NULL if the player is not loaded yet. the caller may use a traditional static texture in such cases.

§ GetTextureInfo()

bool ParaEngine::CFlashTextureManager::GetTextureInfo ( const char *  sFileName,
int *  width,
int *  height 
)

get the texture info of the given flash player.

§ LoadAsset()

void ParaEngine::CFlashTextureManager::LoadAsset ( )

initialize all assets created so far to accelerate loading during game play.

§ OnSizeChange()

void ParaEngine::CFlashTextureManager::OnSizeChange ( )

this function is called by ParaEngineApp whenever the window size is changed.

We usually needs to reposition all flash windows according to the new size.

§ RenderFlashWindows()

void ParaEngine::CFlashTextureManager::RenderFlashWindows ( SceneState sceneState)

render flash windows at the same position as the flash window using directX API.

In windowed mode directX, this function is not necessary, since flash windows are rendered with GDI with the directx background. In fullscreen mode directX, we need to call this function to ensure that flash windows are rendered to screen.

§ RenderFrameMove()

void ParaEngine::CFlashTextureManager::RenderFrameMove ( float  fElapsedTime)

this function should be called each rendering frame.

it will close unused flash players and mark if all flash texture to be not updated for the frame.

Parameters
fElapsedTimefElapsedTime

§ RepaintAll()

void ParaEngine::CFlashTextureManager::RepaintAll ( )

repaint all window-mode flash window.

in case of full screen render, we may need to repaint when the background scene finished.

§ SetMaxFlashPlayerNum()

void ParaEngine::CFlashTextureManager::SetMaxFlashPlayerNum ( int  nNum)

set the maximum number of flash players in the background.

Default value is 1

§ SetParentWindow()

bool ParaEngine::CFlashTextureManager::SetParentWindow ( HWND  hWnd)

this function is called, whenever the associated main parent window changes.

Internally, we just call win32 function SetParent to change any already created flash windows.

§ UnloadTexture()

bool ParaEngine::CFlashTextureManager::UnloadTexture ( const char *  sFileName)

unload the given texture, even it has not timed out yet.

return true if unloaded


The documentation for this class was generated from the following file: