# API and build change and fix summaries. Doc correctsions
# and/or changes are not mentioned here; see the commit messages.
+2020 June 18; version 4.1.0
+ Bump version minor to move away from 4.0.* which will bump for any
+ patches applied back to bronze.
+
+ Add magic C++ goo to symtab header file allowing C++ xAPPs to use
+ the symbol table directly.
+
2020 May 06; version 4.0.5
Fix the bug in SI95 receive message management semaphore count
issue. (RIC-355)
cmake_minimum_required( VERSION 3.5 )
set( major_version "4" ) # should be automatically populated from git tag later, but until CI process sets a tag we use this
-set( minor_version "0" )
-set( patch_level "5" )
+set( minor_version "1" )
+set( patch_level "0" )
set( install_root "${CMAKE_INSTALL_PREFIX}" )
set( install_inc "include/rmr" )
#ifndef _rmr_symtab_h
#define _rmr_symtab_h
-#include <netdb.h>
-
-/* --------- symtab ---------------- */
-#define UT_FL_NOCOPY 0x00 /* use user pointer */
-#define UT_FL_COPY 0x01 /* make a copy of the string data */
-#define UT_FL_FREE 0x02 /* free val when deleting */
+#ifdef __cplusplus
+extern "C" {
+#endif
-/* ------------ symtab ----------------------------- */
+// ------------ prototypes -----------------------------
extern void rmr_sym_clear( void *s );
extern void rmr_sym_dump( void *s );
extern void *rmr_sym_alloc( int size );
-extern void rmr_sym_del( void *s, const char *name, unsigned int class );
+extern void rmr_sym_del( void *s, const char *name, unsigned int st_class );
extern void rmr_sym_ndel( void *vtable, uint64_t key );
extern void rmr_sym_free( void *vtable );
-extern void *rmr_sym_get( void *s, const char *name, unsigned int class );
-extern int rmr_sym_put( void *s, const char *name, unsigned int class, void *val );
+extern void *rmr_sym_get( void *s, const char *name, unsigned int st_class );
+extern int rmr_sym_put( void *s, const char *name, unsigned int st_class, void *val );
extern int rmr_sym_map( void *s, uint64_t key, void *val );
extern void *rmr_sym_pull( void *vtable, uint64_t key );
extern void rmr_sym_stats( void *s, int level );
-extern void rmr_sym_foreach_class( void *vst, unsigned int class, void (* user_fun)( void*, void*, const char*, void*, void* ), void *user_data );
+extern void rmr_sym_foreach_class( void *vst, unsigned int st_class, void (* user_fun)( void*, void*, const char*, void*, void* ), void *user_data );
+
+
+#ifdef __cplusplus
+}
+#endif
#endif