63 lines
1.5 KiB
C++
63 lines
1.5 KiB
C++
// CVcLight.h : 由 Microsoft Visual C++ 创建的 ActiveX 控件包装器类的声明
|
|
|
|
#pragma once
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// CVcLight
|
|
|
|
class CVcLight : public COleDispatchDriver
|
|
{
|
|
public:
|
|
CVcLight() {} // 调用 COleDispatchDriver 默认构造函数
|
|
CVcLight(LPDISPATCH pDispatch) : COleDispatchDriver(pDispatch) {}
|
|
CVcLight(const CVcLight& dispatchSrc) : COleDispatchDriver(dispatchSrc) {}
|
|
|
|
// 特性
|
|
public:
|
|
|
|
// 操作
|
|
public:
|
|
|
|
float get_AmbientIntensity()
|
|
{
|
|
float result;
|
|
InvokeHelper(0x1, DISPATCH_PROPERTYGET, VT_R4, (void*)&result, nullptr);
|
|
return result;
|
|
}
|
|
void put_AmbientIntensity(float newValue)
|
|
{
|
|
static BYTE parms[] = VTS_R4 ;
|
|
InvokeHelper(0x1, DISPATCH_PROPERTYPUT, VT_EMPTY, nullptr, parms, newValue);
|
|
}
|
|
float get_EdgeIntensity()
|
|
{
|
|
float result;
|
|
InvokeHelper(0x2, DISPATCH_PROPERTYGET, VT_R4, (void*)&result, nullptr);
|
|
return result;
|
|
}
|
|
void put_EdgeIntensity(float newValue)
|
|
{
|
|
static BYTE parms[] = VTS_R4 ;
|
|
InvokeHelper(0x2, DISPATCH_PROPERTYPUT, VT_EMPTY, nullptr, parms, newValue);
|
|
}
|
|
BOOL get_EdgeVisible()
|
|
{
|
|
BOOL result;
|
|
InvokeHelper(0x3, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, nullptr);
|
|
return result;
|
|
}
|
|
void put_EdgeVisible(BOOL newValue)
|
|
{
|
|
static BYTE parms[] = VTS_BOOL ;
|
|
InvokeHelper(0x3, DISPATCH_PROPERTYPUT, VT_EMPTY, nullptr, parms, newValue);
|
|
}
|
|
LPDISPATCH get_LightSources()
|
|
{
|
|
LPDISPATCH result;
|
|
InvokeHelper(0x4, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, nullptr);
|
|
return result;
|
|
}
|
|
|
|
|
|
};
|