diff options
Diffstat (limited to 'CIAO/CIDLC/ExecImplGenerator.hpp')
-rw-r--r-- | CIAO/CIDLC/ExecImplGenerator.hpp | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/CIAO/CIDLC/ExecImplGenerator.hpp b/CIAO/CIDLC/ExecImplGenerator.hpp new file mode 100644 index 00000000000..51536b3aaa3 --- /dev/null +++ b/CIAO/CIDLC/ExecImplGenerator.hpp @@ -0,0 +1,44 @@ +// file : CIDLC/ExecImplGenerator.hpp +// author : Jeff Parsons <j.parsons@vanderbilt.edu> +// cvs-id : $Id$ + +#ifndef EXEC_IMPL_GENERATOR_HPP +#define EXEC_IMPL_GENERATOR_HPP + +#include "CCF/CodeGenerationKit/CommandLine.hpp" +#include "CCF/CodeGenerationKit/CommandLineDescriptor.hpp" + +#include "CCF/CIDL/SemanticGraph.hpp" +#include "CCF/CIDL/Traversal.hpp" + +class ExecImplGenerator +{ +public: + static void + options (CL::Description& d); + + ExecImplGenerator (CommandLine const& cl); + + void + generate (CCF::CIDL::SemanticGraph::TranslationUnit&, + fs::path const& file); + +private: + void + compute_export_macro (const fs::path& file_path); + + std::ostream& + configure_stream (std::string const& suffix_option, + std::string const& default_suffix, + std::string const& regex_option, + fs::ofstream& ofs); + +private: + CommandLine const& cl_; + std::string file_name_; + std::string export_macro_; +}; + + +#endif // EXEC_IMPL_GENERATOR_HPP + |