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;
244 typedef PublicationScheduler_ClockData ClockData;
310 int cancelDefaultSchedule();
441 const char *category)
const;
466 std::vector<std::pair<
const Category *,
468#ifdef BSLS_LIBRARYFEATURES_HAS_CPP17_PMR
470 std::pmr::vector<std::pair<
const Category *,
499 bsl::ostream&
print(bsl::ostream& stream,
501 int spacesPerLevel = 4)
const;
521 const char *category,
545 const char *category)
const
Definition balm_category.h:152
const Category * getCategory(const char *category)
Definition balm_metricsmanager.h:490
MetricRegistry & metricRegistry()
Definition balm_metricsmanager.h:1038
Definition balm_publicationscheduler.h:235
bool getDefaultSchedule(bsls::TimeInterval *result) const
friend class PublicationScheduler_Proctor
Definition balm_publicationscheduler.h:280
PublicationScheduler(MetricsManager *metricsManager, bdlmt::TimerEventScheduler *eventScheduler, bslma::Allocator *basicAllocator=0)
bool findCategorySchedule(bsls::TimeInterval *result, const char *category) const
Definition balm_publicationscheduler.h:543
void scheduleCategory(const Category *category, const bsls::TimeInterval &interval)
MetricsManager * manager()
Definition balm_publicationscheduler.h:514
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:529
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:520
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:445
Definition bslstl_map.h:653
BloombergLP::bslstl::TreeIterator< value_type, Node, difference_type > iterator
Definition bslstl_map.h:756
Definition bslstl_pair.h:1280
Definition bslstl_sharedptr.h:1838
Definition bslstl_vector.h:1120
Definition bslma_allocator.h:545
Definition bslmt_mutex.h:317
Definition bsls_timeinterval.h:307
#define BSLS_IDENT(str)
BSLS_IDENT() - insert string into .comment binary segment (if supported)
Definition bsls_ident.h:238
Definition balm_bdlmmetricsadapter.h:142
Definition bslma_usesbslmaallocator.h:344