WSF
WsfOpticalSignatureTypes.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 WSFOPTICALSIGNATURETYPES_HPP
13#define WSFOPTICALSIGNATURETYPES_HPP
14
15#include "wsf_mil_export.h"
16
17#include "WsfObjectTypeList.hpp"
19
20class WsfOpticalSignatureTypes : public WsfObjectTypeList<WsfOpticalSignature>
21{
22public:
24
25 static WSF_MIL_EXPORT WsfOpticalSignatureTypes& Get(WsfScenario& aScenario);
26 static WSF_MIL_EXPORT const WsfOpticalSignatureTypes& Get(const WsfScenario& aScenario);
28
30
31 bool InitializeType(WsfOpticalSignature* aTypePtr) override;
32
34
35 using FactoryPtr = WsfOpticalSignature* (*)(const std::string&);
36 WSF_MIL_EXPORT void AddObjectFactory(FactoryPtr aFactoryPtr);
37
38 WsfOpticalSignature* ObjectFactory(const std::string& aTypeName);
40
41private:
42 using ObjectFactoryList = std::vector<FactoryPtr>;
43 ObjectFactoryList mObjectFactoryList;
44};
45
46#endif
WsfObjectTypeList(WsfScenario &aScenario, unsigned int aFlags, const std::string &aBlockName)
Definition WsfObjectTypeList.hpp:76
WSF_MIL_EXPORT void AddObjectFactory(FactoryPtr aFactoryPtr)
Definition WsfOpticalSignatureTypes.cpp:54
WsfOpticalSignature * ObjectFactory(const std::string &aTypeName)
bool InitializeType(WsfOpticalSignature *aTypePtr) override
Definition WsfOpticalSignatureTypes.cpp:45
static WSF_MIL_EXPORT WsfOpticalSignatureTypes & Get(WsfScenario &aScenario)
Return a modifiable reference to the type list associated with the specified scenario.
Definition WsfOpticalSignatureTypes.cpp:20
WsfOpticalSignature *(*)(const std::string &) FactoryPtr
Definition WsfOpticalSignatureTypes.hpp:35
WsfOpticalSignatureTypes(WsfScenario &aScenario)
Definition WsfOpticalSignatureTypes.cpp:33
An object that represents the optical signature of a platform.
Definition WsfOpticalSignature.hpp:27
Contains the data required to create a simulation, and acts as the entry point for input file process...
Definition WsfScenario.hpp:111
Copyrights Multiple, All Rights Reserved