OTX-Runtime for C++  
IDocument.h
1 #ifndef OpenTestSystem_Otx_Runtime_Api_Otx_IDocument_H
2 #define OpenTestSystem_Otx_Runtime_Api_Otx_IDocument_H
3 
4 #include "ApiDefs.h"
5 
6 #include <string>
7 #include <vector>
8 #include <memory>
9 
10 namespace OpenTestSystem {
11  namespace Otx {
12  namespace Runtime {
13  namespace Api {
17  namespace Otx {
18  namespace Signature{
19  class ISignature;
20  }
21 
22  class IPackage;
23  class IProcedure;
24  class IContextVariable;
25  class IStateVariable;
29  class API_EXPORTS IDocument
30  {
31  public:
32  virtual ~IDocument() {}
33 
38  virtual std::string GetName() = 0;
39 
44  virtual std::string GetFullName() = 0;
45 
50  virtual std::string GetVersion() = 0;
51 
56  virtual std::string GetSpecification() = 0;
57 
62  virtual bool IsStartup() = 0;
63 
68  virtual std::shared_ptr<IPackage> GetPackage() = 0;
69 
74  virtual std::vector<std::shared_ptr<IProcedure>> GetProcedures() = 0;
75 
80  virtual std::shared_ptr<IProcedure> GetMainProcedure() = 0;
81 
86  virtual std::vector<std::shared_ptr<IContextVariable>> GetContextVariables() = 0;
87 
92  virtual std::vector<std::shared_ptr<IStateVariable>> GetStateVariables() = 0;
93 
98  virtual std::vector<std::shared_ptr<IDocument>> GetImports() = 0;
99 
103  virtual std::vector<std::shared_ptr<Signature::ISignature>> GetSignatures() = 0;
104  };
105  }
106  }
107  }
108  }
109 }
110 #endif
Represents an OTX ContextVariable.
Definition: IContextVariable.h:23
Represents an OTX.
Definition: IDocument.h:30
virtual std::vector< std::shared_ptr< Signature::ISignature > > GetSignatures()=0
Gets all Signatures.
virtual std::string GetFullName()=0
Gets Document full name.
virtual bool IsStartup()=0
Checks if the Document is the startup Document.
virtual std::vector< std::shared_ptr< IContextVariable > > GetContextVariables()=0
Gets all ContextVariables.
virtual std::vector< std::shared_ptr< IStateVariable > > GetStateVariables()=0
Gets all StateVariables.
virtual std::shared_ptr< IPackage > GetPackage()=0
Gets Package that contains the Document.
virtual std::shared_ptr< IProcedure > GetMainProcedure()=0
Gets main Procedure.
virtual std::string GetSpecification()=0
Gets Otx specification.
virtual std::string GetName()=0
Gets Document name.
virtual std::vector< std::shared_ptr< IProcedure > > GetProcedures()=0
Gets all Procedures.
virtual std::string GetVersion()=0
Gets Otx version.
virtual std::vector< std::shared_ptr< IDocument > > GetImports()=0
Gets all imported Documents. An imported Documents can also contain Imports in an arbitrary depth dep...
Contains Documents and child Packages.
Definition: IPackage.h:23
Represents an OTX Procedure.
Definition: IProcedure.h:15
Represents an OTX StateVariable.
Definition: IStateVariable.h:24
Represents an OTX signature.
Definition: ISignature.h:19
Namespace containing all objects related to testing inside automotive industry