The Assimilation Project  based on Assimilation version
nanoprobe.h File Reference

include file defining functions to be called by a main to instantiate a nanoprobe. More...

#include <projectcommon.h>
#include <hblistener.h>
#include <netio.h>
#include <netgsource.h>
#include <configcontext.h>
Include dependency graph for nanoprobe.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  _NanoHbStats


#define CMA_KEY_PREFIX   "#CMA#"
#define CMA_IDENTITY_NAME   "**CMA**"
#define MARTIAN_TIMEOUT   10


typedef struct _NanoHbStats NanoHbStats


WINEXPORT void nano_start_full (const char *initdiscoverpath, guint discover_interval, NetGSource *io, ConfigContext *config, gboolean(*)(const FrameSet *, NetAddr *))
 Here is how the startup process works: More...
WINEXPORT void nano_shutdown (gboolean statreport)
 Shut down the things started up by nano_start_full() - mainly free storage to make valgrind happy... More...
WINEXPORT PacketDecodernano_packet_decoder (void)
 Return our nanoprobe packet decoder map. More...
WINEXPORT gboolean nano_initiate_shutdown (void)
 Initiate shutdown - return TRUE if we have shut down immediately... More...
WINEXPORT void nanoprobe_report_upstream (guint16 reporttype, NetAddr *who, const char *sysname, guint64 howlate)
 Construct a frameset reporting something - and send it upstream. More...
WINEXPORT void nanoprobe_initialize_keys (void)


WINEXPORT NanoHbStats nano_hbstats
gboolean nano_connected
const char * procname
 process name More...
WINEXPORT int errcount
 error count More...
WINEXPORT GMainLoop * mainloop
 gtest01.c - miscellaneous glib mainloop-based tests. More...
gboolean nano_shutting_down
GRand * nano_random
void(* nanoprobe_deadtime_agent )(HbListener *)
void(* nanoprobe_heartbeat_agent )(HbListener *)
void(* nanoprobe_warntime_agent )(HbListener *, guint64 howlate)
void(* nanoprobe_comealive_agent )(HbListener *, guint64 howlate)
HbListener *(* nanoprobe_hblistener_new )(NetAddr *, ConfigContext *)

Detailed Description

include file defining functions to be called by a main to instantiate a nanoprobe.

This implements the code necessary to start (and stop) a nanoprobe.

This file is part of the Assimilation Project.

Copyright © 2011, 2012 - Alan Robertson
The Assimilation software is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

The Assimilation software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with the Assimilation Project software. If not, see

Definition in file nanoprobe.h.

Macro Definition Documentation

#define CMA_IDENTITY_NAME   "**CMA**"
#define CMA_KEY_PREFIX   "#CMA#"

Definition at line 41 of file nanoprobe.h.

Referenced by nanoprobe_initialize_keys().

#define MARTIAN_TIMEOUT   10

Definition at line 70 of file nanoprobe.h.

Referenced by _real_martian_agent().

Typedef Documentation

typedef struct _NanoHbStats NanoHbStats

Definition at line 31 of file nanoprobe.h.

Variable Documentation

void(* nanoprobe_comealive_agent) (HbListener *, guint64 howlate)

Definition at line 66 of file nanoprobe.h.

void(* nanoprobe_deadtime_agent) (HbListener *)

Definition at line 60 of file nanoprobe.h.

void(* nanoprobe_heartbeat_agent) (HbListener *)

Definition at line 62 of file nanoprobe.h.

void(* nanoprobe_warntime_agent) (HbListener *, guint64 howlate)

Definition at line 64 of file nanoprobe.h.