NLPACS::UPrimitiveBlock Class Reference

#include <u_primitive_block.h>

Inheritance diagram for NLPACS::UPrimitiveBlock:

NLPACS::CPrimitiveBlock

Detailed Description

Block of pacs primitives, user interface. They can be created from a stream (*.pacs_prim) A primitive block can be instanciated in a move container.
Author:
Nicolas Vizerie

Nevrax France

Date:
2002

Definition at line 46 of file u_primitive_block.h.

Public Member Functions

virtual uint getNbPrimitive ()=0
 get the number of primitives in the block

virtual UMovePrimitive::TUserData getUserData (uint nPrimNb)=0
 return the user data for a primitive of the block

virtual ~UPrimitiveBlock ()

Static Public Member Functions

UPrimitiveBlockcreatePrimitiveBlock (NLMISC::IStream &src)
UPrimitiveBlockcreatePrimitiveBlockFromFile (const std::string &fileName)


Constructor & Destructor Documentation

virtual NLPACS::UPrimitiveBlock::~UPrimitiveBlock  )  [inline, virtual]
 

Definition at line 50 of file u_primitive_block.h.

00050 {}


Member Function Documentation

UPrimitiveBlock * NLPACS::UPrimitiveBlock::createPrimitiveBlock NLMISC::IStream src  )  [static]
 

Create a primitive block from a stream. This may raise exception if loading failed

Reimplemented in NLPACS::CPrimitiveBlock.

Definition at line 111 of file primitive_block_pacs.cpp.

References nlassert, and src.

Referenced by createPrimitiveBlockFromFile().

00112 {
00113         NL_ALLOC_CONTEXT( Pacs )
00114 
00115         nlassert(src.isReading());
00116         std::auto_ptr<CPrimitiveBlock> pb(new CPrimitiveBlock);
00117         pb->serial(src);
00118         return pb.release();
00119 }

UPrimitiveBlock * NLPACS::UPrimitiveBlock::createPrimitiveBlockFromFile const std::string &  fileName  )  [static]
 

Create a primitive block from its file name. This may raise exceptions if loading failed.

Reimplemented in NLPACS::CPrimitiveBlock.

Definition at line 122 of file primitive_block_pacs.cpp.

References createPrimitiveBlock(), and NLMISC::CIFile::open().

00123 {
00124         NL_ALLOC_CONTEXT( Pacs )
00125 
00126         NLMISC::CIFile input;
00127         if (input.open(fileName))
00128         {
00129                 NLMISC::CIXml xmlInput;
00130                 // Init
00131                 if (xmlInput.init (input))
00132                 {
00133                         return createPrimitiveBlock(xmlInput);
00134                 }
00135                 else
00136                 {
00137                         throw NLMISC::Exception(std::string("Unable to init an xml input file from ") + fileName);
00138                 }
00139         }
00140         return NULL;
00141 }

virtual uint NLPACS::UPrimitiveBlock::getNbPrimitive  )  [pure virtual]
 

get the number of primitives in the block

Implemented in NLPACS::CPrimitiveBlock.

virtual UMovePrimitive::TUserData NLPACS::UPrimitiveBlock::getUserData uint  nPrimNb  )  [pure virtual]
 

return the user data for a primitive of the block

Implemented in NLPACS::CPrimitiveBlock.


The documentation for this class was generated from the following files:
Generated on Tue Mar 16 14:26:37 2004 for NeL by doxygen 1.3.6