GNU Radio Manual and C++ API Reference  3.10.9.1
The Free & Open Software Radio Ecosystem
gr Namespace Reference

GNU Radio logging wrapper. More...

Namespaces

 analog
 
 audio
 
 blocks
 
 channels
 
 digital
 
 dtv
 
 fec
 
 fft
 
 filter
 
 iio
 
 messages
 
 
 msgport_names
 
 network
 
 pdu
 
 qtgui
 
 soapy
 
 thread
 
 trellis
 
 types
 
 uhd
 
 video_sdl
 
 vocoder
 
 wavelet
 
 zeromq
 

Classes

class  msg_queue_comparator
 
class  basic_block
 The abstract base class for all signal processing blocks. More...
 
class  block
 The abstract base class for all 'terminal' processing blocks. More...
 
class  block_detail
 Implementation details to support the signal processing abstraction. More...
 
class  block_registry
 
class  buffer
 Single writer, multiple reader fifo. More...
 
class  buffer_double_mapped
 Single writer, multiple reader fifo. More...
 
class  buffer_reader
 How we keep track of the readers of a gr::buffer. More...
 
class  buffer_reader_sm
 
class  buffer_single_mapped
 A single mapped buffer where wrapping conditions are handled explicitly via input/output_blocked_callback functions called from block_executor. More...
 
class  buffer_type_base
 Base class for describing a buffer's type. More...
 
struct  buftype
 Template used to create buffer types. Note that the factory_class parameter must contain a static function make_buffer() that matches the signature below and will be used to create instances of the corresponding buffer type. More...
 
class  custom_lock_if
 
class  custom_lock
 
class  dictionary_logger_backend
 In-Memory Logger. More...
 
class  endpoint
 Class representing a specific input or output graph endpoint. More...
 
class  msg_endpoint
 
class  edge
 Class representing a connection between to graph endpoints. More...
 
class  msg_edge
 Class representing a msg connection between to graph msg endpoints. More...
 
class  flowgraph
 Class representing a directed, acyclic graph of basic blocks. More...
 
class  fxpt
 fixed point sine and cosine and friends. More...
 
class  fxpt_nco
 Numerically Controlled Oscillator (NCO) More...
 
class  fxpt_vco
 Voltage Controlled Oscillator (VCO) More...
 
class  hier_block2
 Hierarchical container class for gr::block's and gr::hier_block2's. More...
 
class  host_buffer
 
class  io_signature
 i/o signature for input and output ports. More...
 
class  logging
 
class  logger
 GR_LOG macros. More...
 
class  message
 Message class. More...
 
class  msg_accepter
 Accepts messages and inserts them into a message queue, then notifies subclass gr::basic_block there is a message pending. More...
 
class  msg_handler
 abstract class of message handlers More...
 
class  msg_queue
 thread-safe message queue More...
 
class  nco
 base class template for Numerically Controlled Oscillator (NCO) More...
 
class  prefs
 Base class for representing user preferences a la windows INI files. More...
 
class  xoroshiro128p_prng
 wrapper for XOROSHIRO128+ PRNG for use in std::distributions Fulfills C++ named requirements for UniformRandomBitGenerator More...
 
class  random
 pseudo random number generator More...
 
class  sync_block
 synchronous 1:1 input to output with history More...
 
class  sync_decimator
 synchronous N:1 input to output with history More...
 
class  sync_interpolator
 synchronous 1:N input to output with history More...
 
class  tagged_stream_block
 Block that operates on PDUs in form of tagged streams. More...
 
struct  tag_t
 
class  top_block
 Top-level hierarchical block representing a flowgraph. More...
 
struct  tpb_detail
 used by thread-per-block scheduler More...
 

Typedefs

typedef std::vector< basic_block_sptr > basic_block_vector_t
 
typedef std::vector< basic_block_sptr >::iterator basic_block_viter_t
 
typedef std::vector< block_sptr > block_vector_t
 
typedef std::vector< block_sptr >::iterator block_viter_t
 
typedef std::function< void *(void *, const void *, std::size_t)> mem_func_t
 
typedef const buffer_type_basebuffer_type
 
typedef std::vector< std::reference_wrapper< const buffer_type_base > > gr_vector_buffer_type
 
typedef std::vector< endpointendpoint_vector_t
 
typedef std::vector< endpoint >::iterator endpoint_viter_t
 
typedef std::vector< edgeedge_vector_t
 
typedef std::vector< edge >::iterator edge_viter_t
 
typedef std::vector< msg_edgemsg_edge_vector_t
 
typedef std::vector< msg_edge >::iterator msg_edge_viter_t
 
typedef signed long long high_res_timer_type
 Typedef for the timer tick count. More...
 
using log_level = spdlog::level::level_enum
 
using logger_ptr = std::shared_ptr< logger >
 

Enumerations

enum class  buffer_mapping_type { double_mapped , single_mapped }
 
enum  endianness_t { GR_MSB_FIRST , GR_LSB_FIRST }
 
enum  rt_status_t { RT_OK = 0 , RT_NOT_IMPLEMENTED , RT_NO_PRIVS , RT_OTHER_ERROR }
 
enum  rt_sched_policy { RT_SCHED_RR = 0 , RT_SCHED_FIFO = 1 }
 
enum class  transfer_type {
  DEFAULT_INVALID , HOST_TO_DEVICE , DEVICE_TO_HOST , HOST_TO_HOST ,
  DEVICE_TO_DEVICE
}
 

Functions

bool operator< (basic_block_sptr lhs, basic_block_sptr rhs)
 
GR_RUNTIME_API long basic_block_ncurrently_allocated ()
 
std::ostream & operator<< (std::ostream &os, basic_block_sptr basic_block)
 
GR_RUNTIME_API std::ostream & operator<< (std::ostream &os, const block *m)
 
GR_RUNTIME_API block_detail_sptr make_block_detail (unsigned int ninputs, unsigned int noutputs)
 
GR_RUNTIME_API long block_detail_ncurrently_allocated ()
 
GR_RUNTIME_API buffer_sptr make_buffer (int nitems, size_t sizeof_item, uint64_t downstream_lcm_nitems, uint32_t downstream_max_out_mult, block_sptr link=block_sptr(), block_sptr buf_owner=block_sptr())
 Allocate a buffer that holds at least nitems of size sizeof_item. More...
 
GR_RUNTIME_API long buffer_ncurrently_allocated ()
 returns # of buffers currently allocated More...
 
GR_RUNTIME_API buffer_reader_sptr buffer_add_reader (buffer_sptr buf, int nzero_preload, block_sptr link=block_sptr(), int delay=0)
 Create a new gr::buffer_reader and attach it to buffer buf. More...
 
GR_RUNTIME_API long buffer_reader_ncurrently_allocated ()
 returns # of buffer_readers currently allocated More...
 
GR_RUNTIME_API const std::string prefix ()
 return SYSCONFDIR. Typically ${CMAKE_INSTALL_PREFIX}/etc or /etc More...
 
GR_RUNTIME_API const std::string sysconfdir ()
 return SYSCONFDIR. Typically ${CMAKE_INSTALL_PREFIX}/etc or /etc More...
 
GR_RUNTIME_API const std::string prefsdir ()
 return preferences file directory. Typically ${SYSCONFDIR}/etc/conf.d More...
 
GR_RUNTIME_API const std::string build_date ()
 return date/time of build, as set when 'cmake' is run More...
 
GR_RUNTIME_API const std::string version ()
 return version string defined by cmake (GrVersion.cmake) More...
 
GR_RUNTIME_API const std::string major_version ()
 return just the major version defined by cmake More...
 
GR_RUNTIME_API const std::string api_version ()
 return just the api version defined by cmake More...
 
GR_RUNTIME_API const std::string minor_version ()
 returnjust the minor version defined by cmake More...
 
GR_RUNTIME_API const std::string c_compiler ()
 return C compiler used to build this version of GNU Radio More...
 
GR_RUNTIME_API const std::string cxx_compiler ()
 return C++ compiler used to build this version of GNU Radio More...
 
GR_RUNTIME_API const std::string compiler_flags ()
 return C and C++ compiler flags used to build this version of GNU Radio More...
 
GR_RUNTIME_API const std::string build_time_enabled_components ()
 return build-time enabled components More...
 
GR_RUNTIME_API const std::string pybind_version ()
 return the pybind11 version used to build this version of GNU Radio More...
 
GR_RUNTIME_API flowgraph_sptr make_flowgraph ()
 
std::ostream & operator<< (std::ostream &os, const endpoint endp)
 
std::ostream & operator<< (std::ostream &os, const edge edge)
 
std::ostream & operator<< (std::ostream &os, const msg_endpoint endp)
 
std::ostream & operator<< (std::ostream &os, const msg_edge edge)
 
std::string dot_graph_fg (flowgraph_sptr fg)
 
GR_RUNTIME_API hier_block2_sptr make_hier_block2 (const std::string &name, gr::io_signature::sptr input_signature, gr::io_signature::sptr output_signature)
 public constructor for hier_block2 More...
 
GR_RUNTIME_API std::string dot_graph (hier_block2_sptr hierblock2)
 Return hierarchical block's flow graph represented in dot language. More...
 
high_res_timer_type high_res_timer_now (void)
 Get the current time in ticks. More...
 
high_res_timer_type high_res_timer_now_perfmon (void)
 Get the current time in ticks - for performance monitoring. More...
 
high_res_timer_type high_res_timer_tps (void)
 Get the number of ticks per second. More...
 
high_res_timer_type high_res_timer_epoch (void)
 Get the tick count at the epoch. More...
 
bool operator== (const io_signature &lhs, const io_signature &rhs)
 
GR_RUNTIME_API bool configure_default_loggers (gr::logger_ptr &l, gr::logger_ptr &d, const std::string &name)
 
static void fast_cc_multiply (gr_complex &out, const gr_complex cc1, const gr_complex cc2)
 
static bool is_power_of_2 (long x)
 
GR_RUNTIME_API float fast_atan2f (float y, float x)
 Fast arc tangent using table lookup and linear interpolation. More...
 
static float fast_atan2f (gr_complex z)
 
static float branchless_clip (float x, float clip)
 
static float clip (float x, float clip)
 
static unsigned int binary_slicer (float x)
 
static unsigned int quad_45deg_slicer (float r, float i)
 
static unsigned int quad_0deg_slicer (float r, float i)
 
static unsigned int quad_45deg_slicer (gr_complex x)
 
static unsigned int quad_0deg_slicer (gr_complex x)
 
static unsigned int branchless_binary_slicer (float x)
 
static unsigned int branchless_quad_0deg_slicer (float r, float i)
 
static unsigned int branchless_quad_0deg_slicer (gr_complex x)
 
static unsigned int branchless_quad_45deg_slicer (float r, float i)
 
static unsigned int branchless_quad_45deg_slicer (gr_complex x)
 
static size_t p2_round_down (size_t x, size_t pow2)
 
static size_t p2_round_up (size_t x, size_t pow2)
 
static size_t p2_modulo (size_t x, size_t pow2)
 
static size_t p2_modulo_neg (size_t x, size_t pow2)
 
GR_RUNTIME_API long message_ncurrently_allocated ()
 
GR_RUNTIME_API rt_status_t enable_realtime_scheduling ()
 If possible, enable high-priority "real time" scheduling. More...
 
void sincos (double x, double *sinx, double *cosx)
 
void sincosf (float x, float *sinx, float *cosx)
 
GR_RUNTIME_API const char * tmp_path ()
 directory to create temporary files More...
 
GR_RUNTIME_API const char * appdata_path ()
 directory to store application data More...
 
GR_RUNTIME_API const char * userconf_path ()
 directory to store user configuration More...
 
GR_RUNTIME_API top_block_sptr make_top_block (const std::string &name, bool catch_exceptions=true)
 
GR_RUNTIME_API std::ostream & operator<< (std::ostream &os, const transfer_type &type)
 

Detailed Description

GNU Radio logging wrapper.

Include this header to use the message passing features.

Typedef Documentation

◆ basic_block_vector_t

typedef std::vector<basic_block_sptr> gr::basic_block_vector_t

◆ basic_block_viter_t

typedef std::vector<basic_block_sptr>::iterator gr::basic_block_viter_t

◆ block_vector_t

typedef std::vector<block_sptr> gr::block_vector_t

◆ block_viter_t

typedef std::vector<block_sptr>::iterator gr::block_viter_t

◆ buffer_type

◆ edge_vector_t

typedef std::vector<edge> gr::edge_vector_t

◆ edge_viter_t

typedef std::vector<edge>::iterator gr::edge_viter_t

◆ endpoint_vector_t

typedef std::vector<endpoint> gr::endpoint_vector_t

◆ endpoint_viter_t

typedef std::vector<endpoint>::iterator gr::endpoint_viter_t

◆ gr_vector_buffer_type

typedef std::vector<std::reference_wrapper<const buffer_type_base> > gr::gr_vector_buffer_type

◆ high_res_timer_type

typedef signed long long gr::high_res_timer_type

Typedef for the timer tick count.

◆ log_level

using gr::log_level = typedef spdlog::level::level_enum

◆ logger_ptr

using gr::logger_ptr = typedef std::shared_ptr<logger>

◆ mem_func_t

typedef std::function<void*(void*, const void*, std::size_t)> gr::mem_func_t

◆ msg_edge_vector_t

typedef std::vector<msg_edge> gr::msg_edge_vector_t

◆ msg_edge_viter_t

typedef std::vector<msg_edge>::iterator gr::msg_edge_viter_t

Enumeration Type Documentation

◆ buffer_mapping_type

Enumerator
double_mapped 
single_mapped 

◆ endianness_t

Enumerator
GR_MSB_FIRST 
GR_LSB_FIRST 

◆ rt_sched_policy

Enumerator
RT_SCHED_RR 
RT_SCHED_FIFO 

◆ rt_status_t

Enumerator
RT_OK 
RT_NOT_IMPLEMENTED 
RT_NO_PRIVS 
RT_OTHER_ERROR 

◆ transfer_type

enum gr::transfer_type
strong
Enumerator
DEFAULT_INVALID 
HOST_TO_DEVICE 
DEVICE_TO_HOST 
HOST_TO_HOST 
DEVICE_TO_DEVICE 

Function Documentation

◆ api_version()

GR_RUNTIME_API const std::string gr::api_version ( )

return just the api version defined by cmake

◆ appdata_path()

GR_RUNTIME_API const char* gr::appdata_path ( )

directory to store application data

◆ basic_block_ncurrently_allocated()

GR_RUNTIME_API long gr::basic_block_ncurrently_allocated ( )

◆ binary_slicer()

static unsigned int gr::binary_slicer ( float  x)
inlinestatic

◆ block_detail_ncurrently_allocated()

GR_RUNTIME_API long gr::block_detail_ncurrently_allocated ( )

◆ branchless_binary_slicer()

static unsigned int gr::branchless_binary_slicer ( float  x)
inlinestatic

◆ branchless_clip()

static float gr::branchless_clip ( float  x,
float  clip 
)
inlinestatic

References clip().

◆ branchless_quad_0deg_slicer() [1/2]

static unsigned int gr::branchless_quad_0deg_slicer ( float  r,
float  i 
)
inlinestatic

◆ branchless_quad_0deg_slicer() [2/2]

static unsigned int gr::branchless_quad_0deg_slicer ( gr_complex  x)
inlinestatic

◆ branchless_quad_45deg_slicer() [1/2]

static unsigned int gr::branchless_quad_45deg_slicer ( float  r,
float  i 
)
inlinestatic

◆ branchless_quad_45deg_slicer() [2/2]

static unsigned int gr::branchless_quad_45deg_slicer ( gr_complex  x)
inlinestatic

◆ buffer_add_reader()

GR_RUNTIME_API buffer_reader_sptr gr::buffer_add_reader ( buffer_sptr  buf,
int  nzero_preload,
block_sptr  link = block_sptr(),
int  delay = 0 
)

Create a new gr::buffer_reader and attach it to buffer buf.

Parameters
bufis the buffer the gr::buffer_reader reads from.
nzero_preload– number of zero items to "preload" into buffer.
linkis the block that reads from the buffer using this gr::buffer_reader.
delayOptional setting to declare the buffer's sample delay.

◆ buffer_ncurrently_allocated()

GR_RUNTIME_API long gr::buffer_ncurrently_allocated ( )

returns # of buffers currently allocated

◆ buffer_reader_ncurrently_allocated()

GR_RUNTIME_API long gr::buffer_reader_ncurrently_allocated ( )

returns # of buffer_readers currently allocated

◆ build_date()

GR_RUNTIME_API const std::string gr::build_date ( )

return date/time of build, as set when 'cmake' is run

◆ build_time_enabled_components()

GR_RUNTIME_API const std::string gr::build_time_enabled_components ( )

return build-time enabled components

◆ c_compiler()

GR_RUNTIME_API const std::string gr::c_compiler ( )

return C compiler used to build this version of GNU Radio

◆ clip()

static float gr::clip ( float  x,
float  clip 
)
inlinestatic

◆ compiler_flags()

GR_RUNTIME_API const std::string gr::compiler_flags ( )

return C and C++ compiler flags used to build this version of GNU Radio

◆ configure_default_loggers()

GR_RUNTIME_API bool gr::configure_default_loggers ( gr::logger_ptr l,
gr::logger_ptr d,
const std::string &  name 
)

Function to use the GR prefs files to get and setup the two default loggers defined there. The loggers are unique to the class in which they are called, and we pass it the name to identify where the log message originates from. For a GNU Radio block, we use 'alias()' for this value, and this is set up for us automatically in gr::block.

Referenced by gr::thread::thread_body_wrapper< F >::thread_body_wrapper(), thrift_application_base< TserverBase, TserverClass >::thrift_application_base(), and thrift_server_template< TserverBase, TserverClass, TImplClass >::thrift_server_template().

◆ cxx_compiler()

GR_RUNTIME_API const std::string gr::cxx_compiler ( )

return C++ compiler used to build this version of GNU Radio

◆ dot_graph()

GR_RUNTIME_API std::string gr::dot_graph ( hier_block2_sptr  hierblock2)

Return hierarchical block's flow graph represented in dot language.

◆ dot_graph_fg()

std::string gr::dot_graph_fg ( flowgraph_sptr  fg)

◆ fast_atan2f()

static float gr::fast_atan2f ( gr_complex  z)
inlinestatic

References fast_atan2f().

◆ fast_cc_multiply()

static void gr::fast_cc_multiply ( gr_complex out,
const gr_complex  cc1,
const gr_complex  cc2 
)
inlinestatic

◆ high_res_timer_epoch()

gr::high_res_timer_type gr::high_res_timer_epoch ( void  )
inline

Get the tick count at the epoch.

References high_res_timer_now(), and high_res_timer_tps().

Referenced by TimeScaleData::setZeroTime().

◆ high_res_timer_now()

gr::high_res_timer_type gr::high_res_timer_now ( void  )
inline

Get the current time in ticks.

Referenced by high_res_timer_epoch(), and high_res_timer_now_perfmon().

◆ high_res_timer_now_perfmon()

gr::high_res_timer_type gr::high_res_timer_now_perfmon ( void  )
inline

Get the current time in ticks - for performance monitoring.

References high_res_timer_now().

◆ high_res_timer_tps()

gr::high_res_timer_type gr::high_res_timer_tps ( void  )
inline

Get the number of ticks per second.

Referenced by high_res_timer_epoch().

◆ is_power_of_2()

static bool gr::is_power_of_2 ( long  x)
inlinestatic

◆ major_version()

GR_RUNTIME_API const std::string gr::major_version ( )

return just the major version defined by cmake

◆ make_block_detail()

GR_RUNTIME_API block_detail_sptr gr::make_block_detail ( unsigned int  ninputs,
unsigned int  noutputs 
)

◆ make_buffer()

GR_RUNTIME_API buffer_sptr gr::make_buffer ( int  nitems,
size_t  sizeof_item,
uint64_t  downstream_lcm_nitems,
uint32_t  downstream_max_out_mult,
block_sptr  link = block_sptr(),
block_sptr  buf_owner = block_sptr() 
)

Allocate a buffer that holds at least nitems of size sizeof_item.

The total size of the buffer will be rounded up to a system dependent boundary. This is typically the system page size, but under MS windows is 64KB.

Parameters
nitemsis the minimum number of items the buffer will hold.
sizeof_itemis the size of an item in bytes.
downstream_lcm_nitemsis the least common multiple of the items to read by downstream block(s)
downstream_max_out_multis the maximum output multiple of all downstream blocks
linkis the block that writes to this buffer.
buf_owneris the block that owns the buffer which may or may not be the same as the block that writes to this buffer

Referenced by gr::buftype< classname, factory_class >::make_buffer().

◆ make_flowgraph()

GR_RUNTIME_API flowgraph_sptr gr::make_flowgraph ( )

◆ make_hier_block2()

GR_RUNTIME_API hier_block2_sptr gr::make_hier_block2 ( const std::string &  name,
gr::io_signature::sptr  input_signature,
gr::io_signature::sptr  output_signature 
)

public constructor for hier_block2

◆ make_top_block()

GR_RUNTIME_API top_block_sptr gr::make_top_block ( const std::string &  name,
bool  catch_exceptions = true 
)

◆ message_ncurrently_allocated()

GR_RUNTIME_API long gr::message_ncurrently_allocated ( )

◆ minor_version()

GR_RUNTIME_API const std::string gr::minor_version ( )

returnjust the minor version defined by cmake

◆ operator<()

bool gr::operator< ( basic_block_sptr  lhs,
basic_block_sptr  rhs 
)
inline

◆ operator<<() [1/7]

std::ostream& gr::operator<< ( std::ostream &  os,
basic_block_sptr  basic_block 
)
inline

◆ operator<<() [2/7]

GR_RUNTIME_API std::ostream& gr::operator<< ( std::ostream &  os,
const block m 
)

◆ operator<<() [3/7]

std::ostream& gr::operator<< ( std::ostream &  os,
const edge  edge 
)
inline

◆ operator<<() [4/7]

std::ostream& gr::operator<< ( std::ostream &  os,
const endpoint  endp 
)
inline

◆ operator<<() [5/7]

std::ostream& gr::operator<< ( std::ostream &  os,
const msg_edge  edge 
)
inline

◆ operator<<() [6/7]

std::ostream& gr::operator<< ( std::ostream &  os,
const msg_endpoint  endp 
)
inline

◆ operator<<() [7/7]

GR_RUNTIME_API std::ostream& gr::operator<< ( std::ostream &  os,
const transfer_type type 
)

◆ operator==()

bool gr::operator== ( const io_signature lhs,
const io_signature rhs 
)

◆ p2_modulo()

static size_t gr::p2_modulo ( size_t  x,
size_t  pow2 
)
inlinestatic
Parameters
xany value
pow2must be a power of 2
Returns
x modulo pow2.

Referenced by p2_modulo_neg().

◆ p2_modulo_neg()

static size_t gr::p2_modulo_neg ( size_t  x,
size_t  pow2 
)
inlinestatic
Parameters
xany value
pow2must be a power of 2
Returns
pow2 - (x modulo pow2).

References p2_modulo().

◆ p2_round_down()

static size_t gr::p2_round_down ( size_t  x,
size_t  pow2 
)
inlinestatic
Parameters
xany value
pow2must be a power of 2
Returns
x rounded down to a multiple of pow2.

Referenced by p2_round_up().

◆ p2_round_up()

static size_t gr::p2_round_up ( size_t  x,
size_t  pow2 
)
inlinestatic
Parameters
xany value
pow2must be a power of 2
Returns
x rounded up to a multiple of pow2.

References p2_round_down().

◆ prefix()

GR_RUNTIME_API const std::string gr::prefix ( )

return SYSCONFDIR. Typically ${CMAKE_INSTALL_PREFIX}/etc or /etc

◆ prefsdir()

GR_RUNTIME_API const std::string gr::prefsdir ( )

return preferences file directory. Typically ${SYSCONFDIR}/etc/conf.d

◆ pybind_version()

GR_RUNTIME_API const std::string gr::pybind_version ( )

return the pybind11 version used to build this version of GNU Radio

◆ quad_0deg_slicer() [1/2]

static unsigned int gr::quad_0deg_slicer ( float  r,
float  i 
)
inlinestatic

Referenced by quad_0deg_slicer().

◆ quad_0deg_slicer() [2/2]

static unsigned int gr::quad_0deg_slicer ( gr_complex  x)
inlinestatic

References quad_0deg_slicer().

◆ quad_45deg_slicer() [1/2]

static unsigned int gr::quad_45deg_slicer ( float  r,
float  i 
)
inlinestatic

Referenced by quad_45deg_slicer().

◆ quad_45deg_slicer() [2/2]

static unsigned int gr::quad_45deg_slicer ( gr_complex  x)
inlinestatic

References quad_45deg_slicer().

◆ sincos()

void gr::sincos ( double  x,
double *  sinx,
double *  cosx 
)
inline

◆ sincosf()

void gr::sincosf ( float  x,
float *  sinx,
float *  cosx 
)
inline

◆ sysconfdir()

GR_RUNTIME_API const std::string gr::sysconfdir ( )

return SYSCONFDIR. Typically ${CMAKE_INSTALL_PREFIX}/etc or /etc

◆ tmp_path()

GR_RUNTIME_API const char* gr::tmp_path ( )

directory to create temporary files

◆ userconf_path()

GR_RUNTIME_API const char* gr::userconf_path ( )

directory to store user configuration

◆ version()

GR_RUNTIME_API const std::string gr::version ( )

return version string defined by cmake (GrVersion.cmake)