History

TimeSeriesPlatformLibrary: Standardized use of integer types across code base to be bit-size specific.

J. Ritchie Carroll committed 8 years ago

Commit be0ccdb1 parent 7a3066724 files · +268 −280Browse files

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

Unified · Split

Source/Libraries/TimeSeriesPlatformLibrary/Samples/SimpleSubscribe.cpp+22−21
@@ -35,7 +35,7 @@ using namespace GSF::TimeSeries::Transport; · 34 unmodified lines
3535 DataSubscriber Subscriber;
3636
3737 bool RunSubscriber(string hostname, uint16_t port);
38−void ProcessMeasurements(DataSubscriber* source, const vector<MeasurementPtr>& newMeasurements);
38+void ProcessMeasurements(DataSubscriber* source, const vector<MeasurementPtr>& measurements);
3939 void DisplayStatusMessage(DataSubscriber* source, const string& message);
4040 void DisplayErrorMessage(DataSubscriber* source, const string& message);
4141
@@ -136,37 +136,38 @@ bool RunSubscriber(string hostname, uint16_t port) · 94 unmodified lines
136136
137137 // Callback which is called when the subscriber has
138138 // received a new packet of measurements from the publisher.
139−void ProcessMeasurements(DataSubscriber* source, const vector<MeasurementPtr>& newMeasurements)
139+void ProcessMeasurements(DataSubscriber* source, const vector<MeasurementPtr>& measurements)
140140 {
141141 const string TimestampFormat = "%Y-%m-%d %H:%M:%S.%f";
142− const size_t MaxTimestampSize = 80;
142+ const uint32_t MaxTimestampSize = 80;
143143
144− static int processCount = 0;
145− size_t i;
144+ static long processCount = 0;
145+ static char timestamp[MaxTimestampSize];
146+ static const long interval = 5 * 60;
147+ const long measurementCount = measurements.size();
148+ const bool showMessage = (processCount + measurementCount >= (processCount / interval + 1) * interval);
146149
147− char timestamp[MaxTimestampSize];
150+ processCount += measurementCount;
148151
149− // Only display messages every five
150− // seconds (assuming 30 calls per second).
151− if (processCount % 150 == 0)
152+ // Only display messages every few seconds
153+ if (showMessage)
152154 {
153− cout << source->GetTotalMeasurementsReceived() << " measurements received so far..." << endl;
155+ stringstream message;
154156
155− if (!newMeasurements.empty())
156− {
157− if (TicksToString(timestamp, MaxTimestampSize, TimestampFormat, newMeasurements[0]->Timestamp))
158− cout << "Timestamp: " << string(timestamp) << endl;
157+ message << source->GetTotalMeasurementsReceived() << " measurements received so far..." << endl;
159158
160− cout << "Point\tValue" << endl;
159+ if (TicksToString(timestamp, MaxTimestampSize, TimestampFormat, measurements[0]->Timestamp))
160+ message << "Timestamp: " << string(timestamp) << endl;
161161
162− for (i = 0; i < newMeasurements.size(); ++i)
163− cout << newMeasurements[i]->ID << '\t' << newMeasurements[i]->Value << endl;
162+ message << "Point\tValue" << endl;
164163
165− cout << endl;
166− }
167− }
164+ for (const auto& measurement : measurements)
165+ message << measurement->ID << '\t' << measurement->Value << endl;
166+
167+ message << endl;
168168
169− ++processCount;
169+ cout << message.str();
170+ }
170171 }
171172
172173 // Callback which is called to display status messages from the subscriber.

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