.. index:: pair: class; NRPSpinnakerProxy
.. _doxid-class_n_r_p_spinnaker_proxy:

class NRPSpinnakerProxy
=======================

.. toctree::
	:hidden:

Overview
~~~~~~~~




.. ref-code-block:: cpp
	:class: doxyrest-overview-code-block

	#include <spinnaker_proxy.h>
	
	class NRPSpinnakerProxy:
	    private SpikeReceiveCallbackInterface,
	    private SpikesStartCallbackInterface,
	    private PayloadReceiveCallbackInterface {
	public:
		// construction
	
		:target:`NRPSpinnakerProxy<doxid-class_n_r_p_spinnaker_proxy_1a0a20e7474f343ce5f370d2a6d7bd5f84>`(const NRPSpinnakerProxy&);
		:target:`NRPSpinnakerProxy<doxid-class_n_r_p_spinnaker_proxy_1a87e62ca3c5bb7ed13ed510e92b1dee8d>`(NRPSpinnakerProxy&&);

		// methods
	
		NRPSpinnakerProxy& :target:`operator =<doxid-class_n_r_p_spinnaker_proxy_1a2ebdff85a1c1ff7687ce1716c84ad10e>` (const NRPSpinnakerProxy&);
		NRPSpinnakerProxy& :target:`operator =<doxid-class_n_r_p_spinnaker_proxy_1af1a92960462a748a4c18d52f95c14ecf>` (NRPSpinnakerProxy&&);
		void :target:`startSpinnaker<doxid-class_n_r_p_spinnaker_proxy_1a91ae90e2c2a07bfdc88e113b21e94d81>`();
		void :target:`spikes_start<doxid-class_n_r_p_spinnaker_proxy_1adfed31f8001f6f62ca5153bc2ce25a8e>`(char* label, SpynnakerLiveSpikesConnection* connection);
		void :target:`runSpinnaker<doxid-class_n_r_p_spinnaker_proxy_1a32ad91163b6c25469e0d64cfd41940a2>`();
		void :target:`stopSpinnaker<doxid-class_n_r_p_spinnaker_proxy_1a9f46bc37fa7b1d1d522d601a13a0c768>`();
		void :target:`addSender<doxid-class_n_r_p_spinnaker_proxy_1a4656f85a94acfa0cdd7eb3c420908a28>`(std::string& label);
	
		void :target:`addReceiver<doxid-class_n_r_p_spinnaker_proxy_1ade7df3e39976fc9727e7495690a0616c>`(
			std::string& label,
			:ref:`SpiNNakerJsonReceiveCallbackInterface<doxid-class_spi_n_naker_json_receive_callback_interface>`* callback
		);
	
		void :target:`send<doxid-class_n_r_p_spinnaker_proxy_1a310e7699cd92339f8e47b983b7ddc33f>`(std::string& label, const :ref:`nlohmann::json<doxid-engine__json__server_8cpp_1ab701e3ac61a85b337ec5c1abaad6742d>`* data);
		void :target:`receive_spikes<doxid-class_n_r_p_spinnaker_proxy_1a4ec585f8e5e51b27f2cf674948ff583f>`(char* label, int time, int n_spikes, int* spikes);
		void :target:`receive_payloads<doxid-class_n_r_p_spinnaker_proxy_1adaa74663f6246f2b32eedeba33740d44>`(char* label, int n_payloads, payload_details* payloads);
		static NRPSpinnakerProxy& :ref:`getInstance<doxid-class_n_r_p_spinnaker_proxy_1a282a490d9a152d40a2bde3bda8dd82c7>`();
		static NRPSpinnakerProxy& :ref:`resetInstance<doxid-class_n_r_p_spinnaker_proxy_1a5535be9263e94197abc9cb963f84db5c>`();
	};
.. _details-class_n_r_p_spinnaker_proxy:

Detailed Documentation
~~~~~~~~~~~~~~~~~~~~~~



Methods
-------

.. index:: pair: function; getInstance
.. _doxid-class_n_r_p_spinnaker_proxy_1a282a490d9a152d40a2bde3bda8dd82c7:

.. ref-code-block:: cpp
	:class: doxyrest-title-code-block

	static NRPSpinnakerProxy& getInstance()

Get singleton instance of :ref:`NRPSpinnakerProxy <doxid-class_n_r_p_spinnaker_proxy>`.

.. index:: pair: function; resetInstance
.. _doxid-class_n_r_p_spinnaker_proxy_1a5535be9263e94197abc9cb963f84db5c:

.. ref-code-block:: cpp
	:class: doxyrest-title-code-block

	static NRPSpinnakerProxy& resetInstance()

Reset singleton instance.