librtl

parse.h

This is the verbatim text of the parse.h include file.
#ifndef parse_h
#define parse_h

#include "rtl.h"


class rtl_parse
{
public:


    rtl_parse( rtl_world* );
    

    void parseScene( istream& );
    

    int w, h;


    int mins, maxs;


    jColour bg;

    
protected:

    virtual void parse( istream&, const char* );

    rtl_world* scene;
    bool verbose;
    
    static const int pNull;

    static const int pIdentity;
    static const int pTranslate;
    static const int pScale;
    static const int pRotate;
    static const int pLookat;
    static const int pModelview;
    
    static const int pPush;
    static const int pPop;
    static const int pUnion;
    static const int pIntersection;
    static const int pDifference;
    static const int pEnd;
    static const int pSphere;
    static const int pCylinder;
    static const int pCone;
    static const int pInfCylinder;
    static const int pInfCone;
    static const int pBox;
    static const int pTorus;
    static const int pSuperEllipsoid;
    static const int pPlane;
    static const int pFloor;
    static const int pSoftObject;
    static const int pPolyhedron;

    static const int pMaterial;
    static const int pMatColour;
    
    static const int pTexTurbulence;
    static const int pTexCheckers;
    static const int pTexTiles;
    static const int pTextureMap;
    
    static const int pLight;
    static const int pSphericalLight;
    
    static const int pFOV;
    static const int pResolution;
    static const int pBackground;
    static const int pSamples;
    static const int pShadows;
    static const int pRecursion;
    static const int pVoxelMaxObjects;
    static const int pVoxelMaxDepth;
    
    static const int pUnknown;
    static const int pVerbose;

    int keyword( char* );

    jFlt parseFlt( istream& );
    jInt parseInt( istream& );
    
    rtl_object* parseSoftObject( istream& );
    rtl_object* parsePolyhedron( istream& );
    rtl_material* parseMaterialParams( istream& );
    rtl_material* parseMaterial( istream& );
};

#endif

JSP / librtl v0.2 mtigges@cpsc.ucalgary.ca