IShadeContextExtension8.h

Go to the documentation of this file.
00001  /**********************************************************************
00002  
00003     FILE:           IShadeContextExtension8.h
00004 
00005     DESCRIPTION:    API extension for ShadeContext class.
00006                     Used specifically for querying motion information
00007                     of shade context.
00008 
00009     CREATED BY:     Dwight Tomalty, Discreet
00010 
00011     HISTORY:        Created 23 September 2004
00012 
00013  *> Copyright (c) 2004, All Rights Reserved.
00014  **********************************************************************/
00015 
00016 #pragma once
00017 
00018 #include "baseinterface.h"
00019 #include "point2.h"
00020 #include "imtl.h"
00021 
00022 // forward declarations
00023 class IShadeContextExtension8;
00024 
00025 #define ISHADECONTEXT_EXTENSION_8_INTERFACE_ID Interface_ID(0x6ea75ff6, 0x5c875b0a)
00026 
00028 
00029 class IShadeContextExtension8 : public BaseInterface {
00030 
00031 public:
00032 
00034 
00036     virtual Point2 MotionVector() = 0;
00037     
00038     // -- from BaseInterface
00040     virtual Interface_ID GetID();
00041 };
00042 
00043 inline IShadeContextExtension8* Get_IShadeContextExtension8(ShadeContext& sc) {
00044 
00045     return static_cast<IShadeContextExtension8*>(sc.GetInterface(ISHADECONTEXT_EXTENSION_8_INTERFACE_ID));
00046 }
00047 
00048 //==============================================================================
00049 // class ISContext inlined methods
00050 //==============================================================================
00051 
00052 inline Interface_ID IShadeContextExtension8::GetID() {
00053 
00054     return ISHADECONTEXT_EXTENSION_8_INTERFACE_ID;
00055 }
00056