🛰️航天仿真算法库 SpaceAST
0.0.1
载入中...
搜索中...
未找到
SaVOImpl.hpp
浏览该文件的文档.
1
20
21
#pragma once
22
23
#include "AstGlobal.h"
24
#include "AstCOM.h"
25
#include "AstCOM/COMAPI.hpp"
26
#include "AstCOM/VeVOSystemsCollection.hpp"
27
#include "AstUtil/Object.hpp"
28
#include "AstUtil/Encode.hpp"
29
#include <unknwn.h>
30
#include <oaidl.h>
31
#include <atlbase.h>
32
#include <atlcom.h>
33
34
AST_NAMESPACE_BEGIN
35
41
template
<
typename
T, const IID* pi
id
= &__uu
id
of(T)>
42
class
ISaVOImpl
:
43
public
IDispatchImpl<T, piid, &IID_NULL, 0xFFFF, 0xFFFF>
44
{
45
public
:
46
ISaVOImpl
() =
default
;
47
~ISaVOImpl
() =
default
;
48
49
50
HRESULT __stdcall get_OrbitSystems(
IVeVOSystemsCollection
** ppRetVal)
override
51
{
52
if
(ppRetVal ==
nullptr
)
53
return
E_POINTER;
54
*ppRetVal =
nullptr
;
55
56
CComObject<CVeVOSystemsCollection>* pCollection =
nullptr
;
57
HRESULT hr = CComObject<CVeVOSystemsCollection>::CreateInstance(&pCollection);
58
59
if
(FAILED(hr))
60
return
hr;
61
62
pCollection->AddRef();
63
*ppRetVal = pCollection;
64
return
S_OK;
65
}
66
public
:
67
68
69
private
:
70
71
};
72
75
AST_NAMESPACE_END
ast::ISaVOImpl
定义
SaVOImpl.hpp:44
IVeVOSystemsCollection
定义
AstCOM.idl:79
src
AstCOM
SaVOImpl.hpp
制作者
1.12.0