Wireshark  2.9.0-477-g68ec514b
The Wireshark network protocol analyzer
Classes | Macros | Functions
nstime.h File Reference
#include <time.h>
#include "ws_symbol_export.h"

Go to the source code of this file.

Classes

struct  nstime_t
 

Macros

#define nstime_add(sum, a)   nstime_sum(sum, sum, a)
 
#define nstime_subtract(sum, a)   nstime_delta(sum, sum, a)
 

Functions

WS_DLL_PUBLIC void nstime_set_zero (nstime_t *nstime)
 
WS_DLL_PUBLIC gboolean nstime_is_zero (nstime_t *nstime)
 
WS_DLL_PUBLIC void nstime_set_unset (nstime_t *nstime)
 
WS_DLL_PUBLIC gboolean nstime_is_unset (const nstime_t *nstime)
 
WS_DLL_PUBLIC void nstime_copy (nstime_t *a, const nstime_t *b)
 
WS_DLL_PUBLIC void nstime_delta (nstime_t *delta, const nstime_t *b, const nstime_t *a)
 
WS_DLL_PUBLIC void nstime_sum (nstime_t *sum, const nstime_t *b, const nstime_t *a)
 
WS_DLL_PUBLIC int nstime_cmp (const nstime_t *a, const nstime_t *b)
 
WS_DLL_PUBLIC double nstime_to_msec (const nstime_t *nstime)
 
WS_DLL_PUBLIC double nstime_to_sec (const nstime_t *nstime)
 
WS_DLL_PUBLIC gboolean filetime_to_nstime (nstime_t *nstime, guint64 filetime)
 
WS_DLL_PUBLIC gboolean nsfiletime_to_nstime (nstime_t *nstime, guint64 nsfiletime)
 

Detailed Description

Definition of data structure to hold time values with nanosecond resolution

Macro Definition Documentation

#define nstime_add (   sum,
 
)    nstime_sum(sum, sum, a)

sum += a

#define nstime_subtract (   sum,
 
)    nstime_delta(sum, sum, a)

sum -= a

Function Documentation

WS_DLL_PUBLIC gboolean filetime_to_nstime ( nstime_t nstime,
guint64  filetime 
)

converts Windows FILETIME to nstime, returns TRUE on success, FALSE on failure

WS_DLL_PUBLIC gboolean nsfiletime_to_nstime ( nstime_t nstime,
guint64  nsfiletime 
)

converts time like Windows FILETIME, but expressed in nanoseconds rather than tenths of microseconds, to nstime, returns TRUE on success, FALSE on failure

WS_DLL_PUBLIC int nstime_cmp ( const nstime_t a,
const nstime_t b 
)

compare two times are return a value similar to memcmp() or strcmp().

a > b : > 0 a = b : 0 a < b : < 0

WS_DLL_PUBLIC void nstime_copy ( nstime_t a,
const nstime_t b 
)

duplicate the current time

a = b

funcion: nstime_copy

a = b

WS_DLL_PUBLIC void nstime_delta ( nstime_t delta,
const nstime_t b,
const nstime_t a 
)

calculate the delta between two times (can be negative!)

delta = b-a

Note that it is acceptable for two or more of the arguments to point at the same structure.

WS_DLL_PUBLIC gboolean nstime_is_zero ( nstime_t nstime)

is the given nstime_t currently zero?

WS_DLL_PUBLIC void nstime_set_unset ( nstime_t nstime)

set the given nstime_t to (0,maxint) to mark it as "unset" That way we can find the first frame even when a timestamp is zero (fix for bug 1056)

WS_DLL_PUBLIC void nstime_set_zero ( nstime_t nstime)

set the given nstime_t to zero

WS_DLL_PUBLIC void nstime_sum ( nstime_t sum,
const nstime_t b,
const nstime_t a 
)

calculate the sum of two times

sum = a+b

Note that it is acceptable for two or more of the arguments to point at the same structure.

WS_DLL_PUBLIC double nstime_to_msec ( const nstime_t nstime)

converts nstime to double, time base is milli seconds

WS_DLL_PUBLIC double nstime_to_sec ( const nstime_t nstime)

converts nstime to double, time base is seconds