normativeTypesCPP 6.0.2
ntid.h
Go to the documentation of this file.
1/* ntid.h */
2/*
3 * Copyright information and license terms for this software can be
4 * found in the file LICENSE that is included with the distribution
5 */
6#ifndef NTID_H
7#define NTID_H
8
9#include <string>
10
11namespace epics {
12
13namespace nt {
14
28class NTID
29{
30public:
37 NTID(const std::string &id);
44 std::string getFullName();
45
52 std::string getQualifiedName();
53
60 std::string getNamespace();
61
68 std::string getName();
69
76 std::string getVersion();
77
84 std::string getMajorVersionString();
85
91 bool hasMajorVersion();
92
99 int getMajorVersion();
100
107 std::string getMinorVersionString();
108
114 bool hasMinorVersion();
115
122 int getMinorVersion();
123
124private:
125 std::string fullName;
126 std::string qualifiedName;
127 std::string namespaceStr;
128 std::string name;
129 std::string version;
130
131 size_t nsSepIndex;
132 size_t versionSepIndex;
133 bool nsQualified;
134 bool hasVersion;
135
136 size_t endMajorIndex;
137 std::string majorVersionStr;
138 bool majorVersionParsed;
139 bool hasMajor;
140 int majorVersion;
141
142 size_t endMinorIndex;
143 std::string minorVersionStr;
144 bool minorVersionParsed;
145 bool hasMinor;
146 int minorVersion;
147
148};
149
150}}
151
152#endif
153
Utility class for parsing a type ID that follows the NT type ID conventions.
Definition ntid.h:29
int getMinorVersion()
Definition ntid.cpp:180
NTID(const std::string &id)
Definition ntid.cpp:16
bool hasMinorVersion()
Definition ntid.cpp:163
std::string getNamespace()
Definition ntid.cpp:58
std::string getName()
Definition ntid.cpp:68
std::string getVersion()
Definition ntid.cpp:90
std::string getFullName()
Definition ntid.cpp:45
int getMajorVersion()
Definition ntid.cpp:135
bool hasMajorVersion()
Definition ntid.cpp:118
std::string getMajorVersionString()
Definition ntid.cpp:100
std::string getMinorVersionString()
Definition ntid.cpp:143
std::string getQualifiedName()
Definition ntid.cpp:47