All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
OP_OTLLibrary Class Reference

#include <OP_OTLLibrary.h>

+ Inheritance diagram for OP_OTLLibrary:

Public Types

enum  OP_ModTimeStatus {
- Public Types inherited from FS_IndexFile
typedef bool(* ConvertFunc )(const UT_StringHolder &src_path, const UT_WorkBuffer &in_data, UT_WorkBuffer &out_data)
typedef UT_ArrayStringMap
< ConversionFuncs

Public Member Functions

 OP_OTLLibrary ()
 OP_OTLLibrary (FS_Reader *reader)
 OP_OTLLibrary (const char *source, const char *metasrc)
 ~OP_OTLLibrary () override
const UT_StringHoldergetMetaSource () const
const UT_StringHoldergetSource () const
OP_ModTimeStatus getSourceModTime (time_t &mod_time, const char *type_name=NULL) const
bool addDefinition (const OP_OTLDefinition &definition, time_t modtime=time_t(-1))
bool removeDefinition (int index)
int getNumDefinitions () const
const OP_OTLDefinitiongetDefinition (int index) const
int getDefinitionIndex (const char *tablename, const char *opname) const
time_t getDefinitionModTime (int index) const
const UT_StringHoldergetDefinitionName (int index) const
const UT_StringHoldergetDefinitionOpTableName (int index) const
bool getDefinitionIsDummy (int index) const
bool getDefinition (int index, OP_OTLDefinition &definition) const
FS_IndexFileHandle getDefinitionIndexFile (const char *tablename, const char *opname) const
bool removeDefinitionSectionIfEmpty (int index, const char *definition_section)
void mergeLibrary (const OP_OTLLibrary &lib)
bool expandToDirectory (const char *destdir) override
bool collapseFromDirectory (const char *srcdir) override
void writeFile (std::ostream &os) const override
void setIsBeingRefreshed (bool beingrefreshed)
bool getIsBeingRefreshed () const
void beginCachingSourceModTime ()
void endCachingSourceModTime ()
bool getIsModTimeAccessOK () const
const UT_StringArraygetErrorMessages () const
- Public Member Functions inherited from FS_IndexFile
 FS_IndexFile ()
 Default constructor. More...
 FS_IndexFile (const char *source)
 FS_IndexFile (FS_Reader *reader, const char *source=nullptr)
virtual ~FS_IndexFile ()
bool hasSection (const UT_StringRef &section) const
bool hasTempSection (const UT_StringRef &section) const
bool hasRegularSection (const UT_StringRef &section) const
time_t getSectionModTime (const UT_StringRef &section) const
int getSectionDataSize (const UT_StringRef &section) const
bool readSection (const UT_StringRef &section, char *buffer) const
bool readSection (const UT_StringRef &section, UT_WorkBuffer &buffer) const
bool readOptionsSection (const UT_StringRef &section, UT_Options &options) const
void addSection (const UT_StringRef &section, const char *filename)
void addSection (const UT_StringRef &section, const UT_WorkBuffer &buf, time_t modtime=time_t(-1))
void addSection (const UT_StringRef &section, const char *buffer, int len, time_t modtime=time_t(-1))
void addSection (const UT_StringRef &section, const FS_IndexFile &file)
void modifySection (const UT_StringRef &section, const char *buffer, int len, time_t modtime=time_t(-1))
void modifySection (const UT_StringRef &section, const UT_WorkBuffer &buf, time_t modtime=time_t(-1))
void removeSection (const UT_StringRef &section)
void mergeIndexFile (const FS_IndexFile &file, bool overwrite)
void moveSections (int first, int last, int offset)
time_t getModTime () const
int64 getFileDataSize () const
void setFilters (FS_WriteFilterFactory *encrypt_factory, FS_IStreamFilterFactory *decrypt_factory)
FS_WriteFilterFactorygetEncryptionFilter () const
FS_IStreamFilterFactorygetDecryptionFilter () const
FS_SectiongetSection (const UT_StringRef &section) const
FS_ReadergetSectionReader (const UT_StringRef &section) const
FS_ReaderStreamgetSectionStream (const UT_StringRef &section) const
FS_ReaderStreamgetStreamCopy () const
FS_IndexFileHandle getIndexFileFromSection (const UT_StringRef &section, const char *source=nullptr) const
int getNumSections () const
const UT_StringHoldergetSectionName (int index) const
const UT_StringHoldergetSourceFile () const
const UT_StringHoldergetDescription () const
void setDescription (const UT_StringHolder &description)
exint guessStreamSize () const
bool isCopyProtected () const
 Tests if the index file is copy-protected. More...
bool isBlackBoxed () const
 Tests if the index file is black boxed. More...
bool isExpanded () const
 Tests if the index file is stored as expanded. More...
bool getSectionFileName (const char *section, UT_String &filename)

Static Public Member Functions

static bool forceOTLExtension (UT_String &filename)
static void getVexAndVflSectionNames (const char *suggestion, UT_String &vexsect, UT_String &vflsect)
static void getVexCodeSectionName (const char *prefix, UT_String &vex_code_sect)
 Constructs a valid VEX code section, with an optional prefix. More...
static bool createBackupFile (const char *filename, bool domove=false)
static bool isReservedSectionName (const UT_StringRef &sectname)
static const char * getEventName (int index)
static const UT_StringHoldergetEventSectionName (int index)
static const UT_StringHoldergetVexCodeSectionName (VEX_ContextType type)
static const UT_StringHoldergetVflCodeSectionName (VEX_ContextType type)
static const UT_StringHoldergetEncapsulatedVexSectionName (VEX_ContextType type)
static UT_StringHolder getShaderPathWithSection (const UT_StringRef &shader, VEX_ContextType type, UT_String *opname=nullptr)
static bool getFilenames (const UT_StringHolder &libfile, UT_StringArray &filenames)
static const char * getDefaultInstallMetaSource (const char *lib_path)
- Static Public Member Functions inherited from FS_IndexFile
static time_t getCurrentTime ()
static bool canWriteFile (const char *filename)
static bool registerConversionFuncs (const char *bin_file_pattern, const char *text_file_pattern, ConvertFunc to_text, ConvertFunc from_text)
static const ConversionListgetConversionsToText ()
static const ConversionListgetConversionsFromText ()

Additional Inherited Members

- Protected Member Functions inherited from FS_IndexFile
void setModified ()
exint writeHeader (std::ostream &os) const
- Static Protected Member Functions inherited from FS_IndexFile
static ConversionList_getConversionsToText ()
static ConversionList_getConversionsFromText ()
- Protected Attributes inherited from FS_IndexFile
UT_Lock myLock

Detailed Description

Definition at line 44 of file OP_OTLLibrary.h.

Member Enumeration Documentation


Definition at line 55 of file OP_OTLLibrary.h.

Constructor & Destructor Documentation

OP_OTLLibrary::OP_OTLLibrary ( )
OP_OTLLibrary::OP_OTLLibrary ( FS_Reader reader)
OP_OTLLibrary::OP_OTLLibrary ( const char *  source,
const char *  metasrc 
OP_OTLLibrary::~OP_OTLLibrary ( )

Member Function Documentation

bool OP_OTLLibrary::addDefinition ( const OP_OTLDefinition definition,
time_t  modtime = time_t(-1) 
void OP_OTLLibrary::beginCachingSourceModTime ( )
bool OP_OTLLibrary::collapseFromDirectory ( const char *  srcdir)

Reimplemented from FS_IndexFile.

static bool OP_OTLLibrary::createBackupFile ( const char *  filename,
bool  domove = false 
void OP_OTLLibrary::endCachingSourceModTime ( )
bool OP_OTLLibrary::expandToDirectory ( const char *  destdir)

Reimplemented from FS_IndexFile.

static bool OP_OTLLibrary::forceOTLExtension ( UT_String filename)

Checks if filename has a .otl, if not, appends it. Respects OTL_INTERNAL and other magic constants. Returns true if filename was modified

static const char* OP_OTLLibrary::getDefaultInstallMetaSource ( const char *  lib_path)
const OP_OTLDefinition& OP_OTLLibrary::getDefinition ( int  index) const

Definition at line 98 of file OP_OTLLibrary.h.

bool OP_OTLLibrary::getDefinition ( int  index,
OP_OTLDefinition definition 
) const
int OP_OTLLibrary::getDefinitionIndex ( const char *  tablename,
const char *  opname 
) const
FS_IndexFileHandle OP_OTLLibrary::getDefinitionIndexFile ( const char *  tablename,
const char *  opname 
) const
bool OP_OTLLibrary::getDefinitionIsDummy ( int  index) const
time_t OP_OTLLibrary::getDefinitionModTime ( int  index) const
const UT_StringHolder& OP_OTLLibrary::getDefinitionName ( int  index) const
const UT_StringHolder& OP_OTLLibrary::getDefinitionOpTableName ( int  index) const
static const UT_StringHolder& OP_OTLLibrary::getEncapsulatedVexSectionName ( VEX_ContextType  type)
const UT_StringArray& OP_OTLLibrary::getErrorMessages ( ) const
static const char* OP_OTLLibrary::getEventName ( int  index)
static const UT_StringHolder& OP_OTLLibrary::getEventSectionName ( int  index)
static bool OP_OTLLibrary::getFilenames ( const UT_StringHolder libfile,
UT_StringArray filenames 
bool OP_OTLLibrary::getIsBeingRefreshed ( ) const
bool OP_OTLLibrary::getIsModTimeAccessOK ( ) const
const UT_StringHolder& OP_OTLLibrary::getMetaSource ( ) const
int OP_OTLLibrary::getNumDefinitions ( ) const

Definition at line 95 of file OP_OTLLibrary.h.

static UT_StringHolder OP_OTLLibrary::getShaderPathWithSection ( const UT_StringRef shader,
VEX_ContextType  type,
UT_String opname = nullptr 
const UT_StringHolder& OP_OTLLibrary::getSource ( ) const
OP_ModTimeStatus OP_OTLLibrary::getSourceModTime ( time_t &  mod_time,
const char *  type_name = NULL 
) const
static void OP_OTLLibrary::getVexAndVflSectionNames ( const char *  suggestion,
UT_String vexsect,
UT_String vflsect 

Constructs a good vfl and vex code section names given the original suggestion.

static void OP_OTLLibrary::getVexCodeSectionName ( const char *  prefix,
UT_String vex_code_sect 

Constructs a valid VEX code section, with an optional prefix.

static const UT_StringHolder& OP_OTLLibrary::getVexCodeSectionName ( VEX_ContextType  type)
static const UT_StringHolder& OP_OTLLibrary::getVflCodeSectionName ( VEX_ContextType  type)
static bool OP_OTLLibrary::isReservedSectionName ( const UT_StringRef sectname)
void OP_OTLLibrary::mergeLibrary ( const OP_OTLLibrary lib)
bool OP_OTLLibrary::removeDefinition ( int  index)
bool OP_OTLLibrary::removeDefinitionSectionIfEmpty ( int  index,
const char *  definition_section 
void OP_OTLLibrary::setIsBeingRefreshed ( bool  beingrefreshed)
void OP_OTLLibrary::writeFile ( std::ostream &  os) const

Reimplemented from FS_IndexFile.

The documentation for this class was generated from the following file: