RelationshipContainerInterface.h

00001 //
00002 //  Copyright (c) 2006 by Autodesk, Inc.
00003 //
00004 //  By using this code, you are agreeing to the terms and conditions of
00005 //  the License Agreement included in the documentation for this code.
00006 //
00007 //  AUTODESK MAKES NO WARRANTIES, EXPRESS OR IMPLIED, AS TO THE CORRECTNESS
00008 //  OF THIS CODE OR ANY DERIVATIVE WORKS WHICH INCORPORATE IT. AUTODESK
00009 //  PROVIDES THE CODE ON AN "AS-IS" BASIS AND EXPLICITLY DISCLAIMS ANY
00010 //  LIABILITY, INCLUDING CONSEQUENTIAL AND INCIDENTAL DAMAGES FOR ERRORS,
00011 //  OMISSIONS, AND OTHER PROBLEMS IN THE CODE.
00012 //
00013 //  Use, duplication, or disclosure by the U.S. Government is subject to
00014 //  restrictions set forth in FAR 52.227-19 (Commercial Computer Software
00015 //  Restricted Rights) and DFAR 252.227-7013(c)(1)(ii) (Rights in Technical
00016 //  Data and Computer Software), as applicable.
00017 //
00018 //  $Header: //DWF/Development/Components/Internal/DWF Toolkit/v7.6/develop/global/src/dwf/opc/RelationshipContainerInterface.h#1 $
00019 //  $DateTime: 2008/02/20 08:38:28 $
00020 //  $Author: appacsviewers $
00021 //  $Change: 84992 $
00022 //  $Revision: #1 $
00023 //
00024 //
00025 
00026 #ifndef _DWFTK_OPCRELATIONSHIPCONTAINERINTERFACE_H
00027 #define _DWFTK_OPCRELATIONSHIPCONTAINERINTERFACE_H
00028 
00029 #include "dwf/opc/Relationship.h"
00030 
00031 namespace DWFToolkit
00032 {
00033 
00034 class OPCRelationshipContainerInterface
00035 {
00036 
00037 public:
00038 
00048     _DWFTK_API
00049     virtual OPCRelationship* addRelationship( OPCPart* pTargetPart, 
00050                                               const DWFString& zRelationshipType, 
00051                                               OPCRelationship::teTargetMode eTargetMode = OPCRelationship::eInternal )
00052         throw( DWFException ) = 0;
00053 
00060     _DWFTK_API
00061     virtual bool deleteRelationship( OPCRelationship* pRelationship )
00062         throw() = 0;
00063 
00070     _DWFTK_API
00071     virtual size_t relationshipCount() const
00072         throw() = 0;
00073 
00081     _DWFTK_API
00082     virtual OPCRelationship::tIterator* relationships()
00083         throw() = 0;
00084 
00093     _DWFTK_API
00094     virtual OPCRelationship::tIterator* relationshipsByTarget( const DWFString& zTargetURI ) const
00095         throw() = 0;
00096 
00105     _DWFTK_API
00106     virtual OPCRelationship::tIterator* relationshipsByTarget( OPCPart* pTargetPart ) const
00107         throw() = 0;
00108 
00117     _DWFTK_API
00118     virtual OPCRelationship::tIterator* relationshipsByType( const DWFString& zType ) const
00119         throw() = 0;
00120 
00127     _DWFTK_API
00128     virtual void deleteRelationshipsByTarget( OPCPart* pTargetPart )
00129         throw( DWFException ) = 0;
00130 
00139     _DWFTK_API
00140     DWFInputStream* getInputStream()
00141         throw( DWFException );
00142 
00143 protected:
00144 
00145     _DWFTK_API
00146     OPCRelationshipContainerInterface()
00147         throw()
00148     {;}
00149 
00150     _DWFTK_API
00151     virtual ~OPCRelationshipContainerInterface()
00152         throw()
00153     {;}
00154 
00155 };
00156 
00157 }
00158 
00159 #endif

Generated on Tue Jan 6 22:40:05 2009 for Autodesk DWF Toolkit by  doxygen 1.4.5