This repository was forked from https://github.com/cinemast/libjson-rpc-cpp, and is inspired by https://github.com/minium/bitcoin-api-cpp.
As a result, THE README BELOW is a direct copy of that from cinemast/libjson-rpc-cpp.
Please see INSTRUCTIONS.md for information on compiling this library & the BlurAPI stub server.
I am currently working on a new C++17 implementation -> json-rpc-cxx.
This framework provides cross platform JSON-RPC (remote procedure call) support for C++.It is fully JSON-RPC 2.0 & 1.0 compatible.
5 good reasons for using libjson-rpc-cpp in your next RPC project
Other good reasons to use libjson-rpc-cpp
make test
.Debian (stretch) and Ubuntu (15.10 or later)
sudo apt-get install libjsonrpccpp-dev libjsonrpccpp-tools
Fedora
sudo dnf install libjson-rpc-cpp-devel libjson-rpc-cpp-tools
Arch Linux
For Arch Linux there is a PKGBUILD provided in the AUR.
sudo aura -A libjson-rpc-cpp
Gentoo Linux
sudo emerge dev-cpp/libjson-rpc-cpp
Mac OS X
For OS X a Brew package is available:
brew install libjson-rpc-cpp
Windows
There is a ready to use compiled package here.Just download execute the installer EXE.
UNIX
For Debian and Arch GNU/Linux based systems, all dependencies are available via the package manager.For OS X all dependencies are available in Brew
git clone git://github.com/cinemast/libjson-rpc-cpp.git
mkdir -p libjson-rpc-cpp/build
cd libjson-rpc-cpp/build
cmake .. && make
sudo make install
sudo ldconfig #only required for linux
That's it!
If you are not happy with it, simply uninstall it from your system using (inside the build the directory):
sudo make uninstall
Build options:
Default configuration should be fine for most systems, but here are available compilation flags:
-DCOMPILE_TESTS=NO
disables unit test suite.-DCOMPILE_STUBGEN=NO
disables building the stubgenerator.-DCOMPILE_EXAMPLES=NO
disables examples.-DHTTP_SERVER=NO
disable the libmicrohttpd webserver.-DHTTP_CLIENT=NO
disable the curl client.-DREDIS_SERVER=NO
disable the redis server connector.-DREDIS_CLIENT=NO
disable the redis client connector.-DUNIX_DOMAIN_SOCKET_SERVER=YES
enable the unix domain socket server connector.-DUNIX_DOMAIN_SOCKET_CLIENT=YES
enable the unix domain socket client connector.-DFILE_DESCRIPTOR_SERVER=NO
disable the file descriptor server connector.-DFILE_DESCRIPTOR_CLIENT=NO
disable the file descriptor client connector.-DTCP_SOCKET_SERVER=NO
disable the tcp socket server connector.-DTCP_SOCKET_CLIENT=NO
disable the tcp socket client connector.This example will show the most simple way to create a rpc server and client. If you only need the server, ignore step 4. If you only need the client, ignore step 3. You can find all resources of this sample in the src/examples
directory of this repository.
[
{
"name": "sayHello",
"params": {
"name": "Peter"
},
"returns" : "Hello Peter"
},
{
"name" : "notifyServer"
}
]
The type of a return value or parameter is defined by the literal assigned to it. The generated stubs will will use the "returns" type to validate the response. In this example you can see how to specify methods and notifications.
Call jsonrpcstub:
jsonrpcstub spec.json --cpp-server=AbstractStubServer --cpp-client=StubClient
mkdir -p gen
mv abstractstubserver.h gen
mv stubclient.ch gen
This generates an AbstractStubServer
and a StubClient
class and moves them to the gen
folder.
Extend the abstract server stub and implement all pure virtual (abstract) methods defined in spec.json
.
See src/examples/stubserver.cpp
In the main function the concrete server is instantiated and started. That is all for the server. Any JSON-RPC 2.0 compliant client can now connect to your server.
Compile the server with:
g++ stubserver.cpp -ljsoncpp -lmicrohttpd -ljsonrpccpp-common -ljsonrpccpp-server -o sampleserver
See src/examples/stubclient.cpp
Compile the client with:
g++ stubclient.cpp -ljsoncpp -lcurl -ljsonrpccpp-common -ljsonrpccpp-client -o sampleclient
Please take a look at CONTRIBUTING.md
Changelogs can be found here.
We do our best to keep the API/ABI stable, to prevent problems when updating this framework.A compatiblity report can be found here.
This framework is licensed under MIT.All of this libraries dependencies are licensed under MIT compatible licenses.
If you use this library and find it useful, I would be very pleased if you let me know about it.
tutorial_code 目录结构 └─tutorial_code ├─calib3d │ ├─camera_calibration │ │ camera_calibration.cpp │ │ in_VID5.xml │ │ out_camera_data.yml │ │ VID5.xml
opencv之GaussianBlur()函数 2018年04月17日 16:42:50 duwangthefirst 阅读数:1507 标签: opencvGaussianFilter高斯滤波图像去噪图像平滑 更多 个人分类: OpenCV 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/duwangthefirst/article/detail
概述 medianBlur()函数使用中值滤波器来平滑图像。 API说明 C++ API: void cv::medianBlur ( InputArray src, (原始图像) OutputArray dst, (目标图像) int ksize (孔径线性尺寸:必须是大于1的奇数,例如3、5、7…) ) python API: dst = cv.medianBlur( src, ksize[,
一、概述 各种图像质量分析(IQA)算法的实现: 均方误差 (MSE)、峰值信噪比 (PSNR)、结构相似性 (SSIM)、梯度幅度相似度偏差 (GMSD)、无参考图像空间质量评估 (BRISQUE) 一般来说,GMSD 算法应该产生最好的全参考 IQA 结果。 所有算法都可以通过更简单的静态compute方法访问,或者通过静态cre
安装CUDA10.1和tensorflow2.2 CUDA10.1就不说了,主要是我们服务器本来就有-> 0.0 为什么是2.2呢,个人喜好。。 下载tensorflow源码 git clone https://github.com/tensorflow/tensorflow.git cd tensorflow/ git checkout r2.2 ./configure bazel build
一般来说,模糊意味着变得不清楚,在将模糊效果应用于节点时,它变得不清楚。 Box Blur是JavaFX提供的一种模糊效果。 在此效果中,为了将模糊应用于节点,使用简单的盒式过滤器。 包javafx.scene.effect名为BoxBlur的类表示BoxBlur效果,该类包含四个属性,它们是 - height - 此属性是double类型,表示效果的垂直大小。 width - 此属性是doubl
UIView-Blur 可通过仅仅两行代码对 UIView 进行模糊化处理。
This repository is under contruction There are files in here from many different projects, including but not limited to BLUR, BTC, KMD, and XMR. Please retain proper licensing if you reuse any files,
MBProgressHUD Blur 给广泛使用的HUD类库MBProgressHUD添加上模糊背景,类似iOS7的HUD效果。
给弹出视图遮住的背景视图加上模糊效果。一般来说,弹出视图所遮住的背景主视图会加上阴暗效果,从而突出显示弹出视图。这份代码能够为背景视图加上模糊的效果。 [Code4App.com]
Lens Blur 是通过使用 Nokia Imaging SDK InteractiveForegroundSegmenter 和 LensBlurEffect 来模糊图像指定区域的应用程序。