Graphisoft®

File Type ManagerVersion: 1.0

class FileTypeManager

 

FileTypeManager does not have a base class.

FileTypeManager organizes file type information. This class stores FileType objects in  hierarchical groups. Each file type can be member of multiply groups. It enables one level many-to-many relation between groups and types, but group to group relations are restricted to single parent, tree type hierarchy.

While FileType is a standalone object group is only valid in the FileTypeManager database, so there is no class for file type groups. Groups and types are identified by TypeID and GroupID typed ids in the FileTypeManager. These ids are unique across all existing FileTypeManager instances. These ids generated when a type or group is added to the database (

Groups and types are stored in static storage, which means they are visible to all other FileTypeManager objects. Typical usage is that every module of code that needs to add its own file type information creates its own FileTypeManager instance. There is no need to derive your own class. In code where only usage of stored information is needed it is possible to use the FileTypeManager object without creating an instance. For example to check is a specific location's type is contained in a group

Class Members

 

Constructor/destructor

FileTypeManager
~FileTypeManager

Location identifying methods  

Identify
IdentifyOwn
ExactMatch
ExactMatchOwn
Match
MatchOwn

Type manipulating functions

AddType
RemoveType
ReinsertType
GetType

Group manipulating functions 

AddGroup
RemoveGroup
AddTypeToGroup
RemoveTypeFromGroup
RenameGroup
GetGroupName
GetGroupExtensionList

Query functions 

IsGroupInGroup
IsTypeInGroup
SearchForType
SearchForGroup

Hierarchy query functions

CountAllChild
CountGroupChild
CountParent
CountTypeChild
CountAllTypeChild
GetAllTypeChildList

Hierarchy navigating functions

GetFirstGroupChild
GetNextGroup
GetFirstTypeChild
GetNextType
GetParent
GetFirstParent
GetNextParent

Mime related functions

IsMimeRegistered
SearchForMime
ReadID
WriteID

Errors

TypeNotFound
GroupNotFound
AccessDenied

Globlas

RootGroup

UnknownType

UnkownGroup

Requirements

Version: Input-Output Library 1.0.0 or later
Header: FileTypeManager.hpp
Import Library: InputOutput.lib [WIN]
Module: InputOutputLib [MAC], InputOutput.dll [WIN]

See Also

File Type Manager