History

TimeSeriesPlatformLibrary: Updated code and cmakelist to run on Linux.

J. Ritchie Carroll committed 7 years ago

Commit 59ea35e1 parent ebf0ccd10 files · +428 −41Browse files

Unified · Split

10 files
  1. Source/Applications/TimeSeries Platform Library Samples/AdvancedSubscribe/AdvancedSubscribe.vcxproj +1 −1
  2. Source/Libraries/TimeSeriesPlatformLibrary/CMakeLists.txt +404 −26
  3. Source/Libraries/TimeSeriesPlatformLibrary/Common/CommonTypes.h +4 −0
  4. Source/Libraries/TimeSeriesPlatformLibrary/Common/Nullable.h +1 −1
  5. Source/Libraries/TimeSeriesPlatformLibrary/Data/DataColumn.h +1 −1
  6. Source/Libraries/TimeSeriesPlatformLibrary/Data/DataSet.h +1 −1
  7. Source/Libraries/TimeSeriesPlatformLibrary/FilterExpressions/ExpressionTree.h +3 −3
  8. Source/Libraries/TimeSeriesPlatformLibrary/FilterExpressions/antlr4-runtime/atn/ATNState.h +3 −1
  9. Source/Libraries/TimeSeriesPlatformLibrary/README.txt +8 −1
  10. Source/Libraries/TimeSeriesPlatformLibrary/Samples/FilterExpressionTests.cpp +2 −6
Source/Applications/TimeSeries Platform Library Samples/AdvancedSubscribe/AdvancedSubscribe.vcxproj+1−1
@@ -73,7 +73,7 @@ · 72 unmodified lines
7373 </ItemDefinitionGroup>
7474 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
7575 <ClCompile>
76− <WarningLevel>Level3</WarningLevel>
76+ <WarningLevel>Level4</WarningLevel>
7777 <PrecompiledHeader>
7878 </PrecompiledHeader>
7979 <Optimization>MaxSpeed</Optimization>
Source/Libraries/TimeSeriesPlatformLibrary/CMakeLists.txt+404−26
@@ -19,6 +19,9 @@ · 18 unmodified lines
1919 # 04/09/2012 - Stephen C. Wills
2020 # Generated original version of source code.
2121 #
22+# 02/19/2019 - J. Ritchie Carroll
23+# Updated to include publisher code.
24+#
2225 #******************************************************************************************************
2326
2427 cmake_minimum_required (VERSION 2.8)
@@ -29,38 +32,397 @@ set (CMAKE_RUNTIME_OUTPUT_DIRECTORY Output) · 4 unmodified lines
2932 set (CMAKE_ARCHIVE_OUTPUT_DIRECTORY Libraries)
3033 set (CMAKE_LIBRARY_OUTPUT_DIRECTORY Libraries)
3134
32−set (headerFiles Common/CommonTypes.h Common/Convert.h
33− Common/EndianConverter.h Common/ThreadSafeQueue.h
34− Transport/CompactMeasurementParser.h Transport/Constants.h
35− Transport/DataSubscriber.h Transport/SignalIndexCache.h
36− Transport/SubscriberInstance.h Transport/TransportTypes.h
37− Transport/TSSCMeasurementParser.h Transport/Version.h)
35+set (GSF_HEADER_FILES
36+ "Common/CommonTypes.h"
37+ "Common/Convert.h"
38+ "Common/EndianConverter.h"
39+ "Common/Nullable.h"
40+ "Common/pugixml.hpp"
41+ "Common/ThreadSafeQueue.h"
42+ "Common/Timer.h"
43+ "Data/DataColumn.h"
44+ "Data/DataRow.h"
45+ "Data/DataSet.h"
46+ "Data/DataTable.h"
47+ "FilterExpressions/ExpressionTree.h"
48+ "FilterExpressions/FilterExpressionParser.h"
49+ "FilterExpressions/FilterExpressionSyntaxBaseListener.h"
50+ "FilterExpressions/FilterExpressionSyntaxLexer.h"
51+ "FilterExpressions/FilterExpressionSyntaxListener.h"
52+ "FilterExpressions/FilterExpressionSyntaxParser.h"
53+ "FilterExpressions/antlr4-runtime/ANTLRErrorListener.h"
54+ "FilterExpressions/antlr4-runtime/ANTLRErrorStrategy.h"
55+ "FilterExpressions/antlr4-runtime/ANTLRFileStream.h"
56+ "FilterExpressions/antlr4-runtime/ANTLRInputStream.h"
57+ "FilterExpressions/antlr4-runtime/BailErrorStrategy.h"
58+ "FilterExpressions/antlr4-runtime/BaseErrorListener.h"
59+ "FilterExpressions/antlr4-runtime/BufferedTokenStream.h"
60+ "FilterExpressions/antlr4-runtime/CharStream.h"
61+ "FilterExpressions/antlr4-runtime/CommonToken.h"
62+ "FilterExpressions/antlr4-runtime/CommonTokenFactory.h"
63+ "FilterExpressions/antlr4-runtime/CommonTokenStream.h"
64+ "FilterExpressions/antlr4-runtime/ConsoleErrorListener.h"
65+ "FilterExpressions/antlr4-runtime/DefaultErrorStrategy.h"
66+ "FilterExpressions/antlr4-runtime/DiagnosticErrorListener.h"
67+ "FilterExpressions/antlr4-runtime/Exceptions.h"
68+ "FilterExpressions/antlr4-runtime/FailedPredicateException.h"
69+ "FilterExpressions/antlr4-runtime/InputMismatchException.h"
70+ "FilterExpressions/antlr4-runtime/IntStream.h"
71+ "FilterExpressions/antlr4-runtime/InterpreterRuleContext.h"
72+ "FilterExpressions/antlr4-runtime/Lexer.h"
73+ "FilterExpressions/antlr4-runtime/LexerInterpreter.h"
74+ "FilterExpressions/antlr4-runtime/LexerNoViableAltException.h"
75+ "FilterExpressions/antlr4-runtime/ListTokenSource.h"
76+ "FilterExpressions/antlr4-runtime/NoViableAltException.h"
77+ "FilterExpressions/antlr4-runtime/Parser.h"
78+ "FilterExpressions/antlr4-runtime/ParserInterpreter.h"
79+ "FilterExpressions/antlr4-runtime/ParserRuleContext.h"
80+ "FilterExpressions/antlr4-runtime/ProxyErrorListener.h"
81+ "FilterExpressions/antlr4-runtime/RecognitionException.h"
82+ "FilterExpressions/antlr4-runtime/Recognizer.h"
83+ "FilterExpressions/antlr4-runtime/RuleContext.h"
84+ "FilterExpressions/antlr4-runtime/RuleContextWithAltNum.h"
85+ "FilterExpressions/antlr4-runtime/RuntimeMetaData.h"
86+ "FilterExpressions/antlr4-runtime/Token.h"
87+ "FilterExpressions/antlr4-runtime/TokenSource.h"
88+ "FilterExpressions/antlr4-runtime/TokenStream.h"
89+ "FilterExpressions/antlr4-runtime/TokenStreamRewriter.h"
90+ "FilterExpressions/antlr4-runtime/UnbufferedCharStream.h"
91+ "FilterExpressions/antlr4-runtime/UnbufferedTokenStream.h"
92+ "FilterExpressions/antlr4-runtime/Vocabulary.h"
93+ "FilterExpressions/antlr4-runtime/WritableToken.h"
94+ "FilterExpressions/antlr4-runtime/atn/ATN.h"
95+ "FilterExpressions/antlr4-runtime/atn/ATNConfig.h"
96+ "FilterExpressions/antlr4-runtime/atn/ATNConfigSet.h"
97+ "FilterExpressions/antlr4-runtime/atn/ATNDeserializationOptions.h"
98+ "FilterExpressions/antlr4-runtime/atn/ATNDeserializer.h"
99+ "FilterExpressions/antlr4-runtime/atn/ATNSerializer.h"
100+ "FilterExpressions/antlr4-runtime/atn/ATNSimulator.h"
101+ "FilterExpressions/antlr4-runtime/atn/ATNState.h"
102+ "FilterExpressions/antlr4-runtime/atn/AbstractPredicateTransition.h"
103+ "FilterExpressions/antlr4-runtime/atn/ActionTransition.h"
104+ "FilterExpressions/antlr4-runtime/atn/AmbiguityInfo.h"
105+ "FilterExpressions/antlr4-runtime/atn/ArrayPredictionContext.h"
106+ "FilterExpressions/antlr4-runtime/atn/AtomTransition.h"
107+ "FilterExpressions/antlr4-runtime/atn/BasicBlockStartState.h"
108+ "FilterExpressions/antlr4-runtime/atn/BasicState.h"
109+ "FilterExpressions/antlr4-runtime/atn/BlockEndState.h"
110+ "FilterExpressions/antlr4-runtime/atn/BlockStartState.h"
111+ "FilterExpressions/antlr4-runtime/atn/ContextSensitivityInfo.h"
112+ "FilterExpressions/antlr4-runtime/atn/DecisionEventInfo.h"
113+ "FilterExpressions/antlr4-runtime/atn/DecisionInfo.h"
114+ "FilterExpressions/antlr4-runtime/atn/DecisionState.h"
115+ "FilterExpressions/antlr4-runtime/atn/EmptyPredictionContext.h"
116+ "FilterExpressions/antlr4-runtime/atn/EpsilonTransition.h"
117+ "FilterExpressions/antlr4-runtime/atn/ErrorInfo.h"
118+ "FilterExpressions/antlr4-runtime/atn/LL1Analyzer.h"
119+ "FilterExpressions/antlr4-runtime/atn/LexerATNConfig.h"
120+ "FilterExpressions/antlr4-runtime/atn/LexerATNSimulator.h"
121+ "FilterExpressions/antlr4-runtime/atn/LexerAction.h"
122+ "FilterExpressions/antlr4-runtime/atn/LexerActionExecutor.h"
123+ "FilterExpressions/antlr4-runtime/atn/LexerChannelAction.h"
124+ "FilterExpressions/antlr4-runtime/atn/LexerCustomAction.h"
125+ "FilterExpressions/antlr4-runtime/atn/LexerIndexedCustomAction.h"
126+ "FilterExpressions/antlr4-runtime/atn/LexerModeAction.h"
127+ "FilterExpressions/antlr4-runtime/atn/LexerMoreAction.h"
128+ "FilterExpressions/antlr4-runtime/atn/LexerPopModeAction.h"
129+ "FilterExpressions/antlr4-runtime/atn/LexerPushModeAction.h"
130+ "FilterExpressions/antlr4-runtime/atn/LexerSkipAction.h"
131+ "FilterExpressions/antlr4-runtime/atn/LexerTypeAction.h"
132+ "FilterExpressions/antlr4-runtime/atn/LookaheadEventInfo.h"
133+ "FilterExpressions/antlr4-runtime/atn/LoopEndState.h"
134+ "FilterExpressions/antlr4-runtime/atn/NotSetTransition.h"
135+ "FilterExpressions/antlr4-runtime/atn/OrderedATNConfigSet.h"
136+ "FilterExpressions/antlr4-runtime/atn/ParseInfo.h"
137+ "FilterExpressions/antlr4-runtime/atn/ParserATNSimulator.h"
138+ "FilterExpressions/antlr4-runtime/atn/PlusBlockStartState.h"
139+ "FilterExpressions/antlr4-runtime/atn/PlusLoopbackState.h"
140+ "FilterExpressions/antlr4-runtime/atn/PrecedencePredicateTransition.h"
141+ "FilterExpressions/antlr4-runtime/atn/PredicateEvalInfo.h"
142+ "FilterExpressions/antlr4-runtime/atn/PredicateTransition.h"
143+ "FilterExpressions/antlr4-runtime/atn/PredictionContext.h"
144+ "FilterExpressions/antlr4-runtime/atn/PredictionMode.h"
145+ "FilterExpressions/antlr4-runtime/atn/ProfilingATNSimulator.h"
146+ "FilterExpressions/antlr4-runtime/atn/RangeTransition.h"
147+ "FilterExpressions/antlr4-runtime/atn/RuleStartState.h"
148+ "FilterExpressions/antlr4-runtime/atn/RuleStopState.h"
149+ "FilterExpressions/antlr4-runtime/atn/RuleTransition.h"
150+ "FilterExpressions/antlr4-runtime/atn/SemanticContext.h"
151+ "FilterExpressions/antlr4-runtime/atn/SetTransition.h"
152+ "FilterExpressions/antlr4-runtime/atn/SingletonPredictionContext.h"
153+ "FilterExpressions/antlr4-runtime/atn/StarBlockStartState.h"
154+ "FilterExpressions/antlr4-runtime/atn/StarLoopEntryState.h"
155+ "FilterExpressions/antlr4-runtime/atn/StarLoopbackState.h"
156+ "FilterExpressions/antlr4-runtime/atn/TokensStartState.h"
157+ "FilterExpressions/antlr4-runtime/atn/Transition.h"
158+ "FilterExpressions/antlr4-runtime/atn/WildcardTransition.h"
159+ "FilterExpressions/antlr4-runtime/dfa/DFA.h"
160+ "FilterExpressions/antlr4-runtime/dfa/DFASerializer.h"
161+ "FilterExpressions/antlr4-runtime/dfa/DFAState.h"
162+ "FilterExpressions/antlr4-runtime/dfa/LexerDFASerializer.h"
163+ "FilterExpressions/antlr4-runtime/misc/InterpreterDataReader.h"
164+ "FilterExpressions/antlr4-runtime/misc/Interval.h"
165+ "FilterExpressions/antlr4-runtime/misc/IntervalSet.h"
166+ "FilterExpressions/antlr4-runtime/misc/MurmurHash.h"
167+ "FilterExpressions/antlr4-runtime/misc/Predicate.h"
168+ "FilterExpressions/antlr4-runtime/support/Any.h"
169+ "FilterExpressions/antlr4-runtime/support/Arrays.h"
170+ "FilterExpressions/antlr4-runtime/support/CPPUtils.h"
171+ "FilterExpressions/antlr4-runtime/support/StringUtils.h"
172+ "FilterExpressions/antlr4-runtime/support/guid.h"
173+ "FilterExpressions/antlr4-runtime/tree/ErrorNode.h"
174+ "FilterExpressions/antlr4-runtime/tree/ErrorNodeImpl.h"
175+ "FilterExpressions/antlr4-runtime/tree/IterativeParseTreeWalker.h"
176+ "FilterExpressions/antlr4-runtime/tree/ParseTree.h"
177+ "FilterExpressions/antlr4-runtime/tree/ParseTreeListener.h"
178+ "FilterExpressions/antlr4-runtime/tree/ParseTreeVisitor.h"
179+ "FilterExpressions/antlr4-runtime/tree/ParseTreeWalker.h"
180+ "FilterExpressions/antlr4-runtime/tree/TerminalNode.h"
181+ "FilterExpressions/antlr4-runtime/tree/TerminalNodeImpl.h"
182+ "FilterExpressions/antlr4-runtime/tree/Trees.h"
183+ "FilterExpressions/antlr4-runtime/tree/pattern/Chunk.h"
184+ "FilterExpressions/antlr4-runtime/tree/pattern/ParseTreeMatch.h"
185+ "FilterExpressions/antlr4-runtime/tree/pattern/ParseTreePattern.h"
186+ "FilterExpressions/antlr4-runtime/tree/pattern/ParseTreePatternMatcher.h"
187+ "FilterExpressions/antlr4-runtime/tree/pattern/RuleTagToken.h"
188+ "FilterExpressions/antlr4-runtime/tree/pattern/TagChunk.h"
189+ "FilterExpressions/antlr4-runtime/tree/pattern/TextChunk.h"
190+ "FilterExpressions/antlr4-runtime/tree/pattern/TokenTagToken.h"
191+ "FilterExpressions/antlr4-runtime/tree/xpath/XPath.h"
192+ "FilterExpressions/antlr4-runtime/tree/xpath/XPathElement.h"
193+ "FilterExpressions/antlr4-runtime/tree/xpath/XPathLexer.h"
194+ "FilterExpressions/antlr4-runtime/tree/xpath/XPathLexerErrorListener.h"
195+ "FilterExpressions/antlr4-runtime/tree/xpath/XPathRuleAnywhereElement.h"
196+ "FilterExpressions/antlr4-runtime/tree/xpath/XPathRuleElement.h"
197+ "FilterExpressions/antlr4-runtime/tree/xpath/XPathTokenAnywhereElement.h"
198+ "FilterExpressions/antlr4-runtime/tree/xpath/XPathTokenElement.h"
199+ "FilterExpressions/antlr4-runtime/tree/xpath/XPathWildcardAnywhereElement.h"
200+ "FilterExpressions/antlr4-runtime/tree/xpath/XPathWildcardElement.h"
201+ "Transport/ActiveMeasurementsSchema.h"
202+ "Transport/CompactMeasurement.h"
203+ "Transport/DataPublisher.h"
204+ "Transport/DataSubscriber.h"
205+ "Transport/MetadataSchema.h"
206+ "Transport/PublisherInstance.h"
207+ "Transport/SignalIndexCache.h"
208+ "Transport/SubscriberConnection.h"
209+ "Transport/SubscriberInstance.h"
210+ "Transport/TSSCMeasurementParser.h"
211+ "Transport/TransportTypes.h"
212+ "Transport/Version.h"
213+)
214+
215+set (GSF_SOURCE_FILES
216+ "Common/CommonTypes.cpp"
217+ "Common/Convert.cpp"
218+ "Common/EndianConverter.cpp"
219+ "Common/pugixml.cpp"
220+ "Data/DataColumn.cpp"
221+ "Data/DataRow.cpp"
222+ "Data/DataSet.cpp"
223+ "Data/DataTable.cpp"
224+ "FilterExpressions/ExpressionTree.cpp"
225+ "FilterExpressions/FilterExpressionParser.cpp"
226+ "FilterExpressions/FilterExpressionSyntaxBaseListener.cpp"
227+ "FilterExpressions/FilterExpressionSyntaxLexer.cpp"
228+ "FilterExpressions/FilterExpressionSyntaxListener.cpp"
229+ "FilterExpressions/FilterExpressionSyntaxParser.cpp"
230+ "FilterExpressions/antlr4-runtime/ANTLRErrorListener.cpp"
231+ "FilterExpressions/antlr4-runtime/ANTLRErrorStrategy.cpp"
232+ "FilterExpressions/antlr4-runtime/ANTLRFileStream.cpp"
233+ "FilterExpressions/antlr4-runtime/ANTLRInputStream.cpp"
234+ "FilterExpressions/antlr4-runtime/BailErrorStrategy.cpp"
235+ "FilterExpressions/antlr4-runtime/BaseErrorListener.cpp"
236+ "FilterExpressions/antlr4-runtime/BufferedTokenStream.cpp"
237+ "FilterExpressions/antlr4-runtime/CharStream.cpp"
238+ "FilterExpressions/antlr4-runtime/CommonToken.cpp"
239+ "FilterExpressions/antlr4-runtime/CommonTokenFactory.cpp"
240+ "FilterExpressions/antlr4-runtime/CommonTokenStream.cpp"
241+ "FilterExpressions/antlr4-runtime/ConsoleErrorListener.cpp"
242+ "FilterExpressions/antlr4-runtime/DefaultErrorStrategy.cpp"
243+ "FilterExpressions/antlr4-runtime/DiagnosticErrorListener.cpp"
244+ "FilterExpressions/antlr4-runtime/Exceptions.cpp"
245+ "FilterExpressions/antlr4-runtime/FailedPredicateException.cpp"
246+ "FilterExpressions/antlr4-runtime/InputMismatchException.cpp"
247+ "FilterExpressions/antlr4-runtime/IntStream.cpp"
248+ "FilterExpressions/antlr4-runtime/InterpreterRuleContext.cpp"
249+ "FilterExpressions/antlr4-runtime/Lexer.cpp"
250+ "FilterExpressions/antlr4-runtime/LexerInterpreter.cpp"
251+ "FilterExpressions/antlr4-runtime/LexerNoViableAltException.cpp"
252+ "FilterExpressions/antlr4-runtime/ListTokenSource.cpp"
253+ "FilterExpressions/antlr4-runtime/NoViableAltException.cpp"
254+ "FilterExpressions/antlr4-runtime/Parser.cpp"
255+ "FilterExpressions/antlr4-runtime/ParserInterpreter.cpp"
256+ "FilterExpressions/antlr4-runtime/ParserRuleContext.cpp"
257+ "FilterExpressions/antlr4-runtime/ProxyErrorListener.cpp"
258+ "FilterExpressions/antlr4-runtime/RecognitionException.cpp"
259+ "FilterExpressions/antlr4-runtime/Recognizer.cpp"
260+ "FilterExpressions/antlr4-runtime/RuleContext.cpp"
261+ "FilterExpressions/antlr4-runtime/RuleContextWithAltNum.cpp"
262+ "FilterExpressions/antlr4-runtime/RuntimeMetaData.cpp"
263+ "FilterExpressions/antlr4-runtime/Token.cpp"
264+ "FilterExpressions/antlr4-runtime/TokenSource.cpp"
265+ "FilterExpressions/antlr4-runtime/TokenStream.cpp"
266+ "FilterExpressions/antlr4-runtime/TokenStreamRewriter.cpp"
267+ "FilterExpressions/antlr4-runtime/UnbufferedCharStream.cpp"
268+ "FilterExpressions/antlr4-runtime/UnbufferedTokenStream.cpp"
269+ "FilterExpressions/antlr4-runtime/Vocabulary.cpp"
270+ "FilterExpressions/antlr4-runtime/WritableToken.cpp"
271+ "FilterExpressions/antlr4-runtime/atn/ATN.cpp"
272+ "FilterExpressions/antlr4-runtime/atn/ATNConfig.cpp"
273+ "FilterExpressions/antlr4-runtime/atn/ATNConfigSet.cpp"
274+ "FilterExpressions/antlr4-runtime/atn/ATNDeserializationOptions.cpp"
275+ "FilterExpressions/antlr4-runtime/atn/ATNDeserializer.cpp"
276+ "FilterExpressions/antlr4-runtime/atn/ATNSerializer.cpp"
277+ "FilterExpressions/antlr4-runtime/atn/ATNSimulator.cpp"
278+ "FilterExpressions/antlr4-runtime/atn/ATNState.cpp"
279+ "FilterExpressions/antlr4-runtime/atn/AbstractPredicateTransition.cpp"
280+ "FilterExpressions/antlr4-runtime/atn/ActionTransition.cpp"
281+ "FilterExpressions/antlr4-runtime/atn/AmbiguityInfo.cpp"
282+ "FilterExpressions/antlr4-runtime/atn/ArrayPredictionContext.cpp"
283+ "FilterExpressions/antlr4-runtime/atn/AtomTransition.cpp"
284+ "FilterExpressions/antlr4-runtime/atn/BasicBlockStartState.cpp"
285+ "FilterExpressions/antlr4-runtime/atn/BasicState.cpp"
286+ "FilterExpressions/antlr4-runtime/atn/BlockEndState.cpp"
287+ "FilterExpressions/antlr4-runtime/atn/BlockStartState.cpp"
288+ "FilterExpressions/antlr4-runtime/atn/ContextSensitivityInfo.cpp"
289+ "FilterExpressions/antlr4-runtime/atn/DecisionEventInfo.cpp"
290+ "FilterExpressions/antlr4-runtime/atn/DecisionInfo.cpp"
291+ "FilterExpressions/antlr4-runtime/atn/DecisionState.cpp"
292+ "FilterExpressions/antlr4-runtime/atn/EmptyPredictionContext.cpp"
293+ "FilterExpressions/antlr4-runtime/atn/EpsilonTransition.cpp"
294+ "FilterExpressions/antlr4-runtime/atn/ErrorInfo.cpp"
295+ "FilterExpressions/antlr4-runtime/atn/LL1Analyzer.cpp"
296+ "FilterExpressions/antlr4-runtime/atn/LexerATNConfig.cpp"
297+ "FilterExpressions/antlr4-runtime/atn/LexerATNSimulator.cpp"
298+ "FilterExpressions/antlr4-runtime/atn/LexerAction.cpp"
299+ "FilterExpressions/antlr4-runtime/atn/LexerActionExecutor.cpp"
300+ "FilterExpressions/antlr4-runtime/atn/LexerChannelAction.cpp"
301+ "FilterExpressions/antlr4-runtime/atn/LexerCustomAction.cpp"
302+ "FilterExpressions/antlr4-runtime/atn/LexerIndexedCustomAction.cpp"
303+ "FilterExpressions/antlr4-runtime/atn/LexerModeAction.cpp"
304+ "FilterExpressions/antlr4-runtime/atn/LexerMoreAction.cpp"
305+ "FilterExpressions/antlr4-runtime/atn/LexerPopModeAction.cpp"
306+ "FilterExpressions/antlr4-runtime/atn/LexerPushModeAction.cpp"
307+ "FilterExpressions/antlr4-runtime/atn/LexerSkipAction.cpp"
308+ "FilterExpressions/antlr4-runtime/atn/LexerTypeAction.cpp"
309+ "FilterExpressions/antlr4-runtime/atn/LookaheadEventInfo.cpp"
310+ "FilterExpressions/antlr4-runtime/atn/LoopEndState.cpp"
311+ "FilterExpressions/antlr4-runtime/atn/NotSetTransition.cpp"
312+ "FilterExpressions/antlr4-runtime/atn/OrderedATNConfigSet.cpp"
313+ "FilterExpressions/antlr4-runtime/atn/ParseInfo.cpp"
314+ "FilterExpressions/antlr4-runtime/atn/ParserATNSimulator.cpp"
315+ "FilterExpressions/antlr4-runtime/atn/PlusBlockStartState.cpp"
316+ "FilterExpressions/antlr4-runtime/atn/PlusLoopbackState.cpp"
317+ "FilterExpressions/antlr4-runtime/atn/PrecedencePredicateTransition.cpp"
318+ "FilterExpressions/antlr4-runtime/atn/PredicateEvalInfo.cpp"
319+ "FilterExpressions/antlr4-runtime/atn/PredicateTransition.cpp"
320+ "FilterExpressions/antlr4-runtime/atn/PredictionContext.cpp"
321+ "FilterExpressions/antlr4-runtime/atn/PredictionMode.cpp"
322+ "FilterExpressions/antlr4-runtime/atn/ProfilingATNSimulator.cpp"
323+ "FilterExpressions/antlr4-runtime/atn/RangeTransition.cpp"
324+ "FilterExpressions/antlr4-runtime/atn/RuleStartState.cpp"
325+ "FilterExpressions/antlr4-runtime/atn/RuleStopState.cpp"
326+ "FilterExpressions/antlr4-runtime/atn/RuleTransition.cpp"
327+ "FilterExpressions/antlr4-runtime/atn/SemanticContext.cpp"
328+ "FilterExpressions/antlr4-runtime/atn/SetTransition.cpp"
329+ "FilterExpressions/antlr4-runtime/atn/SingletonPredictionContext.cpp"
330+ "FilterExpressions/antlr4-runtime/atn/StarBlockStartState.cpp"
331+ "FilterExpressions/antlr4-runtime/atn/StarLoopEntryState.cpp"
332+ "FilterExpressions/antlr4-runtime/atn/StarLoopbackState.cpp"
333+ "FilterExpressions/antlr4-runtime/atn/TokensStartState.cpp"
334+ "FilterExpressions/antlr4-runtime/atn/Transition.cpp"
335+ "FilterExpressions/antlr4-runtime/atn/WildcardTransition.cpp"
336+ "FilterExpressions/antlr4-runtime/dfa/DFA.cpp"
337+ "FilterExpressions/antlr4-runtime/dfa/DFASerializer.cpp"
338+ "FilterExpressions/antlr4-runtime/dfa/DFAState.cpp"
339+ "FilterExpressions/antlr4-runtime/dfa/LexerDFASerializer.cpp"
340+ "FilterExpressions/antlr4-runtime/misc/InterpreterDataReader.cpp"
341+ "FilterExpressions/antlr4-runtime/misc/Interval.cpp"
342+ "FilterExpressions/antlr4-runtime/misc/IntervalSet.cpp"
343+ "FilterExpressions/antlr4-runtime/misc/MurmurHash.cpp"
344+ "FilterExpressions/antlr4-runtime/misc/Predicate.cpp"
345+ "FilterExpressions/antlr4-runtime/support/Any.cpp"
346+ "FilterExpressions/antlr4-runtime/support/Arrays.cpp"
347+ "FilterExpressions/antlr4-runtime/support/CPPUtils.cpp"
348+ "FilterExpressions/antlr4-runtime/support/StringUtils.cpp"
349+ "FilterExpressions/antlr4-runtime/support/guid.cpp"
350+ "FilterExpressions/antlr4-runtime/tree/ErrorNode.cpp"
351+ "FilterExpressions/antlr4-runtime/tree/ErrorNodeImpl.cpp"
352+ "FilterExpressions/antlr4-runtime/tree/IterativeParseTreeWalker.cpp"
353+ "FilterExpressions/antlr4-runtime/tree/ParseTree.cpp"
354+ "FilterExpressions/antlr4-runtime/tree/ParseTreeListener.cpp"
355+ "FilterExpressions/antlr4-runtime/tree/ParseTreeVisitor.cpp"
356+ "FilterExpressions/antlr4-runtime/tree/ParseTreeWalker.cpp"
357+ "FilterExpressions/antlr4-runtime/tree/TerminalNode.cpp"
358+ "FilterExpressions/antlr4-runtime/tree/TerminalNodeImpl.cpp"
359+ "FilterExpressions/antlr4-runtime/tree/Trees.cpp"
360+ "FilterExpressions/antlr4-runtime/tree/pattern/Chunk.cpp"
361+ "FilterExpressions/antlr4-runtime/tree/pattern/ParseTreeMatch.cpp"
362+ "FilterExpressions/antlr4-runtime/tree/pattern/ParseTreePattern.cpp"
363+ "FilterExpressions/antlr4-runtime/tree/pattern/ParseTreePatternMatcher.cpp"
364+ "FilterExpressions/antlr4-runtime/tree/pattern/RuleTagToken.cpp"
365+ "FilterExpressions/antlr4-runtime/tree/pattern/TagChunk.cpp"
366+ "FilterExpressions/antlr4-runtime/tree/pattern/TextChunk.cpp"
367+ "FilterExpressions/antlr4-runtime/tree/pattern/TokenTagToken.cpp"
368+ "FilterExpressions/antlr4-runtime/tree/xpath/XPath.cpp"
369+ "FilterExpressions/antlr4-runtime/tree/xpath/XPathElement.cpp"
370+ "FilterExpressions/antlr4-runtime/tree/xpath/XPathLexer.cpp"
371+ "FilterExpressions/antlr4-runtime/tree/xpath/XPathLexerErrorListener.cpp"
372+ "FilterExpressions/antlr4-runtime/tree/xpath/XPathRuleAnywhereElement.cpp"
373+ "FilterExpressions/antlr4-runtime/tree/xpath/XPathRuleElement.cpp"
374+ "FilterExpressions/antlr4-runtime/tree/xpath/XPathTokenAnywhereElement.cpp"
375+ "FilterExpressions/antlr4-runtime/tree/xpath/XPathTokenElement.cpp"
376+ "FilterExpressions/antlr4-runtime/tree/xpath/XPathWildcardAnywhereElement.cpp"
377+ "FilterExpressions/antlr4-runtime/tree/xpath/XPathWildcardElement.cpp"
378+ "Transport/ActiveMeasurementsSchema.cpp"
379+ "Transport/CompactMeasurement.cpp"
380+ "Transport/DataPublisher.cpp"
381+ "Transport/DataSubscriber.cpp"
382+ "Transport/MetadataSchema.cpp"
383+ "Transport/PublisherInstance.cpp"
384+ "Transport/SignalIndexCache.cpp"
385+ "Transport/SubscriberConnection.cpp"
386+ "Transport/SubscriberInstance.cpp"
387+ "Transport/TSSCMeasurementParser.cpp"
388+ "Transport/TransportTypes.cpp"
389+)
38390
39391 # Option to choose whether to build static or shared libraries
40392 option (BUILD_SHARED_LIBS "Build gsf using shared libraries" OFF)
41393
42394 # Copy header files
43−foreach (headerFile ${headerFiles})
395+foreach (headerFile ${GSF_HEADER_FILES})
44396 string (REGEX MATCH "(.*)[/\\]" DIR ${headerFile})
45397 file (COPY ${headerFile} DESTINATION ${HEADER_OUTPUT_DIRECTORY}/${DIR})
46398 endforeach (headerFile)
47399
400+# Define include directories
401+include_directories(
402+ "FilterExpressions/antlr4-runtime"
403+)
404+
405+# Define macros
406+add_definitions(
407+ -DBOOST_CONFIG_SUPPRESS_OUTDATED_MESSAGE
408+ -DBOOST_ASIO_ENABLE_CANCELIO
409+ -DANTLR4CPP_STATIC
410+)
411+
412+# Define compile flags
413+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17")
414+if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
415+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
416+endif()
417+
48418 # Build gsf library
49−add_library (gsf Common/CommonTypes.cpp Common/Convert.cpp Common/pugixml.cpp
50− Common/EndianConverter.cpp Transport/DataSubscriber.cpp
51− Transport/CompactMeasurementParser.cpp
52− Transport/SignalIndexCache.cpp Transport/TransportTypes.cpp
53− Transport/SubscriberInstance.cpp
54− Transport/TSSCMeasurementParser.cpp)
55−target_link_libraries (gsf boost_system boost_thread boost_date_time
56− boost_iostreams pthread m)
419+add_library (gsf STATIC ${GSF_SOURCE_FILES})
420+target_link_libraries (gsf boost_system boost_thread boost_date_time boost_iostreams pthread m z bz2)
57421
58422 # Install headers and library
59−install (DIRECTORY ${PROJECT_BINARY_DIR}/${HEADER_OUTPUT_DIRECTORY}
60− DESTINATION include)
423+install (DIRECTORY ${PROJECT_BINARY_DIR}/${HEADER_OUTPUT_DIRECTORY} DESTINATION include)
61424 install (TARGETS gsf DESTINATION lib)
62425
63−
64426 ######################
65427 # SAMPLE EXECUTABLES #
66428 ######################
@@ -72,20 +434,36 @@ add_executable (SimpleSubscribe EXCLUDE_FROM_ALL Samples/SimpleSubscribe.cpp) · 5 unmodified lines
72434 target_link_libraries (SimpleSubscribe gsf)
73435
74436 # AdvancedSubscribe sample
75−add_executable (AdvancedSubscribe EXCLUDE_FROM_ALL
76− Samples/AdvancedSubscribe.cpp)
437+add_executable (AdvancedSubscribe EXCLUDE_FROM_ALL Samples/AdvancedSubscribe.cpp)
77438 target_link_libraries (AdvancedSubscribe gsf)
78439
79440 # AverageFrequencyCalculator sample
80−add_executable (AverageFrequencyCalculator EXCLUDE_FROM_ALL
81− Samples/AverageFrequencyCalculator.cpp)
441+add_executable (AverageFrequencyCalculator EXCLUDE_FROM_ALL Samples/AverageFrequencyCalculator.cpp)
82442 target_link_libraries (AverageFrequencyCalculator gsf)
83443
84444 # InstanceSubscribe sample
85−add_executable (InstanceSubscribe EXCLUDE_FROM_ALL
86− Samples/InstanceSubscribe.cpp Samples/SubscriberHandler.cpp)
445+add_executable (InstanceSubscribe EXCLUDE_FROM_ALL Samples/InstanceSubscribe.cpp Samples/SubscriberHandler.cpp)
87446 target_link_libraries (InstanceSubscribe gsf)
88447
448+# FilterExpressionTests sample
449+add_executable (FilterExpressionTests EXCLUDE_FROM_ALL Samples/FilterExpressionTests.cpp)
450+target_link_libraries (FilterExpressionTests gsf boost_filesystem)
451+
452+# SimplePublish sample
453+add_executable (SimplePublish EXCLUDE_FROM_ALL Samples/SimplePublish.cpp)
454+target_link_libraries (SimplePublish gsf)
455+
456+# AdvancedPublish sample
457+add_executable (AdvancedPublish EXCLUDE_FROM_ALL Samples/AdvancedPublish.cpp)
458+target_link_libraries (AdvancedPublish gsf)
459+
89460 # Build with 'make samples'
90−add_custom_target (samples DEPENDS SimpleSubscribe AdvancedSubscribe
91− AverageFrequencyCalculator InstanceSubscribe)
461+add_custom_target (samples DEPENDS
462+ SimpleSubscribe
463+ AdvancedSubscribe
464+ AverageFrequencyCalculator
465+ InstanceSubscribe
466+ FilterExpressionTests
467+ SimplePublish
468+ AdvancedPublish
469+)
Source/Libraries/TimeSeriesPlatformLibrary/Common/CommonTypes.h+4−0
@@ -375,6 +375,10 @@ namespace GSF · 374 unmodified lines
375375 std::string PadLeft(const std::string& value, uint32_t count, char padChar);
376376 std::string PadRight(const std::string& value, uint32_t count, char padChar);
377377
378+ #ifndef strcpy_s
379+ #define strcpy_s(dest, size, src) strncpy(dest, src, size)
380+ #endif
381+
378382 // Handy date/time functions (boost wrappers)
379383 enum class TimeInterval
380384 {
Source/Libraries/TimeSeriesPlatformLibrary/Common/Nullable.h+1−1
@@ -116,7 +116,7 @@ namespace GSF · 115 unmodified lines
116116 void Nullable<T>::NullableValue::checkHasValue() const
117117 {
118118 if (!m_hasValue)
119− throw std::exception("Nullable object must have a value");
119+ throw std::runtime_error("Nullable object must have a value");
120120 }
121121
122122 template<class T>
Source/Libraries/TimeSeriesPlatformLibrary/Data/DataColumn.h+1−1
@@ -48,7 +48,7 @@ namespace Data · 47 unmodified lines
4848 UInt64
4949 };
5050
51− const char* DataTypeAcronym[];
51+ const extern char* DataTypeAcronym[];
5252 const char* EnumName(DataType type);
5353
5454 class DataTable;
Source/Libraries/TimeSeriesPlatformLibrary/Data/DataSet.h+1−1
@@ -52,7 +52,7 @@ namespace Data · 51 unmodified lines
5252 class DataSet : public GSF::EnableSharedThisPtr<DataSet> // NOLINT
5353 {
5454 private:
55− GSF::StringMap<DataTablePtr> m_tables;
55+ GSF::SortedStringMap<DataTablePtr> m_tables;
5656
5757 void ParseXml(const pugi::xml_document& document);
5858 void GenerateXml(pugi::xml_document& document, const std::string& dataSetName) const;
Source/Libraries/TimeSeriesPlatformLibrary/FilterExpressions/ExpressionTree.h+3−3
@@ -84,7 +84,7 @@ namespace FilterExpressions · 83 unmodified lines
8484 };
8585
8686 const extern int32_t ExpressionValueTypeLength;
87− const char* ExpressionValueTypeAcronym[];
87+ const extern char* ExpressionValueTypeAcronym[];
8888 const char* EnumName(ExpressionValueType valueType);
8989
9090 bool IsIntegerType(ExpressionValueType valueType);
@@ -140,7 +140,7 @@ namespace FilterExpressions · 49 unmodified lines
140140 Not
141141 };
142142
143− const char* ExpressionUnaryTypeAcronym[];
143+ const extern char* ExpressionUnaryTypeAcronym[];
144144 const char* EnumName(ExpressionUnaryType unaryType);
145145
146146 class UnaryExpression : public Expression
@@ -263,7 +263,7 @@ namespace FilterExpressions · 116 unmodified lines
263263 Or
264264 };
265265
266− const char* ExpressionOperatorTypeAcronym[];
266+ const extern char* ExpressionOperatorTypeAcronym[];
267267 const char* EnumName(ExpressionOperatorType operatorType);
268268
269269 class OperatorExpression : public Expression
Source/Libraries/TimeSeriesPlatformLibrary/FilterExpressions/antlr4-runtime/atn/ATNState.h+3−1
@@ -70,7 +70,9 @@ namespace atn { · 69 unmodified lines
7070 ///
7171 /// <embed src="images/OptionalNonGreedy.svg" type="image/svg+xml"/>
7272 /// </summary>
73− class ANTLR4CPP_PUBLIC ATN;
73+
74+ // ATN forward declaration does not need ANTLR4CPP_PUBLIC declaration
75+ class ATN;
7476
7577 class ANTLR4CPP_PUBLIC ATNState {
7678 public:
Source/Libraries/TimeSeriesPlatformLibrary/README.txt+8−1
@@ -1,6 +1,6 @@
11 This is the C++ implementation of the Gateway Exchange Protocol.
22
3−Currently the code only exists as a "subscriber" for GEP.
3+This code includes functionality for both a "subscriber" and "publisher" in GEP.
44
55 ------------------------------------------------------------------------------
66 Compiling in Visual Studio
@@ -68,6 +68,10 @@ CMake v2.8 (http://www.cmake.org/) · 61 unmodified lines
6868 GNU Make (http://www.gnu.org/software/make/)
6969 - Not required on a Windows platform
7070
71+zlib Library, e.g.: sudo apt-get install zlib1g-dev
72+
73+bzip2 library, e.g.: sudo apt-get install libbz2-dev
74+
7175 Boost C++ Libraries v1.66.0 (http://www.boost.org/)
7276 - Boost.Asio
7377 - Boost.Bind
@@ -76,6 +80,9 @@ Boost C++ Libraries v1.66.0 (http://www.boost.org/) · 2 unmodified lines
7680 - Boost.Thread
7781 - Boost.Uuid
7882
83+Boost will need to be compiled:
84+https://www.boost.org/doc/libs/1_66_0/more/getting_started/unix-variants.html
85+
7986 2. Configuration
8087 ----------------
8188 From the command terminal, enter the source directory containing this
Source/Libraries/TimeSeriesPlatformLibrary/Samples/FilterExpressionTests.cpp+2−6
@@ -21,15 +21,11 @@ · 20 unmodified lines
2121 //
2222 //******************************************************************************************************
2323
24−#define BOOST_TEST_MAIN
25−
2624 #include <iostream>
2725 #include <string>
2826 #include <fstream>
2927 #include <iterator>
3028 #include <boost/filesystem.hpp>
31−#include <boost/test/unit_test.hpp>
32−
3329 #include "../FilterExpressions/FilterExpressionParser.h"
3430 #include "../Data/DataSet.h"
3531
@@ -1409,9 +1405,9 @@ int main(int argc, char* argv[]) · 1373 unmodified lines
14091405 std::ifstream ifs2("Test2.xml");
14101406
14111407 const istream_iterator<char> b1(ifs1), e1 {};
1412− const istream_iterator<char> b2(ifs2), e2 {};
1408+ const istream_iterator<char> b2(ifs2); // , e2 {};
14131409
1414− BOOST_CHECK_EQUAL_COLLECTIONS(b1, e1, b2, e2);
1410+ assert(equal(b1, e1, b2));
14151411 cout << "Test " << ++test << " succeeded..." << endl;
14161412
14171413 // Test 148

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t