WSF
WsfScriptPlatformListClass.hpp
Go to the documentation of this file.
1// ****************************************************************************
2// CUI
3//
4// The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
5//
6// Copyright 2003-2015 The Boeing Company. All rights reserved.
7//
8// The use, dissemination or disclosure of data in this file is subject to
9// limitation or restriction. See accompanying README and LICENSE for details.
10// ****************************************************************************
11
12#ifndef WSFSCRIPTPLATFORMLISTCLASS_HPP
13#define WSFSCRIPTPLATFORMLISTCLASS_HPP
14
15#include "wsf_export.h"
16
17#include "UtScriptBasicTypes.hpp"
18#include "WsfCommandChain.hpp"
19
23class WSF_EXPORT WsfScriptPlatformListClass : public UtScriptClass
24{
25public:
26 WsfScriptPlatformListClass(const std::string& aClassName, UtScriptTypes* aTypesPtr);
27
28 void Destroy(void* aObjectPtr) override;
29 std::string ToString(void* aObjectPtr) const override;
30 int EnumerateSize(void* aObjectPtr) override;
31 UtScriptData Enumerate(void* aObjectPtr, int aIndex) override;
36};
37
39{
40public:
41 WsfScriptPlatformListIteratorClass(const std::string& aClassName, UtScriptTypes* aTypesPtr);
43
44 void Destroy(void* aObjectPtr) override;
45
52
55 {
56 public:
57 Iterator(const WsfCommandChain::PlatformList* aPlatformListPtr);
58 virtual ~Iterator();
59
60 virtual bool HasNext();
61 virtual WsfPlatform* Next();
62
63 virtual bool HasPrev();
64 virtual WsfPlatform* Prev();
65
66 virtual int Key() const;
67 virtual WsfPlatform* Data() const;
68
69 private:
70 const WsfCommandChain::PlatformList* mPlatformListPtr;
71 int mCurrentKey;
72 WsfPlatform* mCurrentDataPtr;
73 };
74};
75
76#endif
ut::script::Data UtScriptData
Definition WsfScriptContext.hpp:47
#define WSF_EXPORT
Definition WsfXIO_Export.hpp:35
std::vector< WsfPlatform * > PlatformList
Definition WsfCommandChain.hpp:38
Platforms represent a entity within the simulation.
Definition WsfPlatform.hpp:115
std::string ToString(void *aObjectPtr) const override
Definition WsfScriptPlatformListClass.cpp:45
int EnumerateSize(void *aObjectPtr) override
Definition WsfScriptPlatformListClass.cpp:70
UT_DECLARE_SCRIPT_METHOD(GetIterator)
UtScriptData Enumerate(void *aObjectPtr, int aIndex) override
Definition WsfScriptPlatformListClass.cpp:76
WsfScriptPlatformListClass(const std::string &aClassName, UtScriptTypes *aTypesPtr)
Definition WsfScriptPlatformListClass.cpp:19
void Destroy(void *aObjectPtr) override
Definition WsfScriptPlatformListClass.cpp:39
virtual bool HasPrev()
Definition WsfScriptPlatformListClass.cpp:222
virtual WsfPlatform * Prev()
Definition WsfScriptPlatformListClass.cpp:228
virtual WsfPlatform * Data() const
Definition WsfScriptPlatformListClass.cpp:245
Iterator(const WsfCommandChain::PlatformList *aPlatformListPtr)
Definition WsfScriptPlatformListClass.cpp:189
virtual WsfPlatform * Next()
Definition WsfScriptPlatformListClass.cpp:211
virtual bool HasNext()
Definition WsfScriptPlatformListClass.cpp:200
virtual int Key() const
Definition WsfScriptPlatformListClass.cpp:239
void Destroy(void *aObjectPtr) override
Definition WsfScriptPlatformListClass.cpp:154
WsfScriptPlatformListIteratorClass(const std::string &aClassName, UtScriptTypes *aTypesPtr)
Definition WsfScriptPlatformListClass.cpp:136
Copyrights Multiple, All Rights Reserved