iLab Neuromorphic Robotics Toolkit  0.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
nrt Namespace Reference

Reserved namespace for NRT core classes and functions.

Namespaces

 blackboardmanager
 Namespace for parameters and ports of the BlackboardManager.
 
 exception
 Reserved namespace for NRT-related exceptions.
 
 manager
 Namespace for Manager parameters.
 
 function_existence_helper
 A set of type trait class to check if two types can be used in an arithmetic operation, or compared.
 

Classes

class  AnyMessage
 Generic opaque message that can contain any message data. More...
 
class  MessageSubscriberCore
 Core class for the variadic MessageSubscriber template. More...
 
class  MessagePosterCore
 Module objects which derive from MessagePoster will be allowed to post Message objects. More...
 
class  MessageCheckerCore
 Module objects which derive from MessageChecker will be allowed to post Message objects. More...
 
class  Blackboard
 The Blackboard handles communication of Message objects between Module objects. More...
 
class  BlackboardFederationSummaryListener
 Listener that will be triggered on each update of the Blackboard federation. More...
 
class  BlackboardGUIdataListener
 Base class for a listener for GUIdata changes on a Blackboard. More...
 
class  BlackboardManager
 The BlackboardManager component can be inserted into an nrt::Manager hierarchy to expose Blackboard options. More...
 
class  BlackboardMaster
 Exra Blackboard functionality that exists on the Blackboard federation master only. More...
 
struct  BlackboardUsageData
 A data sent at regular intervals by each Blackboard to report on CPU, callback, etc usage. More...
 
class  MessagePosterConnector
 MessagePosterConnector class defines a connector for a MessagePoster. More...
 
class  MessageCheckerConnector
 MessageCheckerConnector class defines a connector for a MessageChecker. More...
 
class  MessageSubscriberConnector
 MessageSubscriberConnector class defines a connector for a MessageSubscriber. More...
 
struct  ConnectorUID
 Type for Connector unique ID data. More...
 
class  ConnectorBase
 Base class for Connector. More...
 
class  BlackboardUID
 Type for Blackboard unique ID data. More...
 
class  MessageTypesCreator
 Simple class used to contain common types for a given message. More...
 
class  ParameterCore
 A changeable parameter for a Component, core class. More...
 
class  MessagePosting
 A Posting port is a unique binding of a sent Message type and a returned Message type to a port class. More...
 
class  MessagePosting< Port, Msg, void >
 Specialization of MessagePosting for void return type. More...
 
class  MessagePosting< Port, nrt::Message< T >, void >
 Specialization of MessagePosting for void return type and nrt::Message<T> message. More...
 
class  MessageChecking
 A Checking is a unique binding of a Message type to a port class. More...
 
class  MessageSubscription
 A Subscription is a unique binding of a received Message type and a returned Message type to a port class. More...
 
class  MessageSubscription< Port, Msg, void >
 Specialization of MessageSubscription for void return type. More...
 
class  MessageSubscription< Port, nrt::Message< T >, void >
 Specialization of MessageSubscription for void return type and nrt::Message<T> message. More...
 
struct  SimpleMessagePosting
 Simple CRTP struct for a MessagePosting, used by split posters. More...
 
struct  SimpleMessagePosting< T, false >
 Simple CRTP struct for a MessagePosting associated with a nrt::Message<T> and void return type. More...
 
struct  SimpleMessagePosting< T, true >
 Simple CRTP struct for a MessagePosting associated with a T (should derive from MessageBase) and void return type. More...
 
struct  SimpleMessageSubscription
 Simple CRTP struct for a MessageSubscription, used by split subscribers. More...
 
struct  SimpleMessageSubscription< T, false >
 Simple CRTP struct for a MessageSubscription, used by split subscribers. More...
 
struct  SimpleMessageSubscription< T, true >
 Simple CRTP struct for a MessageSubscription, used by split subscribers. More...
 
class  MessagePoster
 Generic variadic class template definition of MessagePoster. More...
 
class  MessagePoster<>
 Special case to terminate variadic template inheritance recursion. More...
 
class  MessagePosterCoreBase
 Base class for a MessagePoster. More...
 
class  SplitMessagePoster
 Split message poster, implemented by MessagePoster ports that use splittable CompositeMessage messages. More...
 
class  MessageChecker
 Generic variadic MessageChecker class template. More...
 
class  MessageChecker<>
 Special case to terminate recursion. More...
 
class  MessageCheckerCoreBase
 Base class for MessageChecker. More...
 
class  MessageSubscriber
 Variadic-template MessageSubscriber class. More...
 
class  MessageSubscriber<>
 Variadic-template MessageSubscriber class. More...
 
class  MessageSubscriberCoreBase
 Base class for a MessageSubscriber. More...
 
class  SplitMessageSubscriber< T, true >
 Subscriber helper class for split subscriptions. More...
 
class  SplitMessageSubscriber< T, false >
 Subscriber helper class for split subscriptions. More...
 
class  MessageBase
 Base class for a message that can be passed from one Module to other(s) (via a Blackboard) More...
 
class  Message
 Generic message template that contains one value. More...
 
class  MessageData< Field, Tail...>
 Generic message data template used in messages that contain multiple fields/values. More...
 
class  CompositeMessage
 A composite message with multiple fields. More...
 
class  TriggerMessage
 An empty message used to trigger events. More...
 
class  MessageCheckerResults
 Class that holds the results of MessageChecker<Checking>::check() More...
 
class  MessagePosterResults
 The results of a post() More...
 
class  MessagePoster< Poster, Tail...>
 MessagePoster class. More...
 
class  MessageChecker< Checker, Tail...>
 Module objects which derive from nrt::MessageChecker<Checking> will be allowed to check() for Message objects. More...
 
class  MessageSubscriber< Subscriber, Tail...>
 Module objects which derive from nrt::MessageSubscriber<Subscriber> will subscribe to matching Posters. More...
 
class  Module
 Base class for a Module. More...
 
struct  ModuleUID
 Type for Module unique ID data. More...
 
class  ModuleBase
 Base class for Module. More...
 
struct  ModuleDescription
 A simple struct to describe an NRT Module from available files on disk. More...
 
class  ModuleLibrary
 A Module library. More...
 
class  ModifyParamMessage
 Request the modification of a parameter value. More...
 
class  ModifyParamResponseMessage
 The response from a parameter modification. More...
 
class  GetParamMessage
 Request the current value of a parameter. More...
 
class  GetParamResponseMessage
 The response from a parameter query. More...
 
class  ModifyModuleTopicMessage
 Request a topic (filter) change in a module's port. More...
 
class  SetStateMessage
 Set the state of the network (start, launch, endrun, stop) More...
 
class  BBNickTrigger
 
class  LoaderSummaryMessage
 A summary of all modules available in a ModuleLoader. More...
 
class  SplitPortMessage
 Request a port to be split. More...
 
class  ParamPortMessage
 Request a Module's parameter to be exposed as a port. More...
 
class  BlackboardNetHandler
 Blackboard network handler interface. More...
 
class  HTTPBridge
 A bridge to access NRT Blackboard federations over an HTTP connection. More...
 
class  RunStateActionListener
 Listener that will be triggered on each update of the Blackboard federation's run state. More...
 
class  CPUTimer
 Utility class for monitoring user/system cpu usage plus wall-clock time. More...
 
class  GenericLog
 A generic logging class. More...
 
struct  StandardErrorOutputPolicy
 Output to standard error stream. More...
 
struct  StandardOutputOutputPolicy
 Output to standard output stream. More...
 
struct  BBDebugLevelPolicy
 Blackboard debug-level log output policy. More...
 
struct  DebugLevelPolicy
 Debug-level log output policy. More...
 
struct  InfoLevelPolicy
 Info-level log output policy. More...
 
struct  WarnLevelPolicy
 Warning-level log output policy. More...
 
struct  FatalLevelPolicy
 Fatal-level log output policy. More...
 
struct  EventLogEntry
 An entry in an nrt::EventLog. More...
 
class  Event
 Event is a simple proxy class for an event, similar to lock classes for mutex. More...
 
struct  EventLogSummary
 Parsed summary from an EventLog. More...
 
class  EventLog
 A simple event logger. More...
 
class  SystemProfiler
 Simple system profiler (shared event logger) More...
 
class  TimeProfiler
 A simple set of CPU timers that can be accessed globally. More...
 
class  AutoMap
 A table used to create unique Ids and store a value for each Id. More...
 
class  BottomlessThreadPool
 A thread pool with an unlimited number of threads. More...
 
class  BoundedBuffer
 Thread-safe synchronized producer/consumer queue. More...
 
class  BoundedSet
 Thread-safe synchronized producer/consumer queue with element replacement policy. More...
 
class  ConcurrentQueue
 A thread safe queue with blocking and waiting. More...
 
class  OptionalBase
 The base class for all optional types. More...
 
class  OptionalBase< T, true >
 Reference template specialization for OptionalBase. More...
 
class  OptionalBase< T, false >
 Value template specialization for OptionalBase. More...
 
class  FunctionWrapper
 Wraps up an std::function in a move copyable struct. More...
 
struct  ThreadJoiner
 Convenience RAII wrapper around a container of threads to call join() on all of them. More...
 
class  WorkStealingQueue
 A light wrapper around std::deque used to allow different threads to "steal" work. More...
 
class  Factory
 A generic factory. More...
 
class  GenericBag< FirstT, OtherT...>
 A class for holding a bag of unique, unordered components. More...
 
class  StreamableGenericBag< FirstT, OtherT...>
 A GenericBag class that requires that each of its elements support streaming IO. More...
 
class  IdTable
 A table used to store linked value and id types supporting lookups on both. More...
 
class  IteratorRange
 A rudimentary implementation of an iterator range. More...
 
class  KeyTable
 A table used to create using Ids. More...
 
class  Optional
 A class for representing optional values. More...
 
class  Semaphore
 A simple semaphore. More...
 
class  Singleton
 A generic singleton class to enforce a single instance of a class. More...
 
class  SynchroQueue
 SynchroQueue is a thread-safe synchronized producer/consumer queue. More...
 
class  ThreadPool
 The ThreadPool class is used to run a potentially large set of jobs on a fixed number of threads. More...
 
class  BoundedThreadPool
 A bounded thread pool with a shared work queue. More...
 
class  BoundedLocalQueueThreadPool
 A bounded thread pool with thread local work queues. More...
 
class  UnboundedThreadPool
 An unbounded thread pool with a shared work queue. More...
 
class  UnboundedLocalQueueThreadPool
 An unbounded thread pool with thread local work queues. More...
 
class  Watchdog
 Launch a function after some amount of time has passed during which no reset was received. More...
 
class  Circle
 A simple representation of a circle. More...
 
class  Dims
 A generic dimensions class. More...
 
class  Line
 A 2D line segment. More...
 
class  Point
 A N-Dimensional Point Class. More...
 
class  Point2D
 A 2-Dimensional Point Class. More...
 
class  Point3D
 A 3-Dimensional Point Class. More...
 
class  Polygon
 A 2D polygon representation. More...
 
class  Rectangle
 A basic rectangle class. More...
 
class  RotatedRectangle
 A 2D rotated rectangle containing a center point, dimensions, and an angle. More...
 
struct  FrameRange
 A simple struct to hold a range of frames indicating the bounds of a movie. More...
 
class  GenericImage
 A container that acts as a smart "union" of a few popular Image types. More...
 
class  Image
 The standard Image class used to store pixel data. More...
 
class  ImageSet
 A set of images, often used as a dyadic pyramid. More...
 
class  Layout
 Represents tiled layouts of arbitrary numbers of images of different sizes. More...
 
struct  PixRGB
 A pixel class to hold red-green-blue color components. More...
 
struct  PixHSV
 A pixel class to hold hue-saturation-value color components. More...
 
struct  PixGray
 A pixel class to hold a single scalar value. More...
 
struct  PixRGBA
 A pixel class to hold red-green-blue-alpha color components. More...
 
struct  PixRGBD
 A pixel class to hold red-green-blue-depth color components and depth information. More...
 
class  Allocator
 A C++ STL compatible allocator using nrt::allocate. More...
 
class  AlignedAllocator
 A c++ STL compatible allocator that always performs aligned allocation. More...
 
class  Array
 The Array class is an efficient way to store memory and pass it between functions. More...
 
class  Array2D
 A shared, copy-on-write 2D addressable storage class for holding arbitrary types. More...
 
class  DynamicArray
 A dynamic-length version of the Array class. More...
 
class  RGBDmeta
 A splittable message to pass RGBD metadata, e.g., from a Kinect sensor. More...
 
class  RGBDmessage
 A splittable message to pass RGB + Depth data + metadata, e.g., from a Kinect sensor. More...
 
class  Component
 A component of a model hierarchy. More...
 
class  ComponentFactory
 A factory for objects that derive from nrt::Component. More...
 
class  Parameter
 Generic variadic template class template definition for Component Parameters. More...
 
class  Parameter<>
 Special case to terminate variadic template inheritance recursion. More...
 
class  Manager
 Manager of an entire model of Components. More...
 
class  ParamChangedListener
 Base class for a listener for Parameter changes on a Blackboard. More...
 
class  ParameterBase
 Base class for Parameter. More...
 
class  Parameter< Param, Tail...>
 A set of Parameters attached to a component. More...
 
struct  ParameterCategory
 A category to which multiple ParameterDefs can belong. More...
 
class  ParameterDefBase
 Base class for a Paramater definition. More...
 
class  ParameterDef
 A Parameter Definition. More...
 
class  ParameterRegistry
 A simple registry of all parameters associated with a component. More...
 
class  ParameterSummary
 ParameterSummary provides a summary about a parameter that can be used by a GUI and across Blackboards. More...
 
struct  NotATypeError
 A type to indicate an error in metaprogramming. More...
 
struct  pixel_traits
 This specialization of pixel_traits shows up when PixType is not a Pixel type. More...
 
struct  pixel_traits< PixType, true >
 This specialization of pixel_traits shows up when PixType is indeed a Pixel type. More...
 
struct  promote
 Specialization of nrt::promote for when we can't promote. More...
 
struct  promote< T1, T2, true >
 Specialization of nrt::promote for when a promotion will occur. More...
 
struct  promote< void, T2, false >
 Specialization of nrt::promote when first type is void, promoted type is the second type. More...
 
struct  promote< T1, void, false >
 Specialization of nrt::promote when second type is void, promoted type is the first type. More...
 
struct  promote< void, void, false >
 Specialization of nrt::promote when both types are void. More...
 
class  Range
 A generic range class. More...
 
struct  T2Type
 Type-to-type class. More...
 
class  Timer
 A simple timer class. More...
 
class  CentralTimer
 The NRT central timer (relative time since start() of the NRT Manager) More...
 
struct  nrt_traits
 NRT type traits definition. More...
 
class  trivial_type
 A type trait class to specify whether a custom class is 'trivial,' e.g., can be malloc'd. More...
 
class  ValidValuesSpecBase
 Base class for specifying a set of valid values for a type. More...
 
class  ValidValuesSpecNone
 Open/None valid values spec, anything that T can take is valid. More...
 
class  ValidValuesSpecList
 Finite list valid values spec, everything listed at construction is valid, anything else is not. More...
 
class  ValidValuesSpecRange
 Range-based valid values spec, bounds are included. More...
 
class  ValidValuesSpecRegex
 Regex-based valid values spec, everything that is a match to the regex is considered valid. More...
 
class  DynamicLoader
 A class to open shared object (.so) files and load functions contained in them. More...
 
struct  ModuleManifest
 Encapsulates the manifest meta-information about an NRT Module. More...
 
class  GraphicsMessage
 A message that contains a bunch of graphics Shape objects grouped under a tag name. More...
 
class  ColorMap
 Simple colormaps with N colors. More...
 
class  PixelPainter
 The PixelPainter class is a small optimization for drawing on Images. More...
 
class  SimpleFont
 A simple font class. More...
 
class  KalmanFilter
 implementation of a 2nd order linear Kalman Filter More...
 
class  DisplayImageSink
 An ImageSink that can display Images in Gtk various Gtk windows. More...
 
class  ImageSinkType
 ImageSinkType is the base class of all ImageSink implementations. More...
 
class  InfoImageSink
 
class  NoneImageSink
 An ImageSink that simply ignores any Images sent to out() More...
 
class  VideoSink
 An ImageSinkType for writing to video files. More...
 
class  VideoWriterBase
 A base class for video writers. More...
 
class  ImageSourceBase
 ImageSourceBase is the base class of all ImageSource implementations. More...
 
class  SeekableImageSourceType
 A pure virtual base class for seekable ImageSourceTypes. More...
 
class  ImageFilesSource
 A SeekableImageSourceType for opening sequences of images. More...
 
class  ImageSource
 A Component that can stream images from a variety of sources. More...
 
class  NoneImageSource
 An ImageSourceType that always returns empty GenericImages. More...
 
class  OpenNIImageSource
 An image source for capturing image data from an OpenNI compatible device. More...
 
class  RandomImageSource
 An ImageSourceType to generate uniformly distributed random images. More...
 
class  VideoReaderBase
 A base class for video readers. More...
 
class  VideoSource
 A SeekableImageSourceType for streaming video files. More...
 
class  ImagePyramid
 An ImagePyramid represents a stack of various scales of a single Image. More...
 
class  PyramidReichardt
 A Reichardt motion pyramid. More...
 
struct  Correspondence
 A struct for representing correspondence between two points. More...
 
class  SourceCloud
 A base class for any PointCloud class that has a concept of an "Source" point cloud. More...
 
class  TargetCloud
 A base class for any PointCloud class that has a concept of a "Target" point cloud. More...
 
class  DenseData
 A class for representing dense (one entry per geometry) data. More...
 
class  LookupCache
 A class for caching arbitrary templated function call results. More...
 
class  PointCloud2DataRefBase
 A container for holding references to the data associated with a point cloud point. More...
 
class  PointCloud2Data
 A container for holding the data associated with a point cloud point. More...
 
class  PointCloud2DataRefBase< true, Types...>
 A container for holding references to the data associated with a point cloud point. More...
 
class  PointCloud2DataRefBase< false, Types...>
 A container for holding constant references to the data associated with a point cloud point. More...
 
struct  SparseFieldCore
 Base class for marking a field as sparse. More...
 
struct  SparseField
 Used to wrap a field and mark it as sparse. More...
 
struct  StripSparse
 Strips sparse attribute, if present, from a type. More...
 
class  SparseData
 A class for representing Sparse (one or less entries per geometry) More...
 
class  FeatureBase
 Base class for all feature computation methods. More...
 
class  PointNormal
 An SSE capable point normal class. More...
 
class  Normals
 A class for computing 3d point normals. More...
 
class  DuplicateRemovalFilter
 A filter that removes all points which are considered to be "duplicates". More...
 
class  FilterBase
 Filter interface that all filters must inherit from. More...
 
class  PassThroughFilter
 A filter that passes through points that satisfy some criterion. More...
 
class  RandomRemovalFilter
 A filter that removes points from a point cloud. More...
 
class  VoxelFilter
 A filter that downsamples an input point cloud into a uniform grid. More...
 
class  PointCloud2
 A class for representing point clouds. More...
 
class  PointSSE
 An SSE capable point class for representing geometry. More...
 
class  StandardConvergenceCriteria
 A standard convergence criteria. More...
 
class  CorrespondenceEstimationNearestNeighbor
 Determines point correspondences by looking for nearest neighbors. More...
 
class  CorrespondenceRejectionBase
 Base class for all correspondence rejction methods. More...
 
class  CorrespondenceRejectionDistance
 Rejects correspondences based on some threshold distance. More...
 
class  CorrespondenceRejectionRANSAC
 Rejects correspondences based on some threshold distance. More...
 
class  Registration
 A class for registering point clouds. More...
 
class  TransformationEstimationBase
 Base class for all transformation estimation methods. More...
 
class  TransformationEstimationLM
 Estimates a rigid transform using Levenberg Marquardt. More...
 
class  TransformationEstimationPointToPlane
 
class  TransformationEstimationPointToPlaneLLS
 
class  TransformationEstimationSVD
 Estimates a rigid transform using singular value decomposition. More...
 
class  ModelBase
 Interface for all sample concensus methods. More...
 
class  ModelPlane
 A model for performing plane fitting. More...
 
class  ModelRegistration
 A model for performing point cloud registration. More...
 
class  RandomSampleConcensus
 Interface for all sample concensus methods. More...
 
class  SampleConcensusBase
 Interface for all sample concensus methods. More...
 
class  Search
 A class for searching point clouds. More...
 
class  UKF
 An Unscented Kalman Filter. More...
 
class  GaussianPDF
 A Gaussian representation of a given StateDefinition. More...
 
class  ParticlePDF
 Particle representation of a variable. More...
 
class  StateDef
 A Simple class to represent possibly complex and nested state information with dual access. More...
 
class  StateAccessor< Head, Tail...>
 Helper of StateDef which provides access to elements by their type. More...
 
class  StateDefinition
 A State Definition is a collection of State Field Groups used in a probability distribution. More...
 
class  StateVector
 A StateVector is a wrapper around an Eigen::Vector which provides methods to access elements by a StateDefinition. More...
 

Typedefs

typedef cereal::BinaryOutputArchive oarchive
 The default output archive type for NRT.
 
typedef cereal::BinaryInputArchive iarchive
 The default input archive type fo NRT.
 
typedef nrt::Message< std::map
< std::string, nrt::real > > 
NamedRealMapMessage
 A message to specify uniquely-named real values.
 
typedef std::int8_t int8
 
typedef std::uint8_t uint8
 
typedef std::uint8_t byte
 
typedef std::uint16_t uint16
 
typedef std::int16_t int16
 
typedef std::uint32_t uint32
 
typedef std::int32_t int32
 
typedef std::uint64_t uint64
 
typedef std::int64_t int64
 
typedef unsigned short int ushort
 
typedef unsigned int uint
 
typedef unsigned long int ulong
 
typedef double real
 
typedef
std::chrono::high_resolution_clock 
Clock
 The standard clock used by NRT (high-resolution clock from std::chrono) More...
 
typedef nrt::Clock::time_point Time
 Typedef for the NRT standard time point. More...
 
typedef nrt::Clock::duration Duration
 Standard NRT duration. More...
 
typedef std::chrono::duration
< double > 
DurationSeconds
 Duration in seconds. More...
 
typedef ComponentFactory
< std::string, std::function
< std::shared_ptr
< nrt::ImageSinkType >
nrt::Component *parent,
std::string const
&instanceName)>, std::map
< std::string, std::string > > 
ImageSinkFactory
 
typedef Factory< std::function
< void(GenericImage const,
std::string const &)>
, std::string, std::function
< std::function< void(GenericImage
const, std::string const &)>
)>, std::map< std::string,
std::string > > 
ImageWriterFactory
 A Singleton Factory used to keep track of image writers used by writeImage(). More...
 
typedef Factory
< std::shared_ptr
< VideoWriterBase >
, std::string, std::function
< std::shared_ptr
< VideoWriterBase >)> > 
VideoWriterFactory
 A Singleton Factory used to keep track of video writers used by VideoSink. More...
 
typedef Factory
< ImageSourceBase, std::string,
std::function< std::shared_ptr
< ImageSourceBase >
)>, std::map< std::string,
std::string > > 
ImageSourceFactory
 ImageSource factory.
 
typedef Factory< std::function
< GenericImage(std::string
const &)>, std::string,
std::function< std::function
< GenericImage(std::string
const &)>)>, std::map
< std::string, std::string > > 
ImageReaderFactory
 A Singleton Factory used to keep track of image readers used by readImage(). More...
 
typedef Factory
< std::shared_ptr
< VideoReaderBase >
, std::string, std::function
< std::shared_ptr
< VideoReaderBase >
)>, std::map< std::string,
std::string > > 
VideoReaderFactory
 A Singleton Factory used to keep track of video writers used by VideoSink. More...
 
typedef DynamicArray< std::size_t > Indices
 A way of describing a set of indices in a point cloud. More...
 
typedef float POINTCLOUD2_BASE_TYPE
 
template<class... Types>
using PointCloud2DataRef = PointCloud2DataRefBase< false, Types...>
 A container for holding references to the data associated with a point cloud point. More...
 
template<class... Types>
using PointCloud2ConstDataRef = PointCloud2DataRefBase< true, Types...>
 A container for holding constant references to the data associated with a point cloud point. More...
 
typedef Eigen::Vector3d Vector3
 

Enumerations

enum  MessageCheckerPolicy { MessageCheckerPolicy::Any, MessageCheckerPolicy::Unseen, MessageCheckerPolicy::AnyBlock, MessageCheckerPolicy::UnseenBlock }
 Policy flag that can be passed to check() to indicate what to check for and how. More...
 
enum  ModuleParamPort { ModuleParamPort::Poster, ModuleParamPort::Checker, ModuleParamPort::Subscriber }
 Module Parameter port type, used to create ports in Modules for Parameters. More...
 
enum  ImageInitPolicy { ImageInitPolicy::Zeros, ImageInitPolicy::None }
 Initialization policy for the pixels inside an Image, used during construction of the Image. More...
 
enum  ImageFlags : uint32 { SafeAccess = 1, UniqueAccess = 2 }
 Flags to control the behavior of Images. More...
 
enum  LayoutDir { LayoutDir::H, LayoutDir::V }
 Direction of a Layout. More...
 
enum  ParameterFlags { ParameterFlags::None = 0, ParameterFlags::NoOnlineChanges = 1 }
 Definitions of parameter flags. More...
 
enum  ParameterState { Create, Update, Destroy }
 State of a parameter, received with a ParameterSummary. More...
 
enum  Environment {
  Environment::NRTHOME, Environment::NRTMASTER, Environment::NRTMODULEPATH, Environment::NRTMESSAGEPATH,
  Environment::NRTMACROMODULEPATH, Environment::NRTNETWORKPATH, Environment::NRTAUTHOR
}
 Enum that defines all the environment variables used by NRT. More...
 
enum  TextAnchor { TextAnchor::TOP_LEFT, TextAnchor::TOP_RIGHT, TextAnchor::BOTTOM_LEFT, TextAnchor::BOTTOM_RIGHT }
 Where text should be anchored with respect to an anchor point location. More...
 
enum  ConvolutionBoundaryStrategy { ConvolutionBoundaryStrategy::ZERO, ConvolutionBoundaryStrategy::CLEAN, ConvolutionBoundaryStrategy::REPLICATE }
 Convolution boundary strategies. More...
 

Functions

 NRT_DEFINE_ENUM_CLASS (ConnectorType,(Intra)(Border))
 Type of connector. More...
 
 NRT_DEFINE_ENUM_CLASS (ConnectorFlavor,(Poster)(Checker)(Subscriber))
 Flavor of Connector. More...
 
template<typename T >
std::unique_ptr< T > make_unique (T *const object)
 Wrap an std::unique_ptr around the given object pointer. More...
 
template<class Msg >
std::string const MessageType ()
 Free function to statically identify the message type and return it as string.
 
template<>
std::string const MessageType< void > ()
 Specialization for void messages.
 
 NRT_DEFINE_ENUM_CLASS (BoundedSetInsertPolicy,(Preserve)(Replace))
 
template<class T , size_t S>
std::ostream & operator<< (std::ostream &out, nrt::Point< T, S > const &p)
 Human-readable output to a stream: outputs x1,x2,x3,...,xN.
 
template<class PixType , class BinaryOperation >
PixType accumulate (nrt::Image< PixType > const &img, PixType init=PixType(0), BinaryOperation op=std::plus< PixType >())
 Accumulate the values of all pixels in the Image. More...
 
template<class PixType , class UnaryOperator >
void transformInPlace (nrt::Image< PixType > &lhs, UnaryOperator op)
 Apply the given unary operator to each pixel in lhs, storing the returned value back into that pixel. More...
 
template<class PixType1 , class PixType2 , class BinaryOperator >
void transformInPlace (nrt::Image< PixType1 > &lhs, nrt::Image< PixType2 > const &rhs, BinaryOperator op)
 Apply the given binary operator to each pixel in lhs and rhs, and store the result in lhs's pixel. More...
 
template<class PixType , class UnaryOperator >
nrt::Image< PixType > transform (nrt::Image< PixType > const &lhs, UnaryOperator op)
 Apply the given unary operator to each pixel in lhs, storing the result in a new Image. More...
 
template<class PromoteType , class PixType , class UnaryOperator >
nrt::Image< PromoteType > transform (nrt::Image< PixType > const &lhs, UnaryOperator op)
 Apply the given unary operator to each pixel in lhs, storing the result in a new Image of type PixelType. More...
 
template<class PixType1 , class PixType2 , class BinaryOperator >
std::enable_if< nrt_traits
< PixType1, PixType2 >
::has_arithmetic, nrt::Image
< typename nrt_traits
< PixType1, PixType2 >
::promote_type > >::type 
transform (nrt::Image< PixType1 > const &lhs, nrt::Image< PixType2 > const &rhs, BinaryOperator op)
 Apply the given binary function to each pixel in lhs and rhs, storing the result in a new Image. More...
 
template<class PixType , class UnaryOperator >
nrt::Image< PixType > channel_transform (nrt::Image< PixType > const &lhs, UnaryOperator op)
 Apply the given unary operator to each channel of each pixel in lhs, storing the result in a new Image. More...
 
template<class PromoteType , class PixType , class UnaryOperator >
nrt::Image< PromoteType > channel_transform (nrt::Image< PixType > const &lhs, UnaryOperator op)
 Apply given unary operator to each channel of each pixel in lhs, storing result in a new Image of type PixelType. More...
 
template<class PixType1 , class PixType2 , class BinaryOperator >
std::enable_if< nrt_traits
< PixType1, PixType2 >
::has_arithmetic, nrt::Image
< typename nrt_traits
< PixType1, PixType2 >
::promote_type > >::type 
channel_transform (nrt::Image< PixType1 > const &lhs, nrt::Image< PixType2 > const &rhs, BinaryOperator op)
 Apply the given binary function to each channel of each pixel in lhs and rhs, storing the result in a new Image. More...
 
template<class PixType , class UnaryFunction >
void for_each (nrt::Image< PixType > const &img, UnaryFunction op)
 Run the given unary function on each pixel in img. More...
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T2 >
::value, PixelWithAlpha< T1 >
>::type & 
operator+= (PixelWithAlpha< T1 > &lhs, T2 const rhs)
 
template<class T1 , typename T2 >
PixelWithAlpha< typename
promote< T1, T2 >::type > 
operator+ (PixelWithAlpha< T1 > const &lhs, PixelWithAlpha< T2 > const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T2 >
::value, PixelWithAlpha
< typename promote< T1, T2 >
::type > >::type 
operator+ (PixelWithAlpha< T1 > const &lhs, T2 const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T1 >
::value, PixelWithAlpha
< typename promote< T1, T2 >
::type > >::type 
operator+ (T1 const &lhs, PixelWithAlpha< T2 > const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T2 >
::value, PixelWithAlpha< T1 >
>::type & 
operator-= (PixelWithAlpha< T1 > &lhs, T2 const rhs)
 
template<class T1 , typename T2 >
PixelWithAlpha< typename
promote< T1, T2 >::type > 
operator- (PixelWithAlpha< T1 > const &lhs, PixelWithAlpha< T2 > const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T2 >
::value, PixelWithAlpha
< typename promote< T1, T2 >
::type > >::type 
operator- (PixelWithAlpha< T1 > const &lhs, T2 const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T1 >
::value, PixelWithAlpha
< typename promote< T1, T2 >
::type > >::type 
operator- (T1 const &lhs, PixelWithAlpha< T2 > const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T2 >
::value, PixelWithAlpha< T1 >
>::type & 
operator*= (PixelWithAlpha< T1 > &lhs, T2 const rhs)
 
template<class T1 , typename T2 >
PixelWithAlpha< typename
promote< T1, T2 >::type > 
operator* (PixelWithAlpha< T1 > const &lhs, PixelWithAlpha< T2 > const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T2 >
::value, PixelWithAlpha
< typename promote< T1, T2 >
::type > >::type 
operator* (PixelWithAlpha< T1 > const &lhs, T2 const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T1 >
::value, PixelWithAlpha
< typename promote< T1, T2 >
::type > >::type 
operator* (T1 const &lhs, PixelWithAlpha< T2 > const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T2 >
::value, PixelWithAlpha< T1 >
>::type & 
operator/= (PixelWithAlpha< T1 > &lhs, T2 const rhs)
 
template<class T1 , typename T2 >
PixelWithAlpha< typename
promote< T1, T2 >::type > 
operator/ (PixelWithAlpha< T1 > const &lhs, PixelWithAlpha< T2 > const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T2 >
::value, PixelWithAlpha
< typename promote< T1, T2 >
::type > >::type 
operator/ (PixelWithAlpha< T1 > const &lhs, T2 const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T1 >
::value, PixelWithAlpha
< typename promote< T1, T2 >
::type > >::type 
operator/ (T1 const &lhs, PixelWithAlpha< T2 > const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T2 >
::value, PixelWithDepth< T1 >
>::type & 
operator+= (PixelWithDepth< T1 > &lhs, T2 const rhs)
 
template<class T1 , typename T2 >
PixelWithDepth< typename
promote< T1, T2 >::type > 
operator+ (PixelWithDepth< T1 > const &lhs, PixelWithDepth< T2 > const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T2 >
::value, PixelWithDepth
< typename promote< T1, T2 >
::type > >::type 
operator+ (PixelWithDepth< T1 > const &lhs, T2 const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T1 >
::value, PixelWithDepth
< typename promote< T1, T2 >
::type > >::type 
operator+ (T1 const &lhs, PixelWithDepth< T2 > const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T2 >
::value, PixelWithDepth< T1 >
>::type & 
operator-= (PixelWithDepth< T1 > &lhs, T2 const rhs)
 
template<class T1 , typename T2 >
PixelWithDepth< typename
promote< T1, T2 >::type > 
operator- (PixelWithDepth< T1 > const &lhs, PixelWithDepth< T2 > const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T2 >
::value, PixelWithDepth
< typename promote< T1, T2 >
::type > >::type 
operator- (PixelWithDepth< T1 > const &lhs, T2 const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T1 >
::value, PixelWithDepth
< typename promote< T1, T2 >
::type > >::type 
operator- (T1 const &lhs, PixelWithDepth< T2 > const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T2 >
::value, PixelWithDepth< T1 >
>::type & 
operator*= (PixelWithDepth< T1 > &lhs, T2 const rhs)
 
template<class T1 , typename T2 >
PixelWithDepth< typename
promote< T1, T2 >::type > 
operator* (PixelWithDepth< T1 > const &lhs, PixelWithDepth< T2 > const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T2 >
::value, PixelWithDepth
< typename promote< T1, T2 >
::type > >::type 
operator* (PixelWithDepth< T1 > const &lhs, T2 const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T1 >
::value, PixelWithDepth
< typename promote< T1, T2 >
::type > >::type 
operator* (T1 const &lhs, PixelWithDepth< T2 > const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T2 >
::value, PixelWithDepth< T1 >
>::type & 
operator/= (PixelWithDepth< T1 > &lhs, T2 const rhs)
 
template<class T1 , typename T2 >
PixelWithDepth< typename
promote< T1, T2 >::type > 
operator/ (PixelWithDepth< T1 > const &lhs, PixelWithDepth< T2 > const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T2 >
::value, PixelWithDepth
< typename promote< T1, T2 >
::type > >::type 
operator/ (PixelWithDepth< T1 > const &lhs, T2 const &rhs)
 
template<class T1 , typename T2 >
std::enable_if
< std::is_arithmetic< T1 >
::value, PixelWithDepth
< typename promote< T1, T2 >
::type > >::type 
operator/ (T1 const &lhs, PixelWithDepth< T2 > const &rhs)
 
GenericImage operator+ (GenericImage const &lhs, GenericImage const &rhs)
 Pointwise addition of two GenericImage images: GenericImage + GenericImage.
 
template<class PixType2 , NRT_ENABLE_IF_PIXEL(PixType2) >
GenericImage operator+ (GenericImage const &lhs, PixType2 const &rhs)
 Addition of a constant to every pixel in a GenericImage: GenericImage + T.
 
template<class PixType1 , NRT_ENABLE_IF_PIXEL(PixType1) >
GenericImage operator+ (PixType1 const &lhs, GenericImage const &rhs)
 Addition of a constant to every pixel in a GenericImage: T + GenericImage.
 
GenericImage operator- (GenericImage const &lhs, GenericImage const &rhs)
 Pointwise subtraction of two GenericImage objects: GenericImage - GenericImage.
 
template<class PixType2 , NRT_ENABLE_IF_PIXEL(PixType2) >
GenericImage operator- (GenericImage const &lhs, PixType2 const &rhs)
 Subtraction of a constant from every pixel in a GenericImage: GenericImage - T.
 
template<class PixType1 , NRT_ENABLE_IF_PIXEL(PixType1) >
GenericImage operator- (PixType1 const &lhs, GenericImage const &rhs)
 Subtraction of every pixel of a GenericImage from a constant: T - GenericImage.
 
GenericImage operator* (GenericImage const &lhs, GenericImage const &rhs)
 Pointwise product of two GenericImage images: GenericImage * GenericImage.
 
template<class PixType2 , NRT_ENABLE_IF_PIXEL(PixType2) >
GenericImage operator* (GenericImage const &lhs, PixType2 const &rhs)
 Product of everypixel of a GenericImage by a constant: GenericImage * T.
 
template<class PixType1 , NRT_ENABLE_IF_PIXEL(PixType1) >
GenericImage operator* (PixType1 const &lhs, GenericImage const &rhs)
 Product of everypixel of a GenericImage by a constant: T * GenericImage.
 
GenericImage operator/ (GenericImage const &lhs, GenericImage const &rhs)
 Pointwise division of two GenericImage images: GenericImage / GenericImage. More...
 
template<class PixType2 , NRT_ENABLE_IF_PIXEL(PixType2) >
GenericImage operator/ (GenericImage const &lhs, PixType2 const &rhs)
 Division of every pixel of a GenericImage by a constant: GenericImage / T. More...
 
template<class PixType1 , NRT_ENABLE_IF_PIXEL(PixType1) >
GenericImage operator/ (PixType1 const &lhs, GenericImage const &rhs)
 Division of a constant by every pixel of a GenericImage: T / GenericImage. More...
 
template<class PixType1 , class PixType2 >
std::enable_if< nrt_traits
< PixType1, PixType2 >
::has_assign_arithmetic, Image
< PixType1 > >::type & 
operator+= (Image< PixType1 > &lhs, Image< PixType2 > const &rhs)
 Operator to compute Image += Image.
 
template<class PixType1 , class T >
std::enable_if< nrt_traits
< PixType1, T >
::has_assign_arithmetic, Image
< PixType1 > >::type & 
operator+= (Image< PixType1 > &lhs, T const &rhs)
 Operator to compute Image += constant.
 
template<class PixType1 , class PixType2 >
std::enable_if< nrt_traits
< PixType1, PixType2 >
::has_arithmetic, Image
< typename nrt_traits
< PixType1, PixType2 >
::promote_type > >::type 
operator+ (Image< PixType1 > const &lhs, Image< PixType2 > const &rhs)
 Operator to compute Image + Image.
 
template<class PixType1 , class T >
std::enable_if< nrt_traits
< PixType1, T >
::has_arithmetic, Image
< typename nrt_traits
< PixType1, T >::promote_type >
>::type 
operator+ (Image< PixType1 > const &lhs, T const &rhs)
 Operator to compute Image + constant.
 
template<class PixType1 , class T >
std::enable_if< nrt_traits
< PixType1, T >
::has_arithmetic, Image
< typename nrt_traits
< PixType1, T >::promote_type >
>::type 
operator+ (T const &lhs, Image< PixType1 > const &rhs)
 Operator to compute constant + Image.
 
template<class PixType1 , class PixType2 >
std::enable_if< nrt_traits
< PixType1, PixType2 >
::has_assign_arithmetic, Image
< PixType1 > >::type & 
operator-= (Image< PixType1 > &lhs, Image< PixType2 > const &rhs)
 Operator to compute Image -= Image.
 
template<class PixType1 , class T >
std::enable_if< nrt_traits
< PixType1, T >
::has_assign_arithmetic, Image
< PixType1 > >::type & 
operator-= (Image< PixType1 > &lhs, T const &rhs)
 Operator to compute Image -= constant.
 
template<class PixType1 , class PixType2 >
std::enable_if< nrt_traits
< PixType1, PixType2 >
::has_arithmetic, Image
< typename nrt_traits
< PixType1, PixType2 >
::promote_type > >::type 
operator- (Image< PixType1 > const &lhs, Image< PixType2 > const &rhs)
 Operator to compute Image - Image.
 
template<class PixType1 , class T >
std::enable_if< nrt_traits
< PixType1, T >
::has_arithmetic, Image
< typename nrt_traits
< PixType1, T >::promote_type >
>::type 
operator- (Image< PixType1 > const &lhs, T const &rhs)
 Operator to compute Image - constant.
 
template<class PixType1 , class T >
std::enable_if< nrt_traits
< PixType1, T >
::has_arithmetic, Image
< typename nrt_traits
< PixType1, T >::promote_type >
>::type 
operator- (T const &lhs, Image< PixType1 > const &rhs)
 Operator to compute constant - Image.
 
template<class PixType1 , class PixType2 >
std::enable_if< nrt_traits
< PixType1, PixType2 >
::has_assign_arithmetic, Image
< PixType1 > >::type & 
operator*= (Image< PixType1 > &lhs, Image< PixType2 > const &rhs)
 Operator to compute Image *= Image.
 
template<class PixType1 , class T >
std::enable_if< nrt_traits
< PixType1, T >
::has_assign_arithmetic, Image
< PixType1 > >::type & 
operator*= (Image< PixType1 > &lhs, T const &rhs)
 Operator to compute Image *= constant.
 
template<class PixType1 , class PixType2 >
std::enable_if< nrt_traits
< PixType1, PixType2 >
::has_arithmetic, Image
< typename nrt_traits
< PixType1, PixType2 >
::promote_type > >::type 
operator* (Image< PixType1 > const &lhs, Image< PixType2 > const &rhs)
 Operator to compute Image * Image.
 
template<class PixType1 , class T >
std::enable_if< nrt_traits
< PixType1, T >
::has_arithmetic, Image
< typename nrt_traits
< PixType1, T >::promote_type >
>::type 
operator* (Image< PixType1 > const &lhs, T const &rhs)
 Operator to compute Image * constant.
 
template<class PixType1 , class T >
std::enable_if< nrt_traits
< PixType1, T >
::has_arithmetic, Image
< typename nrt_traits
< PixType1, T >::promote_type >
>::type 
operator* (T const &lhs, Image< PixType1 > const &rhs)
 Operator to compute constant * Image.
 
template<class PixType1 , class PixType2 >
std::enable_if< nrt_traits
< PixType1, PixType2 >
::has_assign_arithmetic, Image
< PixType1 > >::type & 
operator/= (Image< PixType1 > &lhs, Image< PixType2 > const &rhs)
 Operator to compute Image /= Image.
 
template<class PixType1 , class T >
std::enable_if< nrt_traits
< PixType1, T >
::has_assign_arithmetic, Image
< PixType1 > >::type & 
operator/= (Image< PixType1 > &lhs, T const &rhs)
 Operator to compute Image /= constant.
 
template<class PixType1 , class PixType2 >
std::enable_if< nrt_traits
< PixType1, PixType2 >
::has_arithmetic, Image
< typename nrt_traits
< PixType1, PixType2 >
::promote_type > >::type 
operator/ (Image< PixType1 > const &lhs, Image< PixType2 > const &rhs)
 Operator to compute Image / Image.
 
template<class PixType1 , class T >
std::enable_if< nrt_traits
< PixType1, T >
::has_arithmetic, Image
< typename nrt_traits
< PixType1, T >::promote_type >
>::type 
operator/ (Image< PixType1 > const &lhs, T const &rhs)
 Operator to compute Image / constant.
 
template<class PixType1 , class T >
std::enable_if< nrt_traits
< PixType1, T >
::has_arithmetic, Image
< typename nrt_traits
< PixType1, T >::promote_type >
>::type 
operator/ (T const &lhs, Image< PixType1 > const &rhs)
 Operator to compute constant / Image.
 
template<class T >
Layout< T > hcat (nrt::Image< T > p1, nrt::Image< T > p2)
 Convenience free functions for horizontal Layout concatenation. More...
 
template<class T >
Layout< T > hcat (nrt::Image< T > p1, Layout< T > const &p2)
 Horizontally concatenate an Image and a Layout.
 
template<class T >
Layout< T > hcat (Layout< T > const &p1, nrt::Image< T > p2)
 Horizontally concatenate a Layout and an Image.
 
template<class T >
Layout< T > hcat (Layout< T > const &p1, Layout< T > const &p2)
 Horizontally concatenate two Layout objects.
 
template<class T >
Layout< T > hcat (Layout< T > const &p1, Layout< T > const &p2, Layout< T > const &p3)
 Horizontally concatenate three Layout objects.
 
template<class T >
Layout< T > hcat (nrt::ImageSet< T > const imgs)
 Horizontally concatenate a set of Image objects.
 
template<class T >
std::enable_if< sizeof(T)!=sizeof(nrt::byte),
std::istream >::type & 
operator>> (std::istream &in, PixRGB< T > &pix)
 Stream in as a PixRGB(r,g,b)
 
template<class T >
std::enable_if< sizeof(T)==sizeof(nrt::byte),
std::istream >::type & 
operator>> (std::istream &in, PixRGB< T > &pix)
 
template<class T >
std::enable_if< sizeof(T)!=sizeof(nrt::byte),
std::istream >::type & 
operator>> (std::istream &in, PixRGBA< T > &pix)
 Stream in as a PixRGBA(r,g,b,a)
 
void * allocate (size_t nbytes)
 Allocate nbytes of memory, throwing an exception in case of failure.
 
void deallocate (void *mem)
 Deallocate the given memory region.
 
void allocation_release_free_mem ()
 Released any cached free memory blocks (e.g. to conserve memory)
 
void allocation_allow_caching (bool on)
 Turn on/off caching of memory blocks of commonly-used sizes.
 
void allocation_debug_print (bool print)
 Turn on/off memory-allocation debugging statements. More...
 
void allocation_show_stats (int verbosity=0, const char *pfx=0, const size_t units=0)
 Print current stats for whatever memory allocator is in use. More...
 
void allocation_set_stats_units (const size_t units)
 Set the units to be used by default in invt_allocation_show_stats()
 
template<class T , class... Args>
std::unique_ptr< T > make_unique (Args &&...args)
 Creates an std::unique_ptr by calling the constructor for T with the specified arguments. More...
 
 NRT_DECLARE_MESSAGE (TimeStampMessage)
 
template<class T >
void paramValToString (T const &val, std::string &result)
 Machine-readable conversion of T to a string, for use in nrt::Parameter. More...
 
template<class T >
void paramStringToVal (std::string const &valstring, T &result)
 Machine-readable conversion from string to T, for use in nrt::Parameter. More...
 
template<class Q >
void paramValToString (std::vector< Q > const &val, std::string &result)
 Machine-readable output to a string, for use in nrt::Parameter: outputs [Element1, Element2, ...]. More...
 
template<class Q >
void paramStringToVal (std::string const &valstring, std::vector< Q > &result)
 Machine-readable input from a string, for use in nrt::Parameter: reads [Element1, Element2, ...]. More...
 
template<class K , class V >
void paramValToString (std::map< K, V > const &val, std::string &result)
 Machine-readable output to a string, for use in nrt::Parameter: outputs [Key1:Value1, Key2:Value2, ...]. More...
 
template<class K , class V >
void paramStringToVal (std::string const &valstring, std::map< K, V > &result)
 Machine-readable input from a string, for use in nrt::Parameter: reads [Key1:Value1, Key2:Value2, ...]. More...
 
template<>
void paramValToString< bool > (bool const &val, std::string &result)
 Machine-readable conversion of bool to a string, for use in nrt::Parameter. More...
 
template<>
void paramStringToVal< bool > (std::string const &valstring, bool &result)
 Machine-readable conversion from string to bool, for use in nrt::Parameter. More...
 
template<>
void paramValToString< std::string > (std::string const &val, std::string &result)
 Machine-readable conversion of string to a string, for use in nrt::Parameter. More...
 
template<>
void paramStringToVal< std::string > (std::string const &valstring, std::string &result)
 Machine-readable conversion from string to string, for use in nrt::Parameter. More...
 
 NRT_DEFINE_ENUM_CLASS (RunStateAction,(PreInit)(Init)(PostInit)(PreStart)(Start)(PostStart)(InitiateLaunch)(CompleteLaunch)(InitiateEndrun)(CompleteEndrun)(PreStop)(Stop)(PostStop)(PreUninit)(Uninit)(PostUninit))
 Helper enum to set the run state of a Component that is possibly on a remote Blackboard. More...
 
template<class dest_type , class source_type >
std::enable_if< not_subranged
< dest_type, source_type >
::value, dest_type >::type 
clamped_convert (source_type source)
 Perform a clamped-conversion from one type to another.
 
template<class dest_type , class source_type >
std::enable_if
< not_subranged_round
< dest_type, source_type >
::value, dest_type >::type 
clamped_convert (source_type source)
 Perform a clamped-conversion from one type to another.
 
template<class dest_type , class source_type >
std::enable_if
< subranged_signed< dest_type,
source_type >::value,
dest_type >::type 
clamped_convert (source_type source)
 Perform a clamped-conversion from one type to another.
 
template<class dest_type , class source_type >
std::enable_if
< subranged_unsigned
< dest_type, source_type >
::value, dest_type >::type 
clamped_convert (source_type source)
 Perform a clamped-conversion from one type to another.
 
template<class dest_type , class source_type >
std::enable_if
< subranged_signed_unsigned
< dest_type, source_type >
::value, dest_type >::type 
clamped_convert (source_type source)
 Perform a clamped-conversion from one type to another.
 
template<class dest_type , class source_type >
std::enable_if
< subranged_unsigned_signed
< dest_type, source_type >
::value, dest_type >::type 
clamped_convert (source_type source)
 Perform a clamped-conversion from one type to another.
 
template<class dest_type , class source_type >
std::enable_if
< subranged_float< dest_type,
source_type >::value,
dest_type >::type 
clamped_convert (source_type source)
 Perform a clamped-conversion from one type to another.
 
template<class dest_type , class source_type >
std::enable_if
< subranged_float_round
< dest_type, source_type >
::value, dest_type >::type 
clamped_convert (source_type source)
 Perform a clamped-conversion from one type to another.
 
std::string demangle (std::string mangledName)
 Demangle a mangled name.
 
template<class T >
std::string demangledName ()
 Get the demangled type name of type T.
 
template<class T >
std::string demangledName (T const &t)
 Get the demangled type name of variable t.
 
template<typename Elem , typename Tupl , size_t i>
std::__add_ref< typename
std::enable_if< std::is_same
< Elem, typename
std::tuple_element< i, Tupl >
::type >::value, typename
std::__add_ref< Elem >::type >
::type >::type 
tget (Tupl &t)
 Add access to std::tuple elements by type. More...
 
template<typename Elem , typename Tupl , size_t i = 0>
std::__add_ref< typename
std::enable_if< !std::is_same
< Elem, typename
std::tuple_element< i, Tupl >
::type >::value, typename
std::__add_ref< Elem >::type >
::type >::type 
tget (Tupl &t)
 
template<typename Elem , typename Tupl , size_t i>
std::__add_c_ref< typename
std::enable_if< std::is_same
< Elem, typename
std::tuple_element< i, Tupl >
::type >::value, typename
std::__add_c_ref< Elem >::type >
::type >::type 
tget (Tupl const &t)
 Const version of nrt::tget() More...
 
template<typename Elem , typename Tupl , size_t i = 0>
std::__add_c_ref< typename
std::enable_if< !std::is_same
< Elem, typename
std::tuple_element< i, Tupl >
::type >::value, typename
std::__add_c_ref< Elem >::type >
::type >::type 
tget (Tupl const &t)
 
void warnAndRethrowException ()
 Convenience function to catch an exception, issue some NRT_WARNING (depending on type), and rethrow it. More...
 
void warnAndIgnoreException ()
 Convenience function to catch an exception, issue some NRT_WARNING (depending on type), and ignore it. More...
 
Time now ()
 Now represented in nrt::Time. More...
 
Duration forev ()
 Forever duration. More...
 
Duration zeroduration ()
 Zero duration. More...
 
template<typename Function , typename... Args>
std::future< typename
std::result_of< Function(Args...)>
::type > 
async (std::launch policy, Function &&fn, Args &&...args)
 
template<typename Function , typename... Args>
std::future< typename
std::result_of< Function(Args...)>
::type > 
async (Function &&fn, Args &&...args)
 
std::string getenv (Environment const e)
 Get the value of an environment variable. More...
 
std::string getenvdescription (Environment const e)
 Get the description of an environment variable. More...
 
std::string getenvname (Environment const e)
 Get the nameof an environment variable as used by the Unix Shell. More...
 
std::future< void > groupAsync (std::vector< std::function< void()> > const &jobs)
 The groupAsync method is a way to spawn multiple threads simultaneously. More...
 
double lngamma (double x)
 Compute log of Gamma. More...
 
double normalPDF (double x, double mu, double var)
 Find the value of a normal PDF at x. More...
 
double normalCDF (double x, double mu, double var)
 Find the value of a normal CDF at x. More...
 
double vonMisesPDF (double x, double mu, double k)
 Find the value of a von Mises distribution at x. More...
 
template<class T >
clamped (T const &val, T const &min, T const &max)
 Clamp a value to within a min-max range. More...
 
 NRT_DEFINE_ENUM_CLASS (ManifestType,(Module)(MacroModule)(Network))
 Enum for the manifest type. More...
 
std::string replaceEnvVars (std::string const &str)
 Replace all environment variables in the given string with the values found in the environment. More...
 
std::vector< std::string > splitString (std::string const &string, char const delimiter)
 Split the string by the given delimiter. More...
 
std::string joinStrings (std::vector< std::string > const &strings, std::string const &delimiter)
 Join a vector of strings with the given delimiter. More...
 
bool stringStartsWith (std::string const &str, std::string const &prefix)
 Return true is str starts with prefix (including if both strings are equal)
 
std::string trimString (std::string const &s)
 Trim whitespace from both ends of a string. More...
 
std::string lTrimString (std::string const &s)
 Trim whitespace from the left side of a string. More...
 
std::string rTrimString (std::string const &s)
 Trim whitespace from the right side of a string. More...
 
std::string sformat (const char *fmt,...) __attribute__((format(__printf__
 Create a string using printf style arguments. More...
 
std::string std::string urlDecode (std::string const &str)
 Decode url-encoded strings. More...
 
template<typename T1 , typename T2 >
Eigen::Matrix< T1,
Eigen::Dynamic, 1 > 
arrayToEigenVector (Array< T2 > const input)
 Convert from nrt::Array to Eigen vector.
 
template<typename T1 , typename T2 >
Array< T1 > eigenVectorToArray (Eigen::Matrix< T2, Eigen::Dynamic, 1 > const &input)
 Cpnvert from Eigen vector to nrt::Array.
 
template<typename T1 , typename T2 >
Eigen::Matrix< T1,
Eigen::Dynamic, 1 > 
imageToEigenVector (Image< PixGray< T2 > > const input)
 Convert from nrt::Image to Eigen vector.
 
template<typename T1 , typename T2 >
Image< PixGray< T1 > > eigenVectorToImage (Eigen::Matrix< T2, Eigen::Dynamic, 1 > const &input)
 Convert from Eigen vector to nrt::Image.
 
template<typename T1 , typename T2 >
Eigen::Matrix< T1,
Eigen::Dynamic, Eigen::Dynamic > 
imageToEigenMatrix (Image< PixGray< T2 > > const input)
 Convert from nrt::Image to Eigen matrix.
 
template<typename T1 , typename T2 >
Image< PixGray< T1 > > eigenMatrixToImage (Eigen::Matrix< T2, Eigen::Dynamic, Eigen::Dynamic > const &input)
 Convert from Eigen matrix to nrt::Image.
 
template<class T >
PixRGB< byte > applyColorMapToPixel (T v, T vmin, T vmax, ColorMap const &cm)
 Convert a scalar value to a color using a specified colormap.
 
template<class T >
Image< PixRGB< byte > > applyColorMap (Image< PixGray< T >> const &input, T min, T max, ColorMap const &cm)
 Colorize a grayscale image using a specified colormap.
 
void yv12_to_rgb24_c (unsigned char *dst, int dst_stride, const unsigned char *y_src, const unsigned char *u_src, const unsigned char *v_src, int y_stride, int uv_stride, int width, int height)
 
void rgb24_to_yv12_c (const Image< PixRGB< nrt::byte > > &img, nrt::byte *const y_out, nrt::byte *u_out, nrt::byte *v_out)
 
void yuv422p_to_rgb24_c (nrt::byte *dst, const int w, const int h, const nrt::byte *yptr, const nrt::byte *uptr, const nrt::byte *vptr)
 
void yuv422_to_rgb24_c (nrt::byte *dst, const int w, const int h, const nrt::byte *yuv422ptr, const bool byteswap)
 
template<class T >
PixRGB< byte > jetPixel (T v, T vmin, T vmax)
 Convert a scalar value to a color using a "jet" colormap.
 
template<class T >
Image< PixRGB< byte > > jet (Image< PixGray< T >> const &input, T min, T max)
 Colorize a grayscale image using a "jet" colormap.
 
template<class PixType >
void paste (Image< PixType > &destination, Image< PixType > const source, Point2D< int32 > const &pos)
 Paste a source Image into the destination at the given position. More...
 
template<class PixType >
Image< PixType > const concatX (Image< PixType > const left, Image< PixType > const right, PixType const bgColor=PixType(0))
 Horizontally concatenate two Images. More...
 
template<class PixType >
Image< PixType > const concatY (Image< PixType > const top, Image< PixType > const bottom, PixType const bgColor=PixType(0))
 Vertically concatenate two Images. More...
 
template<class PixType >
Image< PixType > const crop (Image< PixType > const source, Rectangle< int32 > const &rect)
 Extract a sub-image from the source Image. More...
 
template<class PixType >
ImageSet< PixType > const crop (ImageSet< PixType > const source, Rectangle< int32 > const &rect)
 Extract a sub-ImageSet from the source ImageSet.
 
GenericImage const crop (GenericImage const source, Rectangle< int32 > const &rect)
 Extract a sub-image from the source Image, GenericImage version.
 
template<class PixType >
Image< PixType > const cropAndFill (Image< PixType > const source, Rectangle< int32 > const &rect, PixType const bgColor=PixType(0))
 Extract a subImage from the source Image. More...
 
GenericImage const cropAndFill (GenericImage const source, Rectangle< int32 > const &rect, PixRGB< float > const bgColor=PixRGB< float >(0.0F))
 Extract a subImage from the source Image, GenericImage version. More...
 
template<class PixType >
Image< PixType > const warpedCrop (Image< PixType > const source, Rectangle< int32 > const &rect, Eigen::AffineCompact2f const &m, PixType const bgColor=PixType(0))
 Extract a warped sub-image from the source Image using the provided warping matrix. More...
 
template<class T , template< typename > class PixDest, class U , template< typename > class PixOutline>
void drawLine (Image< PixDest< T > > &image, Line< int32 > const &line, PixOutline< U > const &outlineColor, uint thickness=1)
 Draw a Line in the Image. More...
 
template<class T , class U >
void drawLineAA (Image< T > &image, Line< int32 > const &line, U const &outlineColor)
 Draw an antialiased Line in the Image. More...
 
template<class T , template< typename > class SourceColorT, class U , template< typename > class OutlineColorT, class V = byte, template< typename > class FillColorT = PixRGBA>
void drawPolygon (Image< SourceColorT< T >> &image, Polygon< int32 > const &polygon, OutlineColorT< U > const &outlineColor, uint thickness=1, FillColorT< V > const &fillColor=PixRGBA< byte >(0, 0, 0, 0))
 Draw a Polygon in the image. More...
 
template<class T , class U >
void drawPolygonAA (Image< T > &image, Polygon< int32 > const &polygon, U const &outlineColor)
 Draw an antialiased Polygon in the image. More...
 
template<class T , template< typename > class PixDest, class U , template< typename > class PixFill>
void drawDisk (Image< PixDest< T > > &dst, Circle< int32 > const &circle, PixFill< U > const &fillColor)
 Draw a Disk (filled-in circle) More...
 
template<class T , class U >
void drawCircle (Image< T > &image, Circle< int32 > const &circle, U const &outlineColor, uint thickness=1)
 Draw a Circle in the image. More...
 
template<class T , class U , class V = PixRGBA<byte>>
void drawEllipse (Image< T > &image, Point2D< int32 > const &center, const float radiusx, const float radiusy, const float skew, U const &outlineColor, uint thickness=1, V const &fillColor=PixRGBA< byte >(0, 0, 0, 0))
 Draw a Ellipse in the image. More...
 
template<class T , template< typename > class SourceColorT, class U , template< typename > class OutlineColorT, class V = byte, template< typename > class FillColorT = PixRGBA>
void drawRectangle (Image< SourceColorT< T >> &image, Rectangle< int32 > const &rect, OutlineColorT< U > const &outlineColor, uint thickness=1, FillColorT< V > const &fillColor=PixRGBA< byte >(0, 0, 0, 0))
 Draw a Rectangle in the Image. More...
 
template<class T , class OutlineColorT >
void drawCross (Image< T > &image, Point2D< int32 > const &center, OutlineColorT const &outlineColor, uint32 radius, uint32 thickness=1, float angle=0)
 Draw a cross in the Image. More...
 
template<class T , class OutlineColorT >
void DrawArrow (Image< T > &image, int32 xs, int32 ys, int32 xe, int32 ye, uint32 thickness=1, OutlineColorT const &outlineColor=PixRGB< byte >(0, 0, 255), float headSizeRatio=0.35f, float headAngle=15.0f)
 Draw an arrow in the Image. More...
 
template<class T , class OutlineColorT >
void drawGrid (Image< T > &image, const int32 spacingX, const int32 spacingY, const uint32 thickX=1, const uint32 thickY=1, OutlineColorT const &outlineColor=PixRGB< byte >(0, 0, 0))
 Draw a Grid in the image. More...
 
template<class T , class OutlineColorT >
void drawGrid (Image< T > &image, const uint32 nx, const uint32 ny, const uint32 thickness=1, OutlineColorT const &outlineColor=PixRGB< byte >(0, 0, 0))
 Draw a regular Grid in the image. More...
 
template<class T , template< typename > class PixDest, class U = byte, template< typename > class FGColorT = PixRGB, class V = byte, template< typename > class BGColorT = PixRGB>
void drawText (Image< PixDest< T > > &image, Point2D< int32 > const &pt, std::string const &text, FGColorT< U > const &foreground=FGColorT< U >(255), BGColorT< U > const &background=BGColorT< V >(0), SimpleFont const &font=SimpleFont::FIXED(10), TextAnchor const anchor=TextAnchor::TOP_LEFT, bool transparentBG=false)
 Write some text in an Image using a SimpleFont. More...
 
template<class T >
Image< PixGray< T > > binomialKernel (int const size)
 Create a 1D binomial distribution kernel (shape of size-by-1). More...
 
template<class T >
Image< PixGray< T > > gaborKernel (const float stddev, const float period, const float phase, const float theta, const float bg=0.0f, const float ampl=1.0f)
 Create a Gabor kernel. More...
 
template<class T >
Image< PixGray< T > > gaborKernel (float const scale, float const theta)
 Create a Gabor kernel with a a given scale and angle (in radians) More...
 
template<class T >
Image< PixGray< T > > morphologyKernel (int size, bool const disk)
 Create a Morphological kernel with a given size. More...
 
template<NRT_PROMOTE_PIX_NO_DEFAULT_PROMO >
Image< DestType > lowPass3x (Image< PixType > const &src)
 Low-pass filter, coeff * [0.25 0.5 0.25], applied in X only. More...
 
template<typename promo >
GenericImage lowPass3x (GenericImage const &src)
 Low-pass filter, coeff * [0.25 0.5 0.25], applied in X only, GenericImage version. More...
 
template<NRT_PROMOTE_PIX_NO_DEFAULT_PROMO >
Image< DestType > lowPass3y (Image< PixType > const &src)
 Low-pass filter, coeff * [0.25 0.5 0.25], applied in Y only. More...
 
template<typename promo >
GenericImage lowPass3y (GenericImage const &src)
 Low-pass filter, coeff * [0.25 0.5 0.25], applied in Y only, GenericImage version. More...
 
template<NRT_PROMOTE_PIX_NO_DEFAULT_PROMO >
Image< DestType > lowPass3 (Image< PixType > const &src)
 Low-pass filter, coeff * [0.25 0.5 0.25], applied separably in X and Y. More...
 
template<typename promo >
GenericImage lowPass3 (GenericImage const &src)
 Low-pass filter, coeff * [0.25 0.5 0.25], applied separably in X and Y, GenericImage version. More...
 
template<NRT_PROMOTE_PIX_NO_DEFAULT_PROMO >
nrt::Image< DestType > lowPass5x (nrt::Image< PixType > const &src)
 Low-pass filter, Anderson's 5x5 separable, applied in X. More...
 
template<NRT_PROMOTE_PIX_NO_DEFAULT_PROMO >
nrt::Image< DestType > lowPass5y (nrt::Image< PixType > const &src)
 Low-pass filter, Anderson's 5x5 separable, applied in Y. More...
 
template<NRT_PROMOTE_PIX_NO_DEFAULT_PROMO >
nrt::Image< DestType > lowPass9x (nrt::Image< PixType > const &src)
 Low-pass filter, 9x9 separable, applied in X. More...
 
template<NRT_PROMOTE_PIX_NO_DEFAULT_PROMO >
nrt::Image< DestType > lowPass9y (nrt::Image< PixType > const &src)
 Low-pass filter, 9x9 separable, applied in Y. More...
 
template<NRT_PROMOTE_PIX_NO_DEFAULT_PROMO >
nrt::Image< DestType > lowPass9 (nrt::Image< PixType > const &src, bool const go_x=true, bool const go_y=true)
 Low-pass filter, 9x9 separable. More...
 
template<class T >
Image< T > dilate (Image< T > const &img, Image< T > const &se, Point2D< int > origin)
 
template<class PixType >
Image< PixType > dilate (Image< PixType > const &img, int seSize=3, Point2D< int > origin=Point2D< int >(-1,-1))
 Dilate the img with a square structuring element. More...
 
template<class T >
Image< T > erode (Image< T > const &img, Image< T > const &se, Point2D< int > origin)
 
template<class PixType >
Image< PixType > erode (Image< PixType > const &img, int seSize=3, Point2D< int > origin=Point2D< int >(-1,-1))
 Erode the img with a square structuring element. More...
 
template<class T >
Image< T > open (const Image< T > &img, const Image< T > &se, Point2D< int > origin)
 
template<class PixType >
Image< PixType > open (Image< PixType > const &img, int seSize=3, Point2D< int > origin=Point2D< int >(-1,-1))
 Open (erode and then dilate) img with a square structuring element. More...
 
template<class T >
Image< T > close (const Image< T > &img, const Image< T > &se, Point2D< int > origin)
 
template<class PixType >
Image< PixType > close (Image< PixType > const &img, int seSize=3, Point2D< int > origin=Point2D< int >(-1,-1))
 Close (dilate and then erode) img with a square structuring element. More...
 
template<NRT_PROMOTE_PIX_NO_DEFAULT_PROMO >
Image< DestType > lowPass (int const N, Image< PixType > const &src)
 Low-pass filter, NxN applied in X and Y. More...
 
template<NRT_PROMOTE_PIX_NO_DEFAULT_PROMO >
Image< DestType > lowPassX (int const N, Image< PixType > const &src)
 Low-pass filter, Nx1 separable, applied in X.
 
template<NRT_PROMOTE_PIX_NO_DEFAULT_PROMO >
Image< DestType > lowPassY (int const N, Image< PixType > const &src)
 Low-pass filter, 1xN separable, applied in Y.
 
template<NRT_PROMOTE_PIX(double) >
Image< DestType > const centerSurround (Image< PixType > const center, Image< PixType > const surround, bool const rectify=false)
 Compute center-surround difference, returning the absolute value if rectify==true. More...
 
template<NRT_PROMOTE_PIX(double) >
Image< DestType > const orientedFilter (Image< PixType > const src, float const k, float const theta, float const intensity=1.0, bool const fastMath=false)
 Oriented filter along theta (deg), spatial freq k. More...
 
template<NRT_PROMOTE_PIX(double) >
std::tuple< Image< DestType >
, Image< DestType > > const 
sobelFilter3 (Image< PixType > const src, ConvolutionBoundaryStrategy strategy=nrt::ConvolutionBoundaryStrategy::REPLICATE)
 Filter the Image with a 3x3 Sobel edge-detecting filter. More...
 
template<NRT_PROMOTE_PIX(double) >
std::tuple< Image< DestType >
, Image< DestType > > const 
sobelFilter5 (Image< PixType > const src, ConvolutionBoundaryStrategy strategy=nrt::ConvolutionBoundaryStrategy::REPLICATE)
 Filter the Image with a 5x5 Sobel edge-detecting filter. More...
 
template<NRT_PROMOTE_PIX(double) >
Image< DestType > const integralImage (Image< PixType > const src)
 Compute an integral image. More...
 
template<NRT_PROMOTE_PIX(double) >
Image< DestType > const integralSquaresImage (Image< PixType > const src)
 Compute an integral squares image. More...
 
template<class PixType >
Image< PixType > median3x (Image< PixType > const &in)
 Apply a 3-point median filter in the x direction. More...
 
template<class PixType >
Image< PixType > median3y (Image< PixType > const &in)
 Apply a 3-point median filter in the y direction. More...
 
template<class PixType >
Image< PixType > median3 (Image< PixType > const &in, bool go_x=true, bool go_y=true)
 Apply a 3-point median filter in the x and/or y directions;. More...
 
template<class PixType >
Image< PixType > dilate (Image< PixType > const &img, Image< PixType > const &se, Point2D< int > origin=Point2D< int >(-1,-1))
 Dilate the img with a custom structuring element. More...
 
template<class PixType >
Image< PixType > erode (Image< PixType > const &img, Image< PixType > const &se, Point2D< int > origin=Point2D< int >(-1,-1))
 Erode the img with a custom structuring element. More...
 
template<class PixType >
Image< PixType > open (Image< PixType > const &img, Image< PixType > const &se, Point2D< int > origin=Point2D< int >(-1,-1))
 Open (erode and then dilate) img with a custom structuring element. More...
 
template<class PixType >
Image< PixType > close (Image< PixType > const &img, Image< PixType > const &se, Point2D< int > origin=Point2D< int >(-1,-1))
 Close (dilate and then erode) img with struct element se with a given origin. More...
 
template<NRT_PROMOTE_PIX(double) >
Image< DestType > const xFilter (Image< PixType > const src, Image< DestType > const hKernel, ConvolutionBoundaryStrategy const boundary)
 Convolve a horizontal 1-D kernel with the input Image using the given boundary strategy.
 
template<NRT_PROMOTE_PIX(double) >
Image< DestType > const yFilter (Image< PixType > const src, Image< DestType > const vKernel, ConvolutionBoundaryStrategy const boundary)
 Convolve a vertical 1-D kernel with the input Image using the given boundary strategy.
 
template<NRT_PROMOTE_PIX(double) >
Image< DestType > const separableFilter (Image< PixType > const src, Image< DestType > const hKernel, Image< DestType > const vKernel, ConvolutionBoundaryStrategy const boundary)
 Convolve horizontal and vertical separable kernels with the input Image using the given boundary strategy. More...
 
template<NRT_PROMOTE_PIX(double) >
Image< DestType > const separableFilter (Image< PixType > const src, Image< DestType > const kernel, ConvolutionBoundaryStrategy const boundary)
 Convolve a single separable filter (either 1xN or Nx1) with the input Image using the given boundary strategy. More...
 
void writeImage (GenericImage const img, std::string const &filename)
 Write the image file found at the given filename. More...
 
void writePNM (GenericImage const img, std::string const &filename)
 
GenericImage const readImage (std::string const &filename)
 Read the image file found at the given filename. More...
 
GenericImage const readPFZ (std::string const &filename)
 
GenericImage const readPNM (std::string const &filename)
 
template<class PixType >
Image< PixType > copyIpl2Image (IplImage const *const iplimage)
 Copy an OpenCV IplImage to an nrt::Image.
 
template<class PixType >
IplImage * copyImage2Ipl (Image< PixType > const img)
 Copy an nrt::Image to an OpenCV IplImage. More...
 
template<class PixType >
Image< PixType > copyCvMat2Image (cv::Mat iplimage)
 Copy a cv::Mat to an nrt::Image.
 
template<class PixType >
cv::Mat copyImage2CvMat (Image< PixType > const img)
 Copy an nrt::Image to a cv::Mat.
 
template<typename promo = int, typename srcType , typename dstType = typename nrt::promote<srcType, promo>::type>
nrt::Image< nrt::PixGray
< dstType > > 
getIntegralImage (nrt::Image< nrt::PixGray< srcType > > const im)
 Generate an Integral Image from a grayscale Image. More...
 
template<typename promo = int, typename srcType , typename dstType = typename nrt::promote<srcType, promo>::type>
nrt::Image< nrt::PixGray
< dstType > > 
getIntegralImage (nrt::Image< nrt::PixGray< srcType > > const im, std::function< dstType(srcType const &)> evalFxn)
 Generate an Integral Image from a grayscale Image.
 
template<typename promo = int, typename srcType , typename dstType = typename nrt::promote<srcType, promo>::type>
dstType getIIValue (nrt::Image< nrt::PixGray< srcType >> integralImage, nrt::Rectangle< nrt::int32 > rect)
 Compute the sum of values inside a rectangular region of an Image using an Integral Image. More...
 
template<class PixType >
void inplaceAttenuateBorders (Image< PixType > &a, int size)
 Progressive attenuation of borders by "size" pixels.
 
template<class PixType >
void inplaceRectify (Image< PixType > &dst)
 Half-wave rectify an Image. More...
 
template<class PixType >
void inplaceNormalize (Image< PixType > &dst, PixType const &mi, PixType const &ma)
 Normalize pixel values to range [mi .. ma].
 
template<class PixType >
void inplaceNormalize (Image< PixType > &dst, PixType const &mi, PixType const &ma, PixType &oldmi, PixType &oldma)
 Normalize pixel values to range [mi .. ma], also get old range back into [oldmi.. oldma].
 
template<NRT_PROMOTE_PIX(void) >
Image< DestType > const normalize (Image< PixType > const src, DestType const &mi, DestType const &ma)
 Normalize pixel values to range [mi .. ma].
 
template<NRT_PROMOTE_PIX(void) >
Image< DestType > normalize (Image< PixType > const src, DestType const &mi, DestType const &ma, PixType &oldmi, PixType &oldma)
 Normalize pixel values to range [mi .. ma], also get old range back into [oldmi.. oldma].
 
template<class promo = void>
GenericImage const normalize (GenericImage const src, double const &mi, double const &ma)
 Normalize pixel values to range [mi .. ma], GenericImage version.
 
template<NRT_PROMOTE_PIX(float) >
Image< DestType > const zmuv (Image< PixType > const src)
 Normalize pixel values to zero mean, unit variance (ZMUV)
 
template<class PixType >
void inplaceZmuv (Image< PixType > &src)
 Normalize pixel values to zero mean, unit variance (ZMUV)
 
template<class PixType >
Point2D< int > findMaxLocation (Image< PixType > const &src)
 Find the maximum location in the image.
 
template<class PixType >
Point2D< int > findMinLocation (Image< PixType > const &src)
 Find the minimum location in the image.
 
template<NRT_PROMOTE_PIX(double) >
DestType const mean (Image< PixType > const &im)
 Get the average of all input pixels.
 
template<NRT_PROMOTE_PIX(double) >
DestType const stdev (Image< PixType > const &im)
 Compute standard deviation of pixel values over image.
 
template<NRT_PROMOTE_PIX(double) >
DestType const variance (Image< PixType > const &im)
 Compute variance of pixel values over image.
 
template<NRT_PROMOTE_PIX(double) >
DestType const sum (Image< PixType > const &im)
 Returns the sum of all input pixels.
 
template<class promo = float, class T >
nrt::promote< T, promo >::type
const 
normalizedCrossCorrelation (Image< nrt::PixGray< T > > const &im1, Image< nrt::PixGray< T > > const &im2)
 Returns the normalized cross-correlation between two images of same dims, images should have zero mean.
 
template<NRT_PROMOTE_PIX(void) >
ImagePyramid< DestType > gaussianPyramid (Image< PixType > const source, size_t const numOctaves, size_t const firstOctave=0, size_t const filterSize=5)
 Create a gaussian pyramid from an input Image.
 
template<NRT_PROMOTE_PIX(double) >
ImagePyramid< DestType > laplacianPyramid (Image< PixType > const source, size_t const numOctaves, size_t const firstOctave=0, size_t const filterSize=5)
 Create a laplacian pyramid from an input Image.
 
template<NRT_PROMOTE_PIX(void) >
ImagePyramid< DestType > orientedPyramid (Image< PixType > const source, size_t const numOctaves, size_t const firstOctave, int const filterSize, float theta, float intensity, bool const fastMath=false)
 Create an oriented pyramid from an input Image. More...
 
template<NRT_PROMOTE_PIX(double) >
ImagePyramid< DestType > orientedPyramid (ImagePyramid< PixType > const laplacian, int filterSize, float theta, float intensity, bool const fastMath=false)
 Create an oriented pyramid from an already constructed Laplacian pyramid.
 
template<NRT_PROMOTE_PIX_NO_DEFAULT_PROMO >
Image< DestType > rescaleBilinear (Image< PixType > const &src, Dims< int32 > const &dims)
 Scale to new width & height using bilinear interpolation.
 
template<typename promo = void>
GenericImage rescaleBilinear (GenericImage const &src, Dims< int32 > const &dims)
 Scale to new width & height using bilinear interpolation - GenericImage version.
 
template<NRT_PROMOTE_PIX_NO_DEFAULT_PROMO >
nrt::Image< DestType > decimateX (nrt::Image< PixType > const &src, int factor=2)
 Decimate in X (take one every 'factor' pixels).
 
template<NRT_PROMOTE_PIX_NO_DEFAULT_PROMO >
nrt::Image< DestType > decimateY (nrt::Image< PixType > const &src, int const factor=2)
 Decimate in Y (take one every 'factor' pixels). More...
 
template<NRT_PROMOTE_PIX_NO_DEFAULT_PROMO >
nrt::Image< DestType > decimateXY (nrt::Image< PixType > const &src, int const xfactor=2, int const yfactor=-1)
 Decimate in X and Y (take one every 'factor' pixels). More...
 
template<NRT_PROMOTE_PIX_NO_DEFAULT_PROMO >
nrt::Image< DestType > downSize (nrt::Image< PixType > const &src, nrt::Dims< int > const &dims, int const filterWidth=9)
 Downsize using alternating lowpass/decimate operations. More...
 
template<NRT_PROMOTE_PIX_NO_DEFAULT_PROMO >
nrt::Image< DestType > lowPass5xDecX (nrt::Image< PixType > const &src, int const factor=2)
 Low-pass filter, Anderson's 5x5 separable, applied in X, and X decimated by factor.
 
template<NRT_PROMOTE_PIX_NO_DEFAULT_PROMO >
nrt::Image< DestType > lowPass5yDecY (nrt::Image< PixType > const &src, int const factor=2)
 Low-pass filter, Anderson's 5x5 separable, applied in Y, and Y decimated by factor.
 
template<class PixType >
Image< PixType > flipVertical (const Image< PixType > &src)
 Flip an image vertically, so that the top row becomes the bottom row.
 
template<class PixType >
Image< PixType > flipHorizontal (const Image< PixType > &src)
 Flip an image horizontally, so that the left column becomes the right column.
 
template<NRT_PROMOTE_PIX(void) >
Image< DestType > shiftImage (Image< PixType > const src, float const dx, float const dy)
 Shift an image by a non-integer displacement (float dx, float dy)
 
template<class PixType >
Image< PixType > shiftClean (Image< PixType > const src, int const dx, int const dy, PixType bgval=PixType(0))
 Shift an image by an integer displacement (int dx, int dy), without wraparound.
 
template<NRT_PROMOTE_PIX(void) >
Image< DestType > rotate (Image< PixType > const src, Point2D< int32 > const p, const float angRad)
 Rotate an Image about the point p by the angle angRad(in Radians) More...
 
template<NRT_PROMOTE_PIX(void) >
Image< DestType > rotate (Image< PixType > const src, const float angRad)
 Rotate an Image about its center by the angle angRad(in Radians) More...
 
PointCloud2::Geometry computeCentroid (PointCloud2 const input)
 Computes a 3D centroid from the geometry in a point cloud. More...
 
PointCloud2::Geometry computeCentroid (PointCloud2 const input, Indices const subset)
 Computes a 3D centroid from the geometry in a point cloud subset. More...
 
PointCloud2::Matrix3 computeCovariance (PointCloud2 const input, bool normalize=false)
 Computes the covariance matrix for 3d geometry in a point cloud. More...
 
PointCloud2::Matrix3 computeCovariance (PointCloud2 const input, PointCloud2::Geometry const &centroid, bool normalize=false)
 Computes the covariance matrix for 3d geometry in a point cloud. More...
 
PointCloud2::Matrix3 computeCovariance (PointCloud2 const input, Indices const subset, bool normalize=false)
 Computes the covariance matrix for 3d geometry in a point cloud subset. More...
 
PointCloud2::Matrix3 computeCovariance (PointCloud2 const input, Indices const subset, PointCloud2::Geometry const &centroid, bool normalize=false)
 Computes the covariance matrix for 3d geometry in a point cloud subset. More...
 
std::pair
< PointCloud2::Matrix3,
PointCloud2::Geometry
computeCovarianceAndCentroid (PointCloud2 const input)
 Computes the normalized covariance and centroid in one step. More...
 
std::pair
< PointCloud2::Matrix3,
PointCloud2::Geometry
computeCovarianceAndCentroid (PointCloud2 const input, Indices const subset)
 Computes the normalized covariance and centroid in one step for a subset. More...
 
void solvePlaneParameters (PointCloud2::Matrix3 const &covariance, PointCloud2::Geometry const &point, Optional< PointCloud2::Vector4 & > planeParameters=OptionalEmpty, Optional< PointCloud2::Vector3 & > variation=OptionalEmpty, Optional< PointCloud2::Matrix3 & > eigenVectors=OptionalEmpty)
 
PointCloud2 demeanPointCloud (PointCloud2 const input, PointCloud2::Geometry const &centroid)
 Subtracts a centroid from a point cloud. More...
 
template<class Field >
PointCloud2 demeanPointCloud (PointCloud2 const input, Field const &centroid)
 Subtracts a centroid from a specific field in a point cloud. More...
 
PointCloud2 transformPointCloud (PointCloud2 const input, PointCloud2::AffineTransform const &transform)
 Apply a transformation, creating a new point cloud. More...
 
PointCloud2 transformPointCloud (PointCloud2 const input, Indices const indices, PointCloud2::AffineTransform const &transform)
 Apply a transformation to a subset, creating a new point cloud. More...
 
void transformPointCloudInPlace (PointCloud2 &input, PointCloud2::AffineTransform const &transform)
 Apply a transformation in place. More...
 
void transformPointCloudInPlace (PointCloud2 &input, Indices const indices, PointCloud2::AffineTransform const &transform)
 Apply a transformation in place to a subset. More...
 
PointCloud2 transformPointCloudWithNormals (PointCloud2 const input, PointCloud2::AffineTransform const &transform)
 Apply a transformation to the geometry and rotation to the normals, creating a new point cloud. More...
 
void transformPointCloudWithNormalsInPlace (PointCloud2 &input, PointCloud2::AffineTransform const &transform)
 Apply a transformation to the geometry and rotation to the normals, in place. More...
 
template<class T >
std::size_t cloudHash ()
 Computes a hash from a type.
 
template<class Feature >
PointCloud2 computePointCloudFeatures (PointCloud2 const input, Feature &&feature)
 Compute some type of feature for a point cloud. More...
 
template<class Feature >
PointCloud2 computePointCloudFeatures (PointCloud2 const input, Indices const indices, Feature &&feature)
 Compute some type of feature for a point cloud subset. More...
 
template<class Filter >
PointCloud2 filterPointCloud (PointCloud2 const input, Filter &&filter)
 Filter a point cloud using some filter. More...
 
template<class Filter >
PointCloud2 filterPointCloud (PointCloud2 const input, Indices const indices, Filter &&filter)
 Filter a point cloud subset using some filter. More...
 
template<class Filter , class... FilterArgs>
PointCloud2 filterPointCloud (PointCloud2 const input, Filter &&filter, FilterArgs &&...args)
 
template<class Filter , class... FilterArgs>
PointCloud2 filterPointCloud (PointCloud2 const input, Indices const indices, Filter &&filter, FilterArgs &&...args)
 
template<class Field , class Filter >
PointCloud2 filterPointCloud (PointCloud2 const input, Filter &&filter)
 Filter a specific dense or sparse field of a cloud using some filter. More...
 
template<class Field , class Filter >
PointCloud2 filterPointCloud (PointCloud2 const input, Indices const indices, Filter &&filter)
 Filter a specific dense or sparse field of a cloud subset using some filter. More...
 
template<class Field , class Filter , class... FilterArgs>
PointCloud2 filterPointCloud (PointCloud2 const input, Filter &&filter, FilterArgs &&...args)
 
template<class Field , class Filter , class... FilterArgs>
PointCloud2 filterPointCloud (PointCloud2 const input, Indices const indices, Filter &&filter, FilterArgs &&...args)
 
template<class T >
PointCloud2 depthToPointCloud (Image< PixGray< T >> const depthImage, float focalLength, const bool keepNaN=true)
 Converts a depth image to a point cloud. More...
 
template<class T1 , class T2 >
PointCloud2 depthToPointCloud (Image< PixRGBD< T1, T2 >> const depthImage, float focalLength, const bool keepNaN=true)
 Converts a depth image with color data to a point cloud. More...
 
template<class T1 , class T2 >
PointCloud2 depthToPointCloud (Image< PixRGB< T1 >> const rgbImage, Image< PixGray< T2 >> const depthImage, float focalLength, const bool keepNaN=true)
 Converts a depth image with color data to a point cloud, version for split RGB and Depth data. More...
 
 NRT_DEFINE_ENUM_CLASS (PointCloudSearchMethod,(knn)(radius))
 
template<class Field >
constexpr bool is_state_field ()
 
template<class Field1 , class Field2 >
constexpr bool are_state_fields ()
 
template<class Group >
constexpr bool is_state_field_group ()
 
template<class Group1 , class Group2 >
constexpr bool are_state_field_groups ()
 
 NRT_DECLARE_MESSAGE (TransformLookupMessage)
 
 NRT_DECLARE_MESSAGE (TransformMessage)
 
std::ostream & operator<< (std::ostream &out, nrt::TransformMessage const &msg)
 Human-readable output to a stream: outputs fromFrameId -> toFrameId (x,y,z)
 
 NRT_DECLARE_MESSAGE (VelocityMessage)
 A message to specify translational and rotational velocities. More...
 
 NRT_DECLARE_MESSAGESUBSCRIBER_PORT (DesiredValuePort, nrt::Message< double >, void,"The desired value for the control loop")
 
 NRT_DECLARE_MESSAGESUBSCRIBER_PORT (ObservedValuePort, nrt::Message< double >, void,"The raw observed value to be used for the control loop")
 
 NRT_DECLARE_MESSAGEPOSTER_PORT (OutputValuePort, nrt::Message< double >, void,"The control loop output")
 
template<class T >
Layout< T > vcat (nrt::Image< T > p1, nrt::Image< T > p2)
 Convenience functions for vertical Layout concatenation. More...
 
template<class T >
Layout< T > vcat (nrt::Image< T > p1, Layout< T > const &p2)
 Vertically concatenate an Image and a Layout.
 
template<class T >
Layout< T > vcat (Layout< T > const &p1, nrt::Image< T > p2)
 Vertically concatenate a Layout and an Image.
 
template<class T >
Layout< T > vcat (Layout< T > const &p1, Layout< T > const &p2)
 Vertically concatenate two Layout objects.
 
template<class T >
Layout< T > vcat (Layout< T > const &p1, Layout< T > const &p2, Layout< T > const &p3)
 Vertically concatenate three Layout objects.
 
template<class T >
Layout< T > vcat (nrt::ImageSet< T > const imgs)
 Vertically concatenate a set of Image objects.
 
template<class T >
Layout< T > arrcat (nrt::ImageSet< T > imgs, int32 const nx)
 Convenience functions for combination h/v array Layout concatenation. More...
 
void computeMinMax (PointCloud2 const input, PointCloud2::Geometry &min, PointCloud2::Geometry &max)
 Computes the minimum and maximum values for point cloud geometry.
 
template<class Field >
void computeMinMax (PointCloud2 const input, Field &min, Field &max)
 Computes the minimum and maximum values for a specifc field type. More...
 

Variables

int currentLogLevel
 Current log level, default is 6 (LOG_INFO) More...
 

Typedef Documentation

typedef Factory< std::function<void(GenericImage const,std::string const&)>, std::string, std::function<std::function<void(GenericImage const, std::string const&)>)>, std::map<std::string, std::string> > nrt::ImageWriterFactory

A Singleton Factory used to keep track of image writers used by writeImage().

Developers who wish to create their own image writer methods should register them with the NRT_REGISTER_IMAGE_WRITER macro so that they may be recognized by writeImage()

Definition at line 54 of file ImageWriter.H.

typedef Factory< std::shared_ptr<VideoWriterBase>, std::string, std::function<std::shared_ptr<VideoWriterBase>)> > nrt::VideoWriterFactory

A Singleton Factory used to keep track of video writers used by VideoSink.

Developers who wish to create their own video writer classes should register them with the NRT_REGISTER_VIDEO_WRITER(CLASSNAME) macro so that they may be recognized by VideoSink

See Also
VideoReaderBase
VideoSink
ImageSink

Definition at line 93 of file VideoWriterBase.H.

typedef Factory< std::function<GenericImage(std::string const&)>, std::string, std::function<std::function<GenericImage(std::string const&)>)>, std::map<std::string, std::string> > nrt::ImageReaderFactory

A Singleton Factory used to keep track of image readers used by readImage().

Developers who wish to create their own image reader methods should register them with the NRT_REGISTER_IMAGE_READER macro so that they may be recognized by readImage()

Definition at line 53 of file ImageReader.H.

typedef Factory< std::shared_ptr<VideoReaderBase>, std::string, std::function<std::shared_ptr<VideoReaderBase>)>, std::map<std::string, std::string> > nrt::VideoReaderFactory

A Singleton Factory used to keep track of video writers used by VideoSink.

Developers who wish to create their own video writer classes should register them with the NRT_REGISTER_VIDEO_WRITER(CLASSNAME) macro so that they may be recognized by VideoSink

See Also
VideoReaderBase
VideoSource
ImageSource

Definition at line 108 of file VideoReaderBase.H.

Enumeration Type Documentation

template<class T, uint32 Flags = 0>
enum ImageInitPolicy
related

Initialization policy for the pixels inside an Image, used during construction of the Image.

Enumerator
Zeros 

Fill the image with all zeros. This costs some CPU.

None 

No initialization of each pixel. This saves some CPU.

Definition at line 59 of file Image.H.

template<class T, uint32 Flags = 0>
enum ImageFlags : uint32
related

Flags to control the behavior of Images.

You can pass combinations of flags to an Image using the bitwise 'or' operator:

// Construct an Image that will check for out-of-bounds pixel access, but won't check for shared memory.
Image<PixGray<byte>, SafeAccess | UniqueAccess> myImage;
Enumerator
SafeAccess 

Image coordinate access will be checked, and an exception will be thrown if you try to access a pixel which is out of bounds. If you don't set this flag, then you will be on your own to ensure that you don't try to access pixels outside of the Image (as doing so may result in a segfault). However, SafeAccess comes with a big performance hit, so we recommend you only use it when debugging

UniqueAccess 

Image reference counting will not be checked during pixel level access. If you are sure that you have the only copy of your image data (and have full understanding of the copy-on-write behavior!), then you can declare your Image with the UniqueAccess flag. A good practice is to always call Image::deepCopy() before making a UniqueAccess alias of an Image.

For Example:

Image<PixRGB<byte>> myImage;
// ... Do some processing ...
// Make a UniqueAccess alias of myImage. Notice that we make a deep-copy of myImage before we do this,
// ensuring that we hold a unique reference to the underlying memory.
myImage.deepCopy();
Image<PixRGB<byte>, UniqueAccess> myUniqueImage = myImage;
// Now, we can mess around with myUniqueImage and all pixel operations will be very fast, as they won't perform
// any checks to ensure that we aren't sharing our memory with any other Images.
for(int y=0; y<myUniqueImage.height(); y++)
for(int x=0; x<myUniqueImage.width(); x++)
myUniqueImage(x,y) = ...

Definition at line 74 of file Image.H.

Function Documentation

nrt::NRT_DECLARE_MESSAGE ( TimeStampMessage  )

The time

Construct a timestamp message from an nrt::Time

Serialization

Definition at line 42 of file TimeStampMessage.H.

void nrt::writeImage ( GenericImage const  img,
std::string const &  filename 
)

Write the image file found at the given filename.

This method is the best way for users to write images to files. When given a filename, this method will ensure that the path exists, and will then attempt to write the image using an appropriate image writer method found by querying the ImageWriterFactory.

GenericImage const nrt::readImage ( std::string const &  filename)

Read the image file found at the given filename.

This method is the best way for users to read images from files. When given a filename, this method will ensure that the file exists, and will then attempt to read the image using an appropriate image reader method found by querying the ImageReaderFactory.

Examples:
tests/test-ImageReader.C.
template<class Feature >
PointCloud2 nrt::computePointCloudFeatures ( PointCloud2 const  input,
Feature &&  feature 
)

Compute some type of feature for a point cloud.

Template Parameters
FeatureThe feature extraction class
Parameters
inputThe point cloud to filter
featureThe parameterized feature method to apply to the input
Returns
The point cloud with features added depending on the method
template<class Feature >
PointCloud2 nrt::computePointCloudFeatures ( PointCloud2 const  input,
Indices const  indices,
Feature &&  feature 
)

Compute some type of feature for a point cloud subset.

Template Parameters
FeatureThe feature extraction class
Parameters
inputThe point cloud to filter
indicesThe subset to consider
featureThe parameterized feature method to apply to the input
Returns
The point cloud with features added depending on the method
template<class T >
PointCloud2 nrt::depthToPointCloud ( Image< PixGray< T >> const  depthImage,
float  focalLength,
const bool  keepNaN = true 
)

Converts a depth image to a point cloud.

This will create a geometry only point cloud based upon the depth image and its device parameters.

The coordinate system of the returned cloud will be EAST-NORTH-UP, that is moving forward will be positve Y, moving upwards will be positive Z, and moving horizontally to the right will be positive X.

Invalid range readings should be marked by a quiet_NaN. The default behavior is to keep nans in the final point cloud to preserve the structure of the depth image.

Template Parameters
TThe base type for the pixels
Parameters
depthImageThe depth image
focalLengthThe focal length of the depth device in pixels
keepNaNWhether invalid (nan) pixels in the depth image should be kept in the point cloud
Returns
A point cloud representation of the depth image
Examples:
tests/test-PointCloud2OpenNI.C.
template<class T1 , class T2 >
PointCloud2 nrt::depthToPointCloud ( Image< PixRGBD< T1, T2 >> const  depthImage,
float  focalLength,
const bool  keepNaN = true 
)

Converts a depth image with color data to a point cloud.

This will create a geometry and PixRGB<T1> (as a dense field) point cloud based upon the depth image and its device parameters. The depth image should be properly registered.

The coordinate system of the returned cloud will be EAST-NORTH-UP, that is moving forward will be positve Y, moving upwards will be positive Z, and moving horizontally to the right will be positive X.

Invalid range readings should be marked by a quiet_NaN. The default behavior is to keep nans in the final point cloud to preserve the structure of the depth image.

Template Parameters
T1The base type for the rgb pixels
T2The base type for the depth pixels
Parameters
depthImageThe depth (and color) image.
focalLengthThe focal length (in pixels) of whichever sensor the data is registered to.
keepNaNWhether invalid (nan) pixels in the depth image should be kept in the point cloud
Returns
A point cloud representation of the depth image
template<class T1 , class T2 >
PointCloud2 nrt::depthToPointCloud ( Image< PixRGB< T1 >> const  rgbImage,
Image< PixGray< T2 >> const  depthImage,
float  focalLength,
const bool  keepNaN = true 
)

Converts a depth image with color data to a point cloud, version for split RGB and Depth data.

This will create a geometry and PixRGB<T1> (as a dense field) point cloud based upon the depth image and its device parameters. The depth image should be properly registered.

The coordinate system of the returned cloud will be EAST-NORTH-UP, that is moving forward will be positve Y, moving upwards will be positive Z, and moving horizontally to the right will be positive X.

Invalid range readings should be marked by a quiet_NaN. The default behavior is to keep nans in the final point cloud to preserve the structure of the depth image.

Template Parameters
T1The base type for the rgb pixels
T2The base type for the depth pixels
Parameters
rgbImageThe color image. Dims must match between color and depth images.
depthImageThe depth image.
focalLengthThe focal length (in pixels) of whichever sensor the data is registered to.
keepNaNWhether invalid (nan) pixels in the depth image should be kept in the point cloud
Returns
A point cloud representation of the depth image
nrt::NRT_DECLARE_MESSAGE ( VelocityMessage  )

A message to specify translational and rotational velocities.

In general, this message is used to generate motor commands in robot driver modules. If any axes which are not implemented by the robot driver are non-zero, then the robot driver should ignore those requests. The linear velocity components should be specified in meters/second, and the angular velocity components should be specified in radians/second.

The coordinate system which robot drivers should implement is as follows:

  • linear.x: Move Forwards
  • linear.y: Strafe Left
  • linear.z: Fly Upwards
  • angular.x: Roll Right
  • angular.y: Pitch Up
  • angular.z: Yaw Right

< The linear component

< The angular component

Empty constructor (Velocities are set to zeros)

Construct from a linear and angular velocity

Definition at line 55 of file VelocityMessage.H.