Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(460)

Side by Side Diff: dbus/property.h

Issue 353063007: Revert of [DBus] Explicitly instantiate dbus::Property variants (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef DBUS_PROPERTY_H_ 5 #ifndef DBUS_PROPERTY_H_
6 #define DBUS_PROPERTY_H_ 6 #define DBUS_PROPERTY_H_
7 7
8 #include <map> 8 #include <map>
9 #include <string> 9 #include <string>
10 10
(...skipping 332 matching lines...) Expand 10 before | Expand all | Expand 10 after
343 // Where a round-trip is necessary, the Get() method is provided. And to 343 // Where a round-trip is necessary, the Get() method is provided. And to
344 // update the remote object value, the Set() method is also provided; these 344 // update the remote object value, the Set() method is also provided; these
345 // both simply call methods on PropertySet. 345 // both simply call methods on PropertySet.
346 // 346 //
347 // Handling of particular D-Bus types is performed via specialization, 347 // Handling of particular D-Bus types is performed via specialization,
348 // typically the PopValueFromReader() and AppendSetValueToWriter() methods 348 // typically the PopValueFromReader() and AppendSetValueToWriter() methods
349 // will need to be provided, and in rare cases a constructor to provide a 349 // will need to be provided, and in rare cases a constructor to provide a
350 // default value. Specializations for basic D-Bus types, strings, object 350 // default value. Specializations for basic D-Bus types, strings, object
351 // paths and arrays are provided for you. 351 // paths and arrays are provided for you.
352 template <class T> 352 template <class T>
353 class Property : public PropertyBase { 353 class CHROME_DBUS_EXPORT Property : public PropertyBase {
354 public: 354 public:
355 Property() {} 355 Property() {}
356 356
357 // Retrieves the cached value. 357 // Retrieves the cached value.
358 const T& value() const { return value_; } 358 const T& value() const { return value_; }
359 359
360 // Requests an updated value from the remote object incurring a 360 // Requests an updated value from the remote object incurring a
361 // round-trip. |callback| will be called when the new value is available. 361 // round-trip. |callback| will be called when the new value is available.
362 // This may not be implemented by some interfaces. 362 // This may not be implemented by some interfaces.
363 virtual void Get(dbus::PropertySet::GetCallback callback) { 363 virtual void Get(dbus::PropertySet::GetCallback callback) {
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
402 // Current cached value of the property. 402 // Current cached value of the property.
403 T value_; 403 T value_;
404 404
405 // Replacement value of the property. 405 // Replacement value of the property.
406 T set_value_; 406 T set_value_;
407 }; 407 };
408 408
409 template <> Property<uint8>::Property(); 409 template <> Property<uint8>::Property();
410 template <> bool Property<uint8>::PopValueFromReader(MessageReader* reader); 410 template <> bool Property<uint8>::PopValueFromReader(MessageReader* reader);
411 template <> void Property<uint8>::AppendSetValueToWriter(MessageWriter* writer); 411 template <> void Property<uint8>::AppendSetValueToWriter(MessageWriter* writer);
412 template class CHROME_DBUS_EXPORT Property<uint8>;
413 412
414 template <> Property<bool>::Property(); 413 template <> Property<bool>::Property();
415 template <> bool Property<bool>::PopValueFromReader(MessageReader* reader); 414 template <> bool Property<bool>::PopValueFromReader(MessageReader* reader);
416 template <> void Property<bool>::AppendSetValueToWriter(MessageWriter* writer); 415 template <> void Property<bool>::AppendSetValueToWriter(MessageWriter* writer);
417 template class CHROME_DBUS_EXPORT Property<bool>;
418 416
419 template <> Property<int16>::Property(); 417 template <> Property<int16>::Property();
420 template <> bool Property<int16>::PopValueFromReader(MessageReader* reader); 418 template <> bool Property<int16>::PopValueFromReader(MessageReader* reader);
421 template <> void Property<int16>::AppendSetValueToWriter(MessageWriter* writer); 419 template <> void Property<int16>::AppendSetValueToWriter(MessageWriter* writer);
422 template class CHROME_DBUS_EXPORT Property<int16>;
423 420
424 template <> Property<uint16>::Property(); 421 template <> Property<uint16>::Property();
425 template <> bool Property<uint16>::PopValueFromReader(MessageReader* reader); 422 template <> bool Property<uint16>::PopValueFromReader(MessageReader* reader);
426 template <> void Property<uint16>::AppendSetValueToWriter( 423 template <> void Property<uint16>::AppendSetValueToWriter(
427 MessageWriter* writer); 424 MessageWriter* writer);
428 template class CHROME_DBUS_EXPORT Property<uint16>;
429 425
430 template <> Property<int32>::Property(); 426 template <> Property<int32>::Property();
431 template <> bool Property<int32>::PopValueFromReader(MessageReader* reader); 427 template <> bool Property<int32>::PopValueFromReader(MessageReader* reader);
432 template <> void Property<int32>::AppendSetValueToWriter(MessageWriter* writer); 428 template <> void Property<int32>::AppendSetValueToWriter(MessageWriter* writer);
433 template class CHROME_DBUS_EXPORT Property<int32>;
434 429
435 template <> Property<uint32>::Property(); 430 template <> Property<uint32>::Property();
436 template <> bool Property<uint32>::PopValueFromReader(MessageReader* reader); 431 template <> bool Property<uint32>::PopValueFromReader(MessageReader* reader);
437 template <> void Property<uint32>::AppendSetValueToWriter( 432 template <> void Property<uint32>::AppendSetValueToWriter(
438 MessageWriter* writer); 433 MessageWriter* writer);
439 template class CHROME_DBUS_EXPORT Property<uint32>;
440 434
441 template <> Property<int64>::Property(); 435 template <> Property<int64>::Property();
442 template <> bool Property<int64>::PopValueFromReader(MessageReader* reader); 436 template <> bool Property<int64>::PopValueFromReader(MessageReader* reader);
443 template <> void Property<int64>::AppendSetValueToWriter(MessageWriter* writer); 437 template <> void Property<int64>::AppendSetValueToWriter(MessageWriter* writer);
444 template class CHROME_DBUS_EXPORT Property<int64>;
445 438
446 template <> Property<uint64>::Property(); 439 template <> Property<uint64>::Property();
447 template <> bool Property<uint64>::PopValueFromReader(MessageReader* reader); 440 template <> bool Property<uint64>::PopValueFromReader(MessageReader* reader);
448 template <> void Property<uint64>::AppendSetValueToWriter( 441 template <> void Property<uint64>::AppendSetValueToWriter(
449 MessageWriter* writer); 442 MessageWriter* writer);
450 template class CHROME_DBUS_EXPORT Property<uint64>;
451 443
452 template <> Property<double>::Property(); 444 template <> Property<double>::Property();
453 template <> bool Property<double>::PopValueFromReader(MessageReader* reader); 445 template <> bool Property<double>::PopValueFromReader(MessageReader* reader);
454 template <> void Property<double>::AppendSetValueToWriter( 446 template <> void Property<double>::AppendSetValueToWriter(
455 MessageWriter* writer); 447 MessageWriter* writer);
456 template class CHROME_DBUS_EXPORT Property<double>;
457 448
458 template <> bool Property<std::string>::PopValueFromReader( 449 template <> bool Property<std::string>::PopValueFromReader(
459 MessageReader* reader); 450 MessageReader* reader);
460 template <> void Property<std::string>::AppendSetValueToWriter( 451 template <> void Property<std::string>::AppendSetValueToWriter(
461 MessageWriter* writer); 452 MessageWriter* writer);
462 template class CHROME_DBUS_EXPORT Property<std::string>;
463 453
464 template <> bool Property<ObjectPath>::PopValueFromReader( 454 template <> bool Property<ObjectPath>::PopValueFromReader(
465 MessageReader* reader); 455 MessageReader* reader);
466 template <> void Property<ObjectPath>::AppendSetValueToWriter( 456 template <> void Property<ObjectPath>::AppendSetValueToWriter(
467 MessageWriter* writer); 457 MessageWriter* writer);
468 template class CHROME_DBUS_EXPORT Property<ObjectPath>;
469 458
470 template <> bool Property<std::vector<std::string> >::PopValueFromReader( 459 template <> bool Property<std::vector<std::string> >::PopValueFromReader(
471 MessageReader* reader); 460 MessageReader* reader);
472 template <> void Property<std::vector<std::string> >::AppendSetValueToWriter( 461 template <> void Property<std::vector<std::string> >::AppendSetValueToWriter(
473 MessageWriter* writer); 462 MessageWriter* writer);
474 template class CHROME_DBUS_EXPORT Property<std::vector<std::string> >;
475 463
476 template <> bool Property<std::vector<ObjectPath> >::PopValueFromReader( 464 template <> bool Property<std::vector<ObjectPath> >::PopValueFromReader(
477 MessageReader* reader); 465 MessageReader* reader);
478 template <> void Property<std::vector<ObjectPath> >::AppendSetValueToWriter( 466 template <> void Property<std::vector<ObjectPath> >::AppendSetValueToWriter(
479 MessageWriter* writer); 467 MessageWriter* writer);
480 template class CHROME_DBUS_EXPORT Property<std::vector<ObjectPath> >;
481 468
482 template <> bool Property<std::vector<uint8> >::PopValueFromReader( 469 template <> bool Property<std::vector<uint8> >::PopValueFromReader(
483 MessageReader* reader); 470 MessageReader* reader);
484 template <> void Property<std::vector<uint8> >::AppendSetValueToWriter( 471 template <> void Property<std::vector<uint8> >::AppendSetValueToWriter(
485 MessageWriter* writer); 472 MessageWriter* writer);
486 template class CHROME_DBUS_EXPORT Property<std::vector<uint8> >;
487 473
488 } // namespace dbus 474 } // namespace dbus
489 475
490 #endif // DBUS_PROPERTY_H_ 476 #endif // DBUS_PROPERTY_H_
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698