Atoms Crowd
7.0.0
Optional.h
1
#pragma once
2
// ===========================================================================
3
// Copyright (c) 2015 Toolchefs Ltd. All rights reserved.
4
//
5
// Use of this software is subject to the terms of the Toolchefs license
6
// agreement provided at the time of installation or download, or which
7
// otherwise accompanies this software in either electronic or hard copy form.
8
// ===========================================================================
9
10
#include <Atoms/BehaviourTree/Decorator.h>
11
12
namespace
Atoms
13
{
14
class
ATOMS_EXPORT
Optional
:
public
Decorator
15
{
16
public
:
17
18
Optional
();
19
20
virtual
~
Optional
();
21
22
static
const
char
* staticTypeName();
23
24
virtual
const
char
* typeName()
const override
;
25
26
virtual
void
initialize(
BehaviourTreeContext
* context,
State
* data)
override
;
27
28
virtual
void
update(
BehaviourTreeContext
* context,
State
* data)
override
;
29
30
virtual
void
onChildUpdated(
BehaviourTreeContext
* context,
State
* data,
unsigned
int
childIndex,
unsigned
short
childStatus)
override
;
31
32
virtual
void
getAttributeProperties(
AtomsCore::MapMetadata
* attributes)
override
;
33
34
static
Behaviour
* creator();
35
36
public
:
37
38
};
39
}
Atoms::Behaviour
Definition:
Behaviour.h:21
Atoms::BehaviourTreeContext
Definition:
BehaviourTreeContext.h:24
Atoms::Decorator
Definition:
Decorator.h:16
Atoms::Optional
Definition:
Optional.h:15
AtomsCore::MapMetadata
MapMetadata class.
Definition:
MapMetadata.h:24
Atoms
Atoms namespace.
Definition:
Agent.h:29
Atoms::Behaviour::State
Definition:
Behaviour.h:34
Atoms
Public
Atoms
BehaviourTree
Decorators
Optional.h