Atoms Crowd
7.0.0
ConditionValue.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/BlackboardValue.h>
11
#include <Atoms/BehaviourTree/Behaviour.h>
12
13
namespace
Atoms
14
{
15
class
ConditionValue
16
{
17
public
:
18
19
enum
CheckType
20
{
21
EQUAL = 0,
22
GREATER,
23
LESS,
24
GREATEREQUAL,
25
LESSEQUAL
26
};
27
28
ConditionValue
();
29
30
~
ConditionValue
();
31
32
bool
checkCondition(
BehaviourTreeContext
* context,
Behaviour::State
* data);
33
34
void
setAttributes(
const
AtomsCore::MapMetadata
* attributes,
Blackboard
* blackboard);
35
36
void
getAttributes(
AtomsCore::MapMetadata
* attributes,
Blackboard
* blackboard);
37
38
void
getAttributeProperties(
AtomsCore::MapMetadata
* attributes);
39
40
public
:
41
42
BlackboardMetadataValue
value1;
43
BlackboardMetadataValue
value2;
44
float
threshold;
45
unsigned
short
checkType;
46
bool
invert;
47
48
};
49
}
Atoms::BehaviourTreeContext
Definition:
BehaviourTreeContext.h:24
Atoms::Blackboard
Definition:
Blackboard.h:35
Atoms::BlackboardValue< AtomsPtr< AtomsCore::Metadata > >
Atoms::ConditionValue
Definition:
ConditionValue.h:16
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
ConditionValue.h