8#ifndef INCLUDED_BALM_PUBLICATIONSCHEDULER
9#define INCLUDED_BALM_PUBLICATIONSCHEDULER
177#include <balscm_version.h>
191#include <bsl_iosfwd.h>
193#include <bsl_memory.h>
195#include <bsl_utility.h>
196#include <bsl_vector.h>
209class PublicationScheduler_ClockData;
210class PublicationScheduler_Proctor;
243 typedef PublicationScheduler_ClockData ClockData;
306 int cancelDefaultSchedule();
429 const char *category)
const;
453 std::vector<std::pair<
const Category *,
455#ifdef BSLS_LIBRARYFEATURES_HAS_CPP17_PMR
457 std::pmr::vector<std::pair<
const Category *,
485 bsl::ostream&
print(bsl::ostream& stream,
487 int spacesPerLevel = 4)
const;
507 const char *category,
531 const char *category)
const
Definition balm_category.h:151
const Category * getCategory(const char *category)
Definition balm_metricsmanager.h:490
MetricRegistry & metricRegistry()
Definition balm_metricsmanager.h:1019
Definition balm_publicationscheduler.h:234
bool getDefaultSchedule(bsls::TimeInterval *result) const
friend class PublicationScheduler_Proctor
Definition balm_publicationscheduler.h:279
PublicationScheduler(MetricsManager *metricsManager, bdlmt::TimerEventScheduler *eventScheduler, bslma::Allocator *basicAllocator=0)
bool findCategorySchedule(bsls::TimeInterval *result, const char *category) const
Definition balm_publicationscheduler.h:529
void scheduleCategory(const Category *category, const bsls::TimeInterval &interval)
MetricsManager * manager()
Definition balm_publicationscheduler.h:500
int cancelCategorySchedule(const Category *category)
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
int cancelCategorySchedule(const char *category)
Definition balm_publicationscheduler.h:515
int clearDefaultSchedule()
int getCategorySchedule(std::vector< std::pair< const Category *, bsls::TimeInterval > > *result) const
BSLMF_NESTED_TRAIT_DECLARATION(PublicationScheduler, bslma::UsesBslmaAllocator)
void scheduleCategory(const char *category, const bsls::TimeInterval &interval)
Definition balm_publicationscheduler.h:506
bool findCategorySchedule(bsls::TimeInterval *result, const Category *category) const
void setDefaultSchedule(const bsls::TimeInterval &interval)
int getCategorySchedule(bsl::vector< bsl::pair< const Category *, bsls::TimeInterval > > *result) const
Definition bdlmt_timereventscheduler.h:434
Definition bslstl_map.h:619
BloombergLP::bslstl::TreeIterator< value_type, Node, difference_type > iterator
Definition bslstl_map.h:722
Definition bslstl_pair.h:1210
Definition bslstl_sharedptr.h:1830
Definition bslstl_vector.h:1025
Definition bslma_allocator.h:457
Definition bslmt_mutex.h:315
Definition bsls_timeinterval.h:301
#define BSLS_IDENT(str)
Definition bsls_ident.h:195
Definition balm_bdlmmetricsadapter.h:141
Definition bslma_usesbslmaallocator.h:343