History

TimeSeriesPlatformLibrary: (1) Fixed issue with SignalReference parser, (2) converted tabs to spaces, (3) tested 64-bit compilation

J. Ritchie Carroll committed 8 years ago

Commit 3dfa6731 parent dab518924 files · +3167 −3043Browse files

Showing the changes to Source/Libraries/TimeSeriesPlatformLibrary/Samples/SubscriberHandler.cpp (1 of 24 files). Show all

Unified · Split

Source/Libraries/TimeSeriesPlatformLibrary/Samples/SubscriberHandler.cpp+91−91
@@ -29,166 +29,166 @@ using namespace GSF::TimeSeries; · 28 unmodified lines
2929
3030 SubscriberHandler::SubscriberHandler(const string& name)
3131 {
32− m_name = name;
32+ m_name = name;
3333 }
3434
3535 SubscriptionInfo SubscriberHandler::CreateSubscriptionInfo()
3636 {
37− SubscriptionInfo info = SubscriberInstance::CreateSubscriptionInfo();
37+ SubscriptionInfo info = SubscriberInstance::CreateSubscriptionInfo();
3838
39− // TODO: Modify subscription info properties as desired...
39+ // TODO: Modify subscription info properties as desired...
4040
41− // To set up a remotely synchronized subscription, set this flag
42− // to true and add the framesPerSecond parameter to the
43− // ExtraConnectionStringParameters. Additionally, the following
44− // example demonstrates the use of some other useful parameters
45− // when setting up remotely synchronized subscriptions.
41+ // To set up a remotely synchronized subscription, set this flag
42+ // to true and add the framesPerSecond parameter to the
43+ // ExtraConnectionStringParameters. Additionally, the following
44+ // example demonstrates the use of some other useful parameters
45+ // when setting up remotely synchronized subscriptions.
4646
47− //info.RemotelySynchronized = true;
48− //info.ExtraConnectionStringParameters = "framesPerSecond=30;timeResolution=10000;downsamplingMethod=Closest";
49− //info.LagTime = 3.0;
50− //info.LeadTime = 1.0;
51− //info.UseLocalClockAsRealTime = false;
47+ //info.RemotelySynchronized = true;
48+ //info.ExtraConnectionStringParameters = "framesPerSecond=30;timeResolution=10000;downsamplingMethod=Closest";
49+ //info.LagTime = 3.0;
50+ //info.LeadTime = 1.0;
51+ //info.UseLocalClockAsRealTime = false;
5252
53− // Other example properties (see SubscriptionInfo.h for all properties)
54− //info.Throttled = false;
55− //info.IncludeTime = true;
56− //info.UseMillisecondResolution = true;
53+ // Other example properties (see SubscriptionInfo.h for all properties)
54+ //info.Throttled = false;
55+ //info.IncludeTime = true;
56+ //info.UseMillisecondResolution = true;
5757
58− return info;
58+ return info;
5959 }
6060
6161 void SubscriberHandler::StatusMessage(const string& message)
6262 {
63− // TODO: Make sure these messages get logged to an appropriate location
64− // For now, the base class just displays to console:
65− stringstream status;
63+ // TODO: Make sure these messages get logged to an appropriate location
64+ // For now, the base class just displays to console:
65+ stringstream status;
6666
67− status << "[" << m_name << "] " << message;
67+ status << "[" << m_name << "] " << message;
6868
69− SubscriberInstance::StatusMessage(status.str());
69+ SubscriberInstance::StatusMessage(status.str());
7070 }
7171
7272 void SubscriberHandler::ErrorMessage(const string& message)
7373 {
74− // TODO: Make sure these messages get logged to an appropriate location
75− // For now, the base class just displays to console:
76− stringstream status;
74+ // TODO: Make sure these messages get logged to an appropriate location
75+ // For now, the base class just displays to console:
76+ stringstream status;
7777
78− status << "[" << m_name << "] " << message;
78+ status << "[" << m_name << "] " << message;
7979
80− SubscriberInstance::ErrorMessage(status.str());
80+ SubscriberInstance::ErrorMessage(status.str());
8181 }
8282
8383 void SubscriberHandler::DataStartTime(time_t unixSOC, int milliseconds)
8484 {
85− // TODO: This reports timestamp of very first received measurement (if useful)
85+ // TODO: This reports timestamp of very first received measurement (if useful)
8686 }
8787
8888 void SubscriberHandler::ReceivedMetadata(const vector<uint8_t>& payload)
8989 {
90− stringstream message;
91− message << "Received " << payload.size() << " bytes of metadata, parsing...";
92− StatusMessage(message.str());
90+ stringstream message;
91+ message << "Received " << payload.size() << " bytes of metadata, parsing...";
92+ StatusMessage(message.str());
9393
94− SubscriberInstance::ReceivedMetadata(payload);
94+ SubscriberInstance::ReceivedMetadata(payload);
9595 }
9696
9797 void SubscriberHandler::ParsedMetadata()
9898 {
99− StatusMessage("Metadata successfully parsed.");
99+ StatusMessage("Metadata successfully parsed.");
100100 }
101101
102102 void SubscriberHandler::ReceivedNewMeasurements(const vector<MeasurementPtr>& measurements)
103103 {
104− // Start processing measurements
105− for (auto &measurement: measurements)
106− {
107− time_t soc;
108− int16_t milliseconds;
104+ // Start processing measurements
105+ for (auto &measurement : measurements)
106+ {
107+ time_t soc;
108+ int16_t milliseconds;
109109
110− // Get adjusted value
111− float64_t value = measurement->AdjustedValue();
110+ // Get adjusted value
111+ float64_t value = measurement->AdjustedValue();
112112
113− // Get time converted to UNIX second of century plus milliseconds
114− measurement->GetUnixTime(soc, milliseconds);
113+ // Get time converted to UNIX second of century plus milliseconds
114+ measurement->GetUnixTime(soc, milliseconds);
115115
116− // Handle per measurement quality flags
117− int32_t qualityFlags = measurement->Flags;
116+ // Handle per measurement quality flags
117+ int32_t qualityFlags = measurement->Flags;
118118
119− ConfigurationFramePtr configurationFrame;
119+ ConfigurationFramePtr configurationFrame;
120120
121− // Find associated configuration for measurement
122− if (TryFindTargetConfigurationFrame(measurement->SignalID, configurationFrame))
123− {
124− MeasurementMetadataPtr measurementMetadata;
121+ // Find associated configuration for measurement
122+ if (TryFindTargetConfigurationFrame(measurement->SignalID, configurationFrame))
123+ {
124+ MeasurementMetadataPtr measurementMetadata;
125125
126− // Lookup measurement metadata - it's faster to find metadata from within configuration frame
127− if (TryGetMeasurementMetdataFromConfigurationFrame(measurement->SignalID, configurationFrame, measurementMetadata))
128− {
129− const SignalReference& reference = measurementMetadata->Reference;
130−
131− // reference.Acronym << target device acronym
132− // reference.Kind << kind of signal (see SignalKind in "Types.h"), like Frequency, Angle, etc
133− // reference.Index << for Phasors, Analogs and Digitals - this is the ordered "index"
126+ // Lookup measurement metadata - it's faster to find metadata from within configuration frame
127+ if (TryGetMeasurementMetdataFromConfigurationFrame(measurement->SignalID, configurationFrame, measurementMetadata))
128+ {
129+ const SignalReference& reference = measurementMetadata->Reference;
134130
135− // TODO: Handle measurement processing here...
136− }
137− }
138− }
131+ // reference.Acronym << target device acronym
132+ // reference.Kind << kind of signal (see SignalKind in "Types.h"), like Frequency, Angle, etc
133+ // reference.Index << for Phasors, Analogs and Digitals - this is the ordered "index"
139134
140− // TODO: *** Temporary Testing Code Below *** -- REMOVE BEFOR USE
141− const string TimestampFormat = "%Y-%m-%d %H:%M:%S.%f";
142− const size_t MaxTimestampSize = 80;
135+ // TODO: Handle measurement processing here...
136+ }
137+ }
138+ }
143139
144− static int processCount = 0;
145− size_t i;
140+ // TODO: *** Temporary Testing Code Below *** -- REMOVE BEFORE USE
141+ const string TimestampFormat = "%Y-%m-%d %H:%M:%S.%f";
142+ const size_t MaxTimestampSize = 80;
146143
147− char timestamp[MaxTimestampSize];
144+ static int processCount = 0;
145+ size_t i;
148146
149− // Only display messages every five
150− // seconds (assuming 30 calls per second).
151− if (processCount % 150 == 0)
152− {
153− stringstream message;
147+ char timestamp[MaxTimestampSize];
154148
155− message << GetTotalMeasurementsReceived() << " measurements received so far..." << endl;
149+ // Only display messages every five
150+ // seconds (assuming 30 calls per second).
151+ if (processCount % 150 == 0)
152+ {
153+ stringstream message;
156154
157− if (!measurements.empty())
158− {
159− if (TicksToString(timestamp, MaxTimestampSize, TimestampFormat, measurements[0]->Timestamp))
160− message << "Timestamp: " << string(timestamp) << endl;
155+ message << GetTotalMeasurementsReceived() << " measurements received so far..." << endl;
161156
162− message << "Point\tValue" << endl;
157+ if (!measurements.empty())
158+ {
159+ if (TicksToString(timestamp, MaxTimestampSize, TimestampFormat, measurements[0]->Timestamp))
160+ message << "Timestamp: " << string(timestamp) << endl;
163161
164− for (i = 0; i < measurements.size(); ++i)
165− message << measurements[i]->ID << '\t' << measurements[i]->Value << endl;
162+ message << "Point\tValue" << endl;
166163
167− message << endl;
168− }
164+ for (i = 0; i < measurements.size(); ++i)
165+ message << measurements[i]->ID << '\t' << measurements[i]->Value << endl;
169166
170− StatusMessage(message.str());
171− }
167+ message << endl;
168+ }
172169
173− ++processCount;
170+ StatusMessage(message.str());
171+ }
172+
173+ ++processCount;
174174 }
175175
176176 void SubscriberHandler::ConfigurationChanged()
177177 {
178− StatusMessage("Configuration change detected. Metadata refresh requested.");
178+ StatusMessage("Configuration change detected. Metadata refresh requested.");
179179 }
180180
181181 void SubscriberHandler::HistoricalReadComplete()
182182 {
183− StatusMessage("Historical data read complete.");
183+ StatusMessage("Historical data read complete.");
184184 }
185185
186186 void SubscriberHandler::ConnectionEstablished()
187187 {
188− StatusMessage("Connection established.");
188+ StatusMessage("Connection established.");
189189 }
190190
191191 void SubscriberHandler::ConnectionTerminated()
192192 {
193− StatusMessage("Connection terminated.");
194−}
193+ StatusMessage("Connection terminated.");
194+}

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