Alphabetical Class Index  Class Hierarchy   File Members   Compound Members   File List  

HIOUtilitySKP.h
00001 // Copyright (c) 1998-2014 by Tech Soft 3D, Inc.
00002 //
00003 // The information contained herein is confidential and proprietary to Tech Soft 3D, Inc.,
00004 // and considered a trade secret as defined under civil and criminal statutes.
00005 // Tech Soft 3D, Inc. shall pursue its civil and criminal remedies in the event of
00006 // unauthorized use or misappropriation of its trade secrets.  Use of this information
00007 // by anyone other than authorized employees of Tech Soft 3D, Inc. is granted only under
00008 // a written non-disclosure agreement, expressly prescribing the scope and manner of such use.
00009 
00010 #pragma once
00011 
00012 #ifdef HIO_SKP
00013 #  ifdef _MSC_VER
00014 #    define HIO_API __declspec (dllexport)
00015 #  else
00016 #    define HIO_API __attribute__ ((visibility ("default")))
00017 #  endif
00018 #else
00019 #  define HIO_API
00020 #endif
00021 
00022 #include "HIOManager.h"
00023 
00024 class HIO_API HIOUtilitySKP : public HInputHandler
00025 {
00026 public:
00027     HIOUtilitySKP();
00028     virtual ~HIOUtilitySKP() { }
00029 
00031     virtual const char* GetInputName() { return "HIOUtilitySKP"; }
00032 
00034     virtual void RegisterInputHandlerTypes()
00035     {
00036         HIORegisterInputType("SKP", this);  // SKP (Google SketchUp's Format)
00037         HIORegisterInputType("skp", this);  // skp (Google SketchUp's Format)
00038     };
00039 
00041     virtual HInputHandlerStyle GetInputStyle() { return HInputHandlerStyleModel; }
00042 
00044     const char* GetInputTypesString() { return "skp"; }
00045 
00052     virtual HFileInputResult FileInputByKey(const char* fileName, HC_KEY key, HInputHandlerOptions* options);
00053 
00054     virtual HFileInputResult FileInputByKey(const wchar_t* fileName, HC_KEY key, HInputHandlerOptions* options);
00055 
00056     virtual HFileInputResult FileInputByKey(const unsigned short* fileName, HC_KEY key, HInputHandlerOptions* options);
00057 };
00058 
00059 #ifdef HIO_SKP
00060 extern "C" {
00061     HIO_API void* CreateInput(HIOManager* manager);
00062     HIO_API void  Free(HIOUtilitySKP*);
00063 }
00064 #endif