NAP
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
ServiceObjectGraphItem Class Reference

#include <nap/serviceobjectgraphitem.h>

Public Types

using Type = Service *
 

Public Member Functions

 ServiceObjectGraphItem ()=default
 
 ~ServiceObjectGraphItem ()=default
 
const std::string getID () const
 
bool getPointees (std::vector< ServiceObjectGraphItem > &pointees, utility::ErrorState &errorState)
 

Static Public Member Functions

static const ServiceObjectGraphItem create (Service *service, std::vector< Service * > *services)
 

Public Attributes

ServicemObject = nullptr
 
std::vector< Service * > * mServices = nullptr
 

Description

Service item that can be used in an ObjectGraph This item wraps a service that points to another set of services

Collaboration diagram for ServiceObjectGraphItem:
[legend]

Member Typedef Documentation

◆ Type

using Type = Service*

Constructor & Destructor Documentation

◆ ServiceObjectGraphItem()

◆ ~ServiceObjectGraphItem()

~ServiceObjectGraphItem ( )
default

Member Function Documentation

◆ create()

static const ServiceObjectGraphItem create ( Service service,
std::vector< Service * > *  services 
)
static

Creates a new item that is used to build the graph

Parameters
servicethe service to create the item for
servicesall available services

◆ getID()

const std::string getID ( ) const
Returns
the id associated with this graph item

◆ getPointees()

bool getPointees ( std::vector< ServiceObjectGraphItem > &  pointees,
utility::ErrorState errorState 
)

Performs the traversal of services Every service can reference another service, based on those dependencies the graph is constructed

Parameters
pointeesOutput parameter, contains all objects and files this object points to.
errorStateIf false is returned, contains information about the error.
Returns
true is succeeded, false otherwise.

Member Data Documentation

◆ mObject

Service* mObject = nullptr

◆ mServices

std::vector<Service*>* mServices = nullptr