Teamcenter C++ API Reference
2312
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
awb0occmgmt
IToken.hxx
Go to the documentation of this file.
1
//Copyright 2022 Siemens Digital Industries Software
2
//==================================================
3
//Copyright $2014.
4
//Siemens Product Lifecycle Management Software Inc.
5
//All Rights Reserved.
6
//==================================================
7
//Copyright 2022 Siemens Digital Industries Software
8
9
/*=================================================================================================
10
File description:
11
This file contains the definition for the interface IToken.
12
13
14
Filename: IToken.hxx
15
Module : awb0occmgmt
16
==================================================================================================*/
17
18
#ifndef TEAMCENTER_ITOKEN_HXX
19
#define TEAMCENTER_ITOKEN_HXX
20
21
#include <
base_utils/SharedPtr.hxx
>
22
#include <
base_utils/TcBaseTypes.hxx
>
23
#include <awb0occmgmt/libawb0occmgmt_exports.h>
24
25
namespace
Teamcenter
26
{
27
namespace
OccMgmt
28
{
29
class
IToken
;
30
typedef
Teamcenter::OccMgmt::IToken
*
ITokenPtr
;
31
typedef
StdSmVector<Teamcenter::OccMgmt::ITokenPtr>::Vector
ITokenPtrVector
;
32
}
33
}
34
35
class
AWB0OCCMGMT_API Teamcenter::
OccMgmt::IToken
36
{
37
public
:
38
39
IToken
();
40
virtual
~IToken
();
41
42
virtual
tag_t
getToken
()
const
= 0;
43
virtual
bool
operator==
(
const
IToken
& otherToken )
const
= 0;
44
45
template
<
typename
U>
bool
isInstanceOf
()
46
{
47
U* ptr = 0;
48
49
try
50
{
51
ptr =
dynamic_cast<
U*
>
( this );
52
}
53
catch
( ... )
54
{
55
}
56
return
ptr ?
true
:
false
;
57
};
58
59
private
:
60
61
IToken
(
const
IToken
& );
62
IToken
&
operator=
(
const
IToken
& );
63
};
64
65
#include <awb0occmgmt/libawb0occmgmt_undef.h>
66
#endif // TEAMCENTER_ITOKEN_HXX