LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
api_dispatch_mam.cpp File Reference
#include <cmath>
#include <cstdint>
#include <initializer_list>
#include <random>
#include <string>
#include <utility>
#include <vector>
#include "api_dispatch_detail.h"
#include "line/api/mam/amap2_adjust_gamma.h"
#include "line/api/mam/amap2_assemble.h"
#include "line/api/mam/amap2_fit_gamma.h"
#include "line/api/mam/amap2_fitall_gamma.h"
#include "line/api/mam/aph2_adjust.h"
#include "line/api/mam/aph2_assemble.h"
#include "line/api/mam/aph2_fit.h"
#include "line/api/mam/aph2_fitall.h"
#include "line/api/mam/ldqbd.h"
#include "line/api/mam/ldqbd_censor.h"
#include "line/api/mam/ldqbd_mphc.h"
#include "line/api/mam/m3pp2m_fitc.h"
#include "line/api/mam/m3pp2m_fitc_approx.h"
#include "line/api/mam/m3pp2m_fitc_trace.h"
#include "line/api/mam/m3pp_superpos_fitc.h"
#include "line/api/mam/map2_fit.h"
#include "line/api/mam/map2_fit_idc.h"
#include "line/api/mam/map_acfc.h"
#include "line/api/mam/map_cdf.h"
#include "line/api/mam/map_count_mean.h"
#include "line/api/mam/map_count_moment.h"
#include "line/api/mam/map_count_var.h"
#include "line/api/mam/map_mark.h"
#include "line/api/mam/map_moment.h"
#include "line/api/mam/map_pdf.h"
#include "line/api/mam/map_rand.h"
#include "line/api/mam/map_transform.h"
#include "line/api/mam/map_varcount.h"
#include "line/api/mam/mfq_fluflu_sojourn.h"
#include "line/api/mam/mfq_ld_distr.h"
#include "line/api/mam/mfq_ld_mean.h"
#include "line/api/mam/mfq_ld_solve.h"
#include "line/api/mam/mfq_multiregime.h"
#include "line/api/mam/mfq_prio_queue.h"
#include "line/api/mam/mfq_sojourn.h"
#include "line/api/mam/mmap_compress.h"
#include "line/api/mam/mmap_count_var.h"
#include "line/api/mam/mmap_lambda.h"
#include "line/api/mam/mmpp2_fit.h"
#include "line/api/mam/mmpp2_fit1.h"
#include "line/api/mam/mmpp2_fit2.h"
#include "line/api/mam/mmpp2_fit3.h"
#include "line/api/mam/mmpp2_fit4.h"
#include "line/api/mam/mmpp2_fitc.h"
#include "line/api/mam/mmpp2_fitc_approx.h"
#include "line/api/mam/qbd_bmapbmap1.h"
#include "line/api/mam/qbd_mapmap1.h"
#include "line/api/mam/qbd_r.h"
#include "line/api/mam/qbd_rap.h"
#include "line/api/mam/qbd_setupdelayoff.h"
#include "line/api/mam/qbd_setupdelayoff_mmk.h"
#include "line/api/mc/ctmc_passage.h"
#include "line/api/me/me_cqn.h"
#include "line/api/me/me_gegec_mql.h"
#include "line/api/me/me_gegecn.h"
#include "line/api/me/me_gegecn_pb.h"
#include "line/api/me/me_mqn.h"
#include "line/api/me/me_oqn.h"
#include "line/api/me/me_oqn_blk.h"

Go to the source code of this file.

Namespaces

namespace  line
 Conservation laws of a layered queueing network, enumerated from its structure.
namespace  line::reg

Macros

#define LINE_MAM_MAP_UNARY(OpName, fn, outkey, enc)
#define LINE_MAM_MAP_POINTS(OpName, fn, mapkey, ptkey, outkey)

Functions

void line::reg::register_api_mam (DispatchTable &t)
void line::reg::register_library_only_mam (LibraryOnlyTable &t)

Macro Definition Documentation

◆ LINE_MAM_MAP_POINTS

#define LINE_MAM_MAP_POINTS ( OpName,
fn,
mapkey,
ptkey,
outkey )
Value:
struct OpName { \
template <class T> \
static Json run(Args& a) { \
const mam::Map<T> m = read_map<T>(a, mapkey); \
const std::vector<T> pts = a.vector<T>(ptkey); \
a.done(); \
Json o; \
o[outkey] = encode_vector(mam::fn(m, pts)); \
return o; \
} \
};

Definition at line 736 of file api_dispatch_mam.cpp.

◆ LINE_MAM_MAP_UNARY

#define LINE_MAM_MAP_UNARY ( OpName,
fn,
outkey,
enc )
Value:
struct OpName { \
template <class T> \
static Json run(Args& a) { \
const mam::Map<T> m = read_map<T>(a, "MAP"); \
a.done(); \
Json o; \
o[outkey] = enc(mam::fn(m)); \
return o; \
} \
};

Definition at line 496 of file api_dispatch_mam.cpp.