HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PDG_ServiceTypes.h File Reference
#include <UT/UT_Array.h>
#include <UT/UT_SharedPtr.h>
#include <UT/UT_UniquePtr.h>
+ Include dependency graph for PDG_ServiceTypes.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

using PDG_ServicePtr = UT_SharedPtr< PDG_Service >
 Type def for registered type objects. More...
 
using PDG_ServiceClientPtr = UT_UniquePtr< PDG_ServiceClient >
 Type def for service clients. More...
 
using PDG_ServiceClientArray = UT_Array< PDG_ServiceClientPtr >
 

Enumerations

enum  PDG_ServiceBlockCookType { PDG_ServiceBlockCookType::eNever, PDG_ServiceBlockCookType::eMatch, PDG_ServiceBlockCookType::eAlways }
 Enumeration of service block cook modes. More...
 
enum  PDG_ServiceResetWhen { PDG_ServiceResetWhen::eNone = 0x0, PDG_ServiceResetWhen::eBeforeCook = 0x1, PDG_ServiceResetWhen::eAfterCook = 0x2, PDG_ServiceResetWhen::eBoth = 0x3 }
 When service clients should be reset. More...
 
enum  PDG_ServiceResetType { PDG_ServiceResetType::eNone, PDG_ServiceResetType::eReset, PDG_ServiceResetType::eRestart }
 
enum  PDG_ServiceOwner { PDG_ServiceOwner::eScheduler, PDG_ServiceOwner::eSession }
 Enumeration of the different types of service owner. More...
 
enum  PDG_ServiceSchedulerType { PDG_ServiceSchedulerType::eDefault, PDG_ServiceSchedulerType::eFirstType, PDG_ServiceSchedulerType::eInstance }
 
enum  PDG_ServiceState {
  PDG_ServiceState::eStopped, PDG_ServiceState::eStopping, PDG_ServiceState::eStarting, PDG_ServiceState::eRunning,
  PDG_ServiceState::eError
}
 Enumeration of the different states that a service can be in. More...
 
enum  PDG_ServiceLogType { PDG_ServiceLogType::eNone, PDG_ServiceLogType::eStdout, PDG_ServiceLogType::eFile }
 Enumeration of service log types. More...
 
enum  PDG_ServiceStartResult { PDG_ServiceStartResult::eError, PDG_ServiceStartResult::eSuccess, PDG_ServiceStartResult::eRunning, PDG_ServiceStartResult::eConnecting }
 Enumeration of possible result values from starting a service. More...
 
enum  PDG_ServiceAcquireResult {
  PDG_ServiceAcquireResult::eSuccess, PDG_ServiceAcquireResult::eSuccessLocked, PDG_ServiceAcquireResult::eBusy, PDG_ServiceAcquireResult::eLocked,
  PDG_ServiceAcquireResult::eInvalidLock, PDG_ServiceAcquireResult::eNoActiveClients
}
 Enumeration of return codes when acquiring a service client. More...
 

Typedef Documentation

Type def for service clients.

Definition at line 23 of file PDG_ServiceTypes.h.

Type def for registered type objects.

Definition at line 20 of file PDG_ServiceTypes.h.

Enumeration Type Documentation

Enumeration of return codes when acquiring a service client.

Enumerator
eSuccess 

A service client was successfully acquired.

eSuccessLocked 

A service client was successfully acquired and locked.

eBusy 

All service workers are already busy.

eLocked 

The service worker is aleady in use by a different task with the same service lock id

eInvalidLock 

The service lock is invalid – should never occur in practice.

eNoActiveClients 

The service has no available clients, typically due to some kind of fatal error during start-up

Definition at line 151 of file PDG_ServiceTypes.h.

Enumeration of service block cook modes.

Enumerator
eNever 

Work items will never cook using the service associated with the parent block

eMatch 

Work items will cook the parent block's service if it matches the service name for the node

eAlways 

Work items will always use the parent block's service.

Definition at line 27 of file PDG_ServiceTypes.h.

enum PDG_ServiceLogType
strong

Enumeration of service log types.

Enumerator
eNone 

The service does not do any logging – stdout is routed to /dev/null

eStdout 

The service logs to stdout.

eFile 

The service logs to a file on disk.

Definition at line 121 of file PDG_ServiceTypes.h.

enum PDG_ServiceOwner
strong

Enumeration of the different types of service owner.

Enumerator
eScheduler 

The service is owned by a scheduler, which means it will be tied to the lifetime of the scheduler node(s).

eSession 

The service is owned by the session, which means it will be stopped only if stopped by the user or Houdini is closed.

Definition at line 72 of file PDG_ServiceTypes.h.

enum PDG_ServiceResetType
strong

Service client reset operation, performed each time work items acquire a new client.

Enumerator
eNone 

The service client is not reset.

eReset 

The service client is sent the "reset" command.

eRestart 

The service client process is restarted.

Definition at line 59 of file PDG_ServiceTypes.h.

enum PDG_ServiceResetWhen
strong

When service clients should be reset.

Enumerator
eNone 

The service client is not reset.

eBeforeCook 

The service client is reset at the start of a work item or block cook.

eAfterCook 

The service client is reset at the end of a work item or block cook.

eBoth 

The service is reset at the beginning and end of a cook.

Definition at line 42 of file PDG_ServiceTypes.h.

Enumeration of the different types of scheduler services, which determines how the scheduler is found

Enumerator
eDefault 

The default scheduler for the graph is used to run service clients.

eFirstType 

The first scheduler of a specified scheduler type is used to run service clients

eInstance 

A specific scheduler is used to run service clients.

Definition at line 85 of file PDG_ServiceTypes.h.

Enumeration of possible result values from starting a service.

Enumerator
eError 

An error occured and the service was not started.

eSuccess 

The service was successfully started.

eRunning 

The service was already running.

eConnecting 

The service clients are connecting in the background.

Definition at line 135 of file PDG_ServiceTypes.h.

enum PDG_ServiceState
strong

Enumeration of the different states that a service can be in.

Enumerator
eStopped 
eStopping 
eStarting 
eRunning 
eError 

Definition at line 99 of file PDG_ServiceTypes.h.