trick/trick_source/codegen/Interface_Code_Gen/PrintFileContents13.hh

58 lines
1.5 KiB
C++
Raw Normal View History

2015-02-26 15:02:31 +00:00
#ifndef PRINTFILECONTENTS13_HH
#define PRINTFILECONTENTS13_HH
2015-02-26 15:02:31 +00:00
#include <string>
#include <vector>
#include <map>
#include <set>
#include "PrintFileContentsBase.hh"
/**
This class prints Trick 13 style io_src code. The print command is called when
the container class has added all of the classes and enumerations to this class
to print.
@author somebody
@date July 2012
*/
class PrintFileContents13 : public PrintFileContentsBase {
public:
PrintFileContents13() ;
/** Prints the io_src header information */
virtual void printIOHeader(std::ofstream & outfile , std::string header_file_name) ;
std::string enumeration_identifier( EnumValues * e );
/** Prints enumeration attributes */
void print_enum_attr(std::ofstream & outfile , EnumValues * in_enum) ;
std::string bit_field_getter_name(ClassValues * c, FieldDescription * f);
std::string bit_field_setter_name(ClassValues * c, FieldDescription * f);
std::string class_identifier( ClassValues * c ) ;
/** Prints attributes for a field */
void print_field_attr(std::ofstream & outfile , ClassValues * c, FieldDescription * fv ) ;
/** Prints class attributes */
void print_class_attr(std::ofstream & outfile , ClassValues * in_class) ;
/** Prints attributes for a class */
virtual void printClass(std::ofstream & outfile , ClassValues * cv) ;
/** Prints attributes for an enum */
virtual void printEnum(std::ofstream & outfile , EnumValues * ev) ;
} ;
#endif