NVIDIA Iray API
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Groups
Pages
iuser_class_factory.h
Go to the documentation of this file.
1
//*****************************************************************************
2
// Copyright 1986, 2014 NVIDIA Corporation. All rights reserved.
3
//*****************************************************************************
6
//*****************************************************************************
7
8
#ifndef MI_NEURAYLIB_IUSER_CLASS_FACTORY_H
9
#define MI_NEURAYLIB_IUSER_CLASS_FACTORY_H
10
11
#include <
mi/base/interface_declare.h
>
12
#include <
mi/base/interface_implement.h
>
13
14
namespace
mi {
15
16
namespace
neuraylib {
17
22
class
ITransaction;
23
30
class
IUser_class_factory
:
public
31
mi::base::Interface_declare
<0x37355ece,0x2ed7,0x4158,0x88,0x35,0xb8,0x60,0xaf,0x75,0x6a,0x64>
32
{
33
public
:
50
virtual
base::IInterface
*
create
(
51
ITransaction
* transaction,
52
Uint32
argc,
53
const
base::IInterface
* argv[]) = 0;
54
};
55
64
template
<
class
T>
65
class
User_class_factory
:
public
66
mi::base::Interface_implement
<IUser_class_factory>
67
{
68
public
:
78
base::IInterface
*
create
(
79
ITransaction
* transaction,
80
Uint32
argc,
81
const
base::IInterface
* argv[])
82
{
83
// avoid warnings
84
(void) transaction;
85
(void) argc;
86
(void) argv;
87
88
if
( argc != 0)
89
return
0;
90
return
new
T;
91
}
92
};
93
// end group mi_neuray_plugins
95
96
}
// namespace neuraylib
97
98
}
// namespace mi
99
100
#endif // MI_NEURAYLIB_IUSER_CLASS_FACTORY_H
mi
neuraylib
iuser_class_factory.h
Generated on Tue Aug 12 2014 15:28:35. Build 221133.3991, Doxygen 1.8.4