Click here to Skip to main content
11,481,850 members (64,383 online)
Click here to Skip to main content
Articles » Multimedia » DirectX » General » Downloads
Add your own
alternative version

Interactive 3D Spectrum Analyzer Visualization for Windows Media Player

, 17 May 2009 CPOL 88.6K 4.3K 40
Interactive 3D Spectrum Analyzer for Windows Media Player using DirectX 9 and some light GPGPU.
/*
 * Copyright (c) 2005-2009, Carlo McWhirter. All Rights Reserved.
 * Copyright (c) 2009, Hyteq Systems. All Rights Reserved.
 */

#pragma once

/**
 * GLRenderContext Class.
 * Creates an opengl rendering context. If multiple OpenGL rendering
 * contexts exist in an application, this class will make sure only
 * one rendering context is active at a time.
 */
class GLRenderContext
{
public:
	/// Constructor
	/// @param hReferenceDC used to build the pixel format
	/// @param bIsMemoryDC Set to TRUE to initialize the pixel format for a MEMORY device context
	GLRenderContext();

	/// Disassociates and frees the current device context
	~GLRenderContext();

	/// Called to prepare this class for rendering.
	void Initialize(HDC hReferenceDC, BOOL bIsMemoryDC = FALSE);

	/// Called to begin rendering.
	void Begin(HDC hDC, BOOL bIsMemoryDC = FALSE);

	/// Called to end rendering.
	void End(HDC hDC);

	/// Checks whether the context has been initialized at least once.
	BOOL IsInitialized();

private:
	HGLRC		m_hRC;
	static BOOL	m_bIsInitialized;
};

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

Carlo McWhirter
Software Developer (Senior) Hyteq Systems
United States United States
I'm a Microsoft Certified Professional (MCP) in C++. I'm fluent in C/C++, C# and many other languages.

| Advertise | Privacy | Terms of Use | Mobile
Web02 | 2.8.150520.1 | Last Updated 17 May 2009
Article Copyright 2009 by Carlo McWhirter
Everything else Copyright © CodeProject, 1999-2015
Layout: fixed | fluid