Atoms Crowd
7.0.0
SetAgentMetadataBehaviour.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/Behaviour.h>
11
#include <Atoms/BehaviourTree/BlackboardValue.h>
12
#include <Atoms/Agent.h>
13
14
namespace
Atoms
15
{
16
class
ATOMS_EXPORT
SetAgentMetadataBehaviour
:
public
Behaviour
17
{
18
public
:
19
20
SetAgentMetadataBehaviour
();
21
22
virtual
~
SetAgentMetadataBehaviour
();
23
24
virtual
const
char
* typeName()
const override
;
25
26
static
const
char
* staticTypeName();
27
28
virtual
void
initialize(
BehaviourTreeContext
* context,
State
* data)
override
;
29
30
virtual
void
update(
BehaviourTreeContext
* context,
State
* data)
override
;
31
32
virtual
void
releaseData(
BehaviourTreeContext
* context,
State
* data)
override
;
33
34
virtual
void
setAttributes(
const
AtomsCore::MapMetadata
* attributes,
Blackboard
* blackboard)
override
;
35
36
virtual
void
getAttributes(
AtomsCore::MapMetadata
* attributes,
Blackboard
* blackboard)
override
;
37
38
virtual
void
getAttributeProperties(
AtomsCore::MapMetadata
* attributes)
override
;
39
40
static
Behaviour
* creator();
41
42
private
:
43
44
Agent
* getAgent(
BehaviourTreeContext
* context,
State
* data);
45
46
public
:
47
48
BlackboardMetadataValue
value;
49
50
BlackboardStringValue
metadataName;
51
52
BlackboardStringValue
jointName;
53
54
BlackboardIntValue
agentId;
55
56
BlackboardBoolValue
isGlobalId;
57
58
BlackboardDoubleValue
interpolationTime;
59
60
bool
createMetadata;
61
};
62
}
Atoms::Agent
Agent.
Definition:
Agent.h:44
Atoms::Behaviour
Definition:
Behaviour.h:21
Atoms::BehaviourTreeContext
Definition:
BehaviourTreeContext.h:24
Atoms::Blackboard
Definition:
Blackboard.h:35
Atoms::BlackboardValue< AtomsPtr< AtomsCore::Metadata > >
Atoms::SetAgentMetadataBehaviour
Definition:
SetAgentMetadataBehaviour.h:17
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
Behaviours
SetAgentMetadataBehaviour.h