📄 simple_object.h
字号:
//
// INTEL CORPORATION PROPRIETARY INFORMATION
// This software is supplied under the terms of a license agreement or
// nondisclosure agreement with Intel Corporation and may not be copied
// or disclosed except in accordance with the terms of that agreement.
// Copyright (c) 2005-2006 Intel Corporation. All Rights Reserved.
//
#ifndef __SIMPLE_OBJECT_H
#define __SIMPLE_OBJECT_H
#include "object.h"
template <class component, class parent = Object> class SimpleObject : public parent
{
protected:
vm_char* m_component_name;
vm_char* m_component_version;
public:
SimpleObject(vm_char* component_name,vm_char* component_version = NULL );
virtual ~SimpleObject();
virtual void * Create();
virtual void Destroy(void*);
virtual vm_char* GetName();
virtual vm_char* GetVersion();
virtual int Try(void*);
};
/*Implementation of SimpleObject */
template <class component, class parent>
SimpleObject<component, parent>::~SimpleObject()
{
}
template <class component, class parent>
SimpleObject<component, parent>::SimpleObject(vm_char* component_name,vm_char* component_version)
{
m_component_name = component_name;
m_component_version = component_version;
}
template <class component, class parent>
void*
SimpleObject<component, parent>::Create()
{
component* p = new component;
return p;
}
template <class component, class parent>
void SimpleObject<component, parent>::Destroy(void* p)
{
component* p_instance = (component*) p;
if (p_instance)
{
delete p_instance;
}
}
template <class component, class parent>
vm_char *SimpleObject<component, parent>::GetName()
{
return m_component_name;
}
template <class component, class parent>
vm_char *SimpleObject<component,parent>::GetVersion()
{
return m_component_version;
}
template <class component, class parent>
int SimpleObject<component,parent>::Try(void*)
{
return -1;
}
#endif//__SIMPLE_OBJECT_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -