SMTK
@SMTK_VERSION@
Simulation Modeling Tool Kit
smtk
markup
URL.h
1
//=========================================================================
2
// Copyright (c) Kitware, Inc.
3
// All rights reserved.
4
// See LICENSE.txt for details.
5
//
6
// This software is distributed WITHOUT ANY WARRANTY; without even
7
// the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
8
// PURPOSE. See the above copyright notice for more information.
9
//=========================================================================
10
#ifndef smtk_markup_URL_h
11
#define smtk_markup_URL_h
12
13
#include "smtk/markup/Label.h"
14
15
#include "smtk/string/Token.h"
16
17
namespace
smtk
18
{
19
namespace
markup
20
{
21
22
namespace
arcs
23
{
24
struct
URLsToData;
25
}
26
27
class
SMTKMARKUP_EXPORT
URL
:
public
smtk::markup::Label
28
{
29
public
:
30
smtkTypeMacro
(
smtk::markup::URL
);
31
smtkSuperclassMacro
(
smtk::markup::Label
);
32
33
template
<
typename
... Args>
34
URL
(Args&&... args)
35
:
smtk::markup::Label
(std::forward<Args>(args)...)
36
{
37
}
38
39
template
<
typename
... Args>
40
URL
(
const
smtk::string::Token
& location, Args&&... args)
41
:
smtk::markup::Label
(std::forward<Args>(args)...)
42
{
43
this->setLocation(location);
44
}
45
46
~
URL
()
override
;
47
49
bool
setLocation(
const
smtk::string::Token
& location);
50
smtk::string::Token
location()
const
;
51
53
bool
setType(
const
smtk::string::Token
& mimeType);
54
smtk::string::Token
type()
const
;
55
63
std::string extensionForType()
const
;
64
68
ArcEndpointInterface<arcs::URLsToData, ConstArc, OutgoingArc>
data()
const
;
69
ArcEndpointInterface<arcs::URLsToData, NonConstArc, OutgoingArc>
data();
71
};
72
73
}
// namespace markup
74
}
// namespace smtk
75
76
#endif // smtk_markup_URL_h
smtk
The main namespace for the Simulation Modeling Tool Kit (SMTK).
Definition:
doc.h:33
smtk::graph::ArcEndpointInterface
An object that a node instance can present to access/edit its outgoing/incoming arcs.
Definition:
ArcImplementation.h:45
smtk::markup::Label
Definition:
Label.h:20
smtkTypeMacro
#define smtkTypeMacro(...)
Add typedefs to a class for identifcation.
Definition:
SharedFromThis.h:51
smtk::markup::URL
Definition:
URL.h:27
smtkSuperclassMacro
#define smtkSuperclassMacro(...)
Add a typedef to the superclass of this class.
Definition:
SharedFromThis.h:87
smtk::string::Token
A string token identified by an integer.
Definition:
Token.h:30
Generated by
1.8.17