www.pudn.com > mmxswarm.zip > MMXSurface.h
// MMXSurface.h : interface of the MMX Specific Surface classes
//
// This is a part of the Microsoft Foundation Classes C++ library.
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// This source code is only intended as a supplement to the
// Microsoft Foundation Classes Reference and related
// electronic documentation provided with the library.
// See these sources for detailed information regarding the
// Microsoft Foundation Classes product.
//
#pragma once
#include "Surface.h"
class CMMXSurface32Intrinsic : public CSurface
{
public:
virtual void AdjustWidth(int *pWidth);
virtual void BlurBits(); // this is where the MMX action is
protected:
virtual void OnCreated();
private:
int m_dwpl; // dwords per line
int m_width; // number of times to iterate per line
};
class CMMXSurface24Intrinsic : public CSurface
{
public:
virtual void BlurBits(); // this is where the MMX action is
protected:
virtual void OnCreated();
private:
int m_dwpl; // dwords per line
int m_width; // number of times to iterate per line
int m_delta; // number of pointer units to get from end of line to start of next
};
class CMMXSurface16Intrinsic : public CSurface
{
public:
virtual void AdjustWidth(int *pWidth);
virtual void BlurBits(); // this is where the MMX action is
protected:
virtual void OnCreated();
private:
int m_qwpl; // qwords per line
int m_width; // number of times to iterate per line
};